Программирование - это просто

Q_star

Новичок
Заблокирован
Ну появление "генетически модифицированных" клонов Дельфи - это скорее не смерть дельфи, а желание разработчиков сред программирования
элементарно кушать и подковерные "маркетинговые" терки...

ЗЫ Если сей шедевр (Лазарус) принадлежит "перу" нескольких студентов-альтруистов, и они за него не расчитывают получить ни копья, то я готов снять перед ними головной убор.
Все великое вызывает у меня восхищение, в том числе - великое безумство :D

sami написал(а):
Чушь. В машинных кодах написано только то, что написал в машинных кодах автор.
C этим не поспоришь))
Автор функций биоса :lol:
Но автором также может быть и не человек, а специальная программа-транслятор :)
Ну не заставить процер в стандартной эвм понимать язык высокого уровня)))

Я бы их /детей/ мучал ассемблером! smile.gif
+1000, жалею что меня асмом не "мучали" в детстве...
 

sami

Местный
По крайней мере Паскаль существует и еще долго наверное будет существовать...
Существовать будет. А претендовать на серьезные позиции в софтостроении - уже вряд ли.
Мне интересны Ваши прогнозы, почему Вы не счиаете Вирта дальновидным.
Delphi живет, развивается.
То что Вирт критиковал и зарывал в могилу реинкарнировалось спустя 40 лет. То что изобретал - присмерти. Все языки,
которые он разрабатывал практически мертвы. Самым живым оказался паскаль. А самый близкий к промышленной разработке -
как ни странно, Оберон 2. Но причины - это отнюдь не простота языка, а некоторые особенности одноименной операционной системы.

Собственно посмотрим на отношение Delphi и Вирта. Я бы сказал ничего общего.
Вирт изобрел Pascal (1968-1970). И выдвинул его вместо критикуемого им ALGOL-68. Pascal обладал тем свойством что
был доступен всем и даже студентам. С помощью этого языка было легко обучать. Но это не значит, что обучение было эффективным.

На этом его связь с паскалем практически заканчивается. Далее он писал книгу, потом работал над виртуальной машиной и "пи-код"-ом,
а в 75-ом уже родил первую Модулу.

Далее компилятор паскаля написал Андерс Хейлсберг (80-ый год). Его компилятор лицензировала Borland, добавила к нему
пользовательский интерфейс и редактор. И к 86-му выпустила аж 3 версии этого комбайна (по тем временам). Когда-то там этот комбайн
обзавелся приставкой Turbo. Тогда же Борланд начала работу над Turbo C и вскоре над Turbo C++.
В период распростаненности MS-DOS это были хиты! Борланд так
же выпускает ТП для маков, но задвигает на него и оставляет без поддержки.
Тем временем Apple выпускает нечто под вывеской Object Pascal. Где Вирт? Кует Модулы. Максимум - консультирует Apple.
А с версии 5.5 Turbo Pascal расширяется классами, наследованием, конструкторами. И это начинают называть Object Pascal-ем. Если честно,
не сильно интересно, кто больше причастен к Object Pascal, Вирт, Apple или Borland. Но объектность в Simula была уже в 67 стандарте.

Delphi как среда родилась из Turbo Pascal fro Windows 1.0 (Turbo Pascal 6/7).
Однако причиной взрыва популярности Delphi был отнюдь не паскаль, а Visual Component Library, которая поставлялась
и вместе с C++ Builder-ом. Ну да дым от взрыва рассеялся вместе с популярностью Delphi.

Вы хотите сказать что-то придет ему на смену? Что? И когда?
смену? Смену чего? Паскаля, или среды разработки?
Паскалю смена не нужна. Никакие припарки не вернут его популярность времени расцвета VCL или Pascal-P system. Среде разработки
есть куча замен. Надо только оглянуться. Причем сейчас в порядке вещей то что среда поддерживает множество языков, а не один.
PS Позволю себе немного пофилосовствовать.
Вот есть говорящие фамилии.
Фамилия Кант (философ) является корнем слова Кантоваться (пережидать что-то думая над смыслом жизни)

А вот фамилияя Вирт (кибернетик) является корнем слова Виртуальный (коментарии излишни)

Неспроста)))
Спасибо, посмеялся. У фамилии Wirth и слова Virtual ничего общего. Комментарии излишни. К виртуальности Вирт не имеет никакого
отношения кроме созвучности. Если бы имел, то паскаль был бы объектным изначально. Объектные системы существовали до первого Паскаля.
Паскаль же обзавелся виртуальностью спустя треть века.


Ну появление "генетически модифицированных" клонов Дельфи - это скорее не смерть дельфи, а желание разработчиков сред программирования
элементарно кушать и подковерные "маркетинговые" терки...
Никто им кушать не даст. Делфи и нынешнего хозяина-то не прокармливает.

Но автором также может быть и не человек, а специальная программа-транслятор :lol:
Ну не заставить процер в стандартной эвм понимать язык высокого уровня)))
Специальная программа-транслятор не пишет, а транслирует.
А процу нет нужды понимать язык высокого уровня. Дорого это делать проц, понимающий язык высокого уровня. И абсолютно никому не нужно.
 

CoderA

Местный
В этом выпуске Станислав Протасов, cтарший вице-президент и один из тех, кто стоял у истоков компании Parallels, рассказывает о том, как зарождалась Parallels, какие трудности приходилось преодолевать компании, чтобы найти своё место под солнцем и стать успешным бизнесом.

http://success-story.rpod.ru/155862.html
 

JustJ

Уже освоился
А что мешает написать цензора интерпретатор паскаля - и будет паскаль управляемым :lol:

Все давно написано. Есть компонента для Delphi - интепретатор паскаля. Очень приближен по синтаксису к delphi.
Основная масса компонентов Delphi написана на нем самом. Часть компонент является ОО "оберткой" вокруг стандартных элементов управления Windows. Часть - обертка вокруг dll библиотек. Есть возможность импорта ActiveX компонент - в этом случае среда генерит delphi (паскаль) обертку вокруг ActiveX библиотеки.

По поводу ресурсов: очень неэкономен. В Win16 это была полная засада - если еще и памяти оперативной мало - часть элементов управления могла вообще не отрисоваться. В win32 ситуация улучшилась, на базе NT-ядра проблема стала незаметной (но никуда не ушла). Большинство элементов управления создают свой экземпляр hwnd - хотя есть и такие, которые пользуются родительским hwnd. То же самое с кистями, шрифтами и т.п. Рекомендую посмотреть на какую-нибудь программу более менее симпатишную со скинами и т.п. под каким нибудь монитором ресурсов. Удивитесь...

Создавать (накидывать) интерфейс программ, на мой взгляд, весьма удобно. MS только в .NET средах более-менее приблизился. Работать не очень удобно, хотя с кучей доп экспертов жить в Delphi становиться лучше.
Но то, что среда реально быстрее VisualStudio - факт. Компиляция тоже не сказать что медленная.

Ассемблерный код ? Ну можно вставить, вставлял я его.. Только вот зачем ? Вещь редкая, лучше подумать надо ли оно. MMX/SSE инструкции по-честному не вставить (хотя, вроде в 2010 можно, но не проверял). На машкоде писать - очень лениво. Внешний ассемблер ? вполне можно, но тогда уже неудобно.

Умер ли Delphi ? Мне кажется, тихонько умирает... и не спасет его обещанный 64разрядный компилятор.
 

sami

Местный
По поводу ресурсов: очень неэкономен. В Win16 это была полная засада - если еще и памяти оперативной мало - часть элементов управления могла вообще не отрисоваться. В win32 ситуация улучшилась, на базе NT-ядра проблема стала незаметной (но никуда не ушла). Большинство элементов управления создают свой экземпляр hwnd - хотя есть и такие, которые пользуются родительским hwnd. То же самое с кистями, шрифтами и т.п. Рекомендую посмотреть на какую-нибудь программу более менее симпатишную со скинами и т.п. под каким нибудь монитором ресурсов. Удивитесь...
Разве ж хэндлы это проблема делфи? Стандартный виндовый подход и почти все, написанное под винду их использует. Т.е. вопрос хэндлов можно разделить на категории: 1 - исправность/корректность/соответствие WinAPI винды, 2 - корректность обертки и использования конечным программистом. И с тем и с другим я сталкивался, когда работал с делфи.
Или речь об неэфективном использовании хэндлов?
 

Q_star

Новичок
Заблокирован
Да вообще интересно конечно...
Delphi умирает, но писать программы на нем удобно.
Программы получаются "жадными" но невооруженным взглядом на современных компах это не видно.
В среде Дельфи можно написать даже без VCL - на голом API, можно на асме, но это никому не нужно))
Компилятор дельфи корявый, но некоторые сишные еще корявее, но дельфи это не спасает))
Вывод:
ну и что, что в дельфе работать "немодно" зато можно творить творческому человеку пройдя мнимальный курс "взлёт-посадка")))
 

JustJ

Уже освоился
Или речь об неэфективном использовании хэндлов?

Именно так. Вообще, где-то в версии 3 появились windowless-элементы управления, которых потом стало больше и больше. Они прекрасно отрисовывались через handle родителя. И все руководства по написанию компонент уверяли - подумайте 10 раз, прежде чем брать свой handle, может, на родительском отрисуете...

Программы получаются "жадными" но невооруженным взглядом на современных компах это не видно.
В среде Дельфи можно написать даже без VCL - на голом API, можно на асме, но это никому не нужно))
Компилятор дельфи корявый, но некоторые сишные еще корявее, но дельфи это не спасает))

По сравнению с .net они очень даже ничего :lol: да и на не современных компах вполне прилично работали, хотя старт медленноват.
Я пишу иногда без vcl - требуются утилитки командной строки. На vb6 это делается просто ужасно - а тут вполне удобно. asm-вставки - когда то делал, сейчас (пока ?) необходимость такая отпала.

Компилятор не шибко корявый, жить можно. Код более-менее, хотя оптимизатор так себе, даже если ему помогать, думая как он хочет строит код.
 

sami

Местный
Да вообще интересно конечно...
Delphi умирает, но писать программы на нем удобно.
Писать не удобно! Удобно создавать интерфейсы. И делфи не единственная среда, в которой удобно создавать интерфейсы.
Программы получаются "жадными" но невооруженным взглядом на современных компах это не видно.
Это не проблема. Лишь бы ресурсы использовались корректно. А вон .NET жадный до памяти и CPU (относительно).
В среде Дельфи можно написать даже без VCL - на голом API, можно на асме, но это никому не нужно))
Чтобы писать на голом API и асме не нужна делфи.
Компилятор дельфи корявый, но некоторые сишные еще корявее, но дельфи это не спасает))
Вывод:
ну и что, что в дельфе работать "немодно" зато можно творить творческому человеку пройдя мнимальный курс "взлёт-посадка")))
Творить-то можно, а разрабатывать качественный софт с минимальным курсом "всзет-посадка", притом что курс не подразумевает чего-то кроме делфи - это вряд ли.

Вобщем, либо человек выбирает инструмент для своих задач осознанно, либо он становится жертвой одного инструмента, если не желает знать других.
Сам был жертвой Делфи, оправдывал свою ограниченность позицией "Делфи не хуже, зато проще".
 

sami

Местный
Именно так. Вообще, где-то в версии 3 появились windowless-элементы управления, которых потом стало больше и больше. Они прекрасно отрисовывались через handle родителя. И все руководства по написанию компонент уверяли - подумайте 10 раз, прежде чем брать свой handle, может, на родительском отрисуете...
Сами по себе хэндлы - не ресурс. Проблемы создают брошенные хэндлы, либо используемые не по-уму. Экономить хэндлы на неоконных элементах управления - это нонсенс, с которым я сталкивался только в Делфи. Ни MFC ни WinForms этим не занимается.

С другой стороны, мне попадалась какая-то аська, у которой при 30 контактах виндовых хэндлов было создано больше чем у Visual Studio. И они болтались даже в скрытом режиме. Для такой программы как аська, это откровенное разбазаривание. Но виновата в этом не среда программирования. Неоконные элементы этой аське бы не помогли, т.к. разница не такая и большая, кто производит диспетчеризацию сообщений - винда или библиотека. Нужно было лишь выбрать соответствующий контрол.
По сравнению с .net они очень даже ничего ;) да и на не современных компах вполне прилично работали, хотя старт медленноват.
.NET - это другой уровень. К среде с управляемым кодом и автоматической сборкой мусора не стоит предъявлять те же мерки, что и к неуправляемому коду. Хотя, дотнет не сильно то и в грязь лицом по сравнению с делфи. Оптимизация кода там сильно похуже, а с хипом работает по-шустрее.
 

Q_star

Новичок
Заблокирован
Не совсем по теме.
Дело в том, что Опердень эт0 - "пожилой человек (чаще - мужского пола), обладающий сварливым, несносным характером. Например:Из-за этого опердня я полол грядки до ночи." (либо значение 2 - банковский термин)

А Delphi (иные средства разработки) предназначены для создания ПРОГРАММНЫХ ПРОДУКТОВ, а не Оперденей...
 

sami

Местный
По поводу Delphi vs .NET...
Общаюсь с разработчиком вот этого комбайна, написанного на Delphi. Сейчас они готовят к выпуску концептуально обновленный продукт на .NET. Его мнение - на .NET писать намного легче.
 

sami

Местный
http://taop.rpod.ru/167365.html

Человек из Sun утверждает, что их JIT якобы распознает паттерны и может производить на основе этого некоторую оптимизацию.
Речь была о вообще компиляторах и в частности JIT-ах. Т.е. JIT явы - не единственный, кто делает оптимизацию на основе паттернов. Но это не так хорошо, как прозвучало. Скорее всего речь идет о применении JIT-ом типичных ручных оптимизаций к типичным конструкциям кода, вместо оптимизации всего кода такими методами, как автоматическое распределение регистров и т.п. Но это догадки.

Кстати, в конце подкаста прозвучала цитата "premature optimization is the root of all evil" со ссылкой на Кнута. Кнут ее лишь использовал в своей книге, сейчас авторство точно не установлено, но приписывается предположительно Дейкстре, после того как Хоар опроверг свое авторство.
 

CoderA

Местный
Речь была о вообще компиляторах и в частности JIT-ах. Т.е. JIT явы - не единственный, кто делает оптимизацию на основе паттернов.

А есть ссылки на конкретные рекомендации??? По существу интересует .NET , но и об остальном тоже можно было бы почитать.
 

sami

Местный
А есть ссылки на конкретные рекомендации??? По существу интересует .NET , но и об остальном тоже можно было бы почитать.
Рекомендации по поводу чего? Оптимизацию под оптимизатор JIT-а .NET? Если да, то ничего официального нет. В блогах MS можно найти что-нибудь вроде эвристик компилятора при inlineing-е методов, но и они представлены к сведению и не являются руководством к действию.
 

Touareg

to kalon epieikes
Кстати, в конце подкаста прозвучала цитата "premature optimization is the root of all evil" со ссылкой на Кнута. Кнут ее лишь использовал в своей книге, сейчас авторство точно не установлено, но приписывается предположительно Дейкстре, после того как Хоар опроверг свое авторство.
В моей памяти эта фраза звучит со ссылкой на Страуструпа, хотя доподлинно утверждать конечно не возьмусь.

ps погуглил немного, любопытно что Кнут употреблял эту фразу дважды в декабре 1974 года, причем в разных контекстах - и один из них не абсолютно категоричен.
We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3.
Structured Programming with go to Statements
 

Mike22

Местный
Цикл статей "Guile — универсальный инструмент программирования" - http://www.ibm.com/developerworks/ru/library/os-Guile_1/
Guile представляет собой интерпретатор и "по совместительству" виртуальную машину языка программирования Scheme, то есть, его можно использовать и как командную оболочку в интерактивном режиме, и как встраиваемый в программы на компилируемых языках инструмент создания расширений. Lisp-синтаксис не всем нравится и не всем подходит (вплоть до полного неприятия), тем не менее — по моему мнению, Guile заслуживает внимания.
 
Сверху