URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 38377
[ Назад ]

Исходное сообщение
"OpenNews: Релиз компилятора Free Pascal 2.2.0"

Отправлено opennews , 11-Сен-07 15:07 
После двух лет разработки анонсирован новый релиз Free Pascal 2.2.0 (http://www.freepascal.org/), открытого, кроссплатформенного компилятора языка Паскаль, совместимого с Borland Pascal 7, Delphi и Metrowerks Pascal. Из новшеств (http://svn.freepascal.org/svn/fpcbuild/tags/release_2_2_0/in...) можно отметить:


-  Поддержка архитектур PowerPC/64 и ARM;
-  Поддержка платформ Mac OS X/Intel, Nintendo Game Boy Advance, Nintendo Game Boy DS, Windows CE (Windows Mobile) и 64-Windows;
-  Расширены возможности отладчика;


При тестировании (http://www.osnews.com/story.php/18592/Cross-Platform-Develop.../) сборка кода в FPC производилась примерно в 7 раз быстрее, чем в GCC, при этом сгенерированный в FPC 2.0.4  (в FPC 2.2 в этом плане проведены оптимизации) код выполнялся  на 30% медленнее, но занимал меньше памяти. При сравнении с интерпретируемыми языками, код FPC был в 50 раз быстрее Ruby, в 14 раз  быстрее PHP и в 17 - Java.

URL: http://www.osnews.com/story.php/18592/Cross-Platform-Develop.../
Новость: https://www.opennet.ru/opennews/art.shtml?num=11974


Содержание

Сообщения в этом обсуждении
"Релиз компилятора Free Pascal 2.2.0"
Отправлено roof , 11-Сен-07 15:07 
А кто-то, кроме школьников и студентов нетехнических вузов пишет на паскале консольные проги?

"Релиз компилятора Free Pascal 2.2.0"
Отправлено ЩекнИтрч , 12-Сен-07 09:47 
Я пишу. Очень изощренные конвертеры :)
Компактно.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 11-Сен-07 15:09 
roof ты че - я так себе представил на мгновение ока как литераторы на паскале пишут так мне смешно становиться.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Hard , 11-Сен-07 15:19 
> А кто-то, кроме школьников и студентов нетехнических вузов пишет на паскале консольные проги?

Я пишу секурные демоны на FPC, и кстати не школьник и не студент.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено fresco , 11-Сен-07 15:56 
жжош!!
Надо быть оч. большим фанатом этошо языка, что б на нем работать. IMHO, конечно...

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Av , 11-Сен-07 20:17 
Паскаль лишен указателей, кои, как все мы знаем, являются в руках не опытных программистов злом.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Cupone , 11-Сен-07 20:57 
A tu na Pascal pisal?
V Pascal est ykazateli, ix mogno ispolzovat to4no takje kak v C.
A po skorosti Pascal ne xoge C, napishi prostuy programy na C a ya na Pascal
i sravnim skorost.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Painbringer , 11-Сен-07 21:06 
ты паскаль то видел вообще? поддерживаются указатели как на данные так и на функции. (сам пишу на ц++ ибо работа, но к паскалю остались теплые чувства).

"Релиз компилятора Free Pascal 2.2.0"
Отправлено bum , 11-Сен-07 23:00 
Ахренеть. Большей тупости я еще не читал. Указатели в Паскале есть еще со времен его рождения. Стеки, связанные списки, деревья, кольца и пр. в нем строятся элементарно.

Кстати очень хороший и удобный язык. Сейчас пишу на C++, но имхо Паскаль вы зря хаете, возможностей у него ничуть не меньше (тем более во Free Pascal добавлено очень много по сравнению с исходнім язіком). Возможно он не такой гибкий, но зато в нем труднее допускать ошибки, он прост, логичен и понятен. Ну и скорость компиляции у Паскаля и C++ не сравнимы. Очень жаль, что последнее время он отошел на задний план.


"Об указателях"
Отправлено Дмитрий Ю. Карпов , 12-Сен-07 12:07 
Люди, вы все офигели. Указатели в Паскале есть, но они совсем не такие, как в Си: в Паскале указатель котролируется по типу и может указывать только на рабочую переменную (т.е. невозможно переполнение буфера), а в Си указатель можно заставить указывать на что угодно.

"Об указателях"
Отправлено vst , 12-Сен-07 17:11 
В Паскале есть и нетипизированные указатели, и указатели на функции, так что не надо. Вот что мне не нравится в нем, так это контроль типов во время исполнения, потому и компиляция быстрее, а выполнение - медленнее.

"Об указателях"
Отправлено Apollon , 12-Сен-07 21:03 
так из-за контроля типов и ошибок меньше, хотя для "профи2 можно и отключать контроль ошибок run-time

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Hard , 11-Сен-07 15:34 
> При сравнении с интерпретируемыми языками, код FPC был в 50 раз быстрее Ruby, в 14 раз быстрее PHP и в 17 - Java

Меня всегда удивляли "религиозные Фаны" этих языков, хотите увидеть в процентном выражении сколько это (в 1 раз = 100%) - FPC 2.0.4 на 5000 % быстрее Ruby, на 1400 % быстрее PHP и 1700% быстрее Java.
А если хорошо довести Lazarus, то FPC однозначно превзойдет по скорости разработки любые дот-нэты и пр. прочие кофейники.
PS где вы перченые мачо, оплюйте меня поскорей, а то вдруг Вас уволят :)


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 11-Сен-07 16:03 
А как вообще ЭТО можно сравнивать с интерпретируемыми языками?
И вообще со сравнения компиляторов переходить на сравнивание языков?

"Релиз компилятора Free Pascal 2.2.0"
Отправлено ого , 11-Сен-07 20:00 
а меня всегда удивляли такие вот ЕСЛИ которые кроме как А ЕСЛИ ... ТО всем капец

"Релиз компилятора Free Pascal 2.2.0"
Отправлено TomB , 12-Сен-07 11:43 
В 50 раз больше - это на 4900% больше, а не на 5000%.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Ghost , 11-Сен-07 16:02 
Hard, точнов в глаз. Pascal ничем не хуже C, и кроме того на нем вполне реально также и проги под иксы и под винды писать. IMHO, roof просто лучше доки к нему читай

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 11-Сен-07 16:05 
Хуже, как язык.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено gvf , 11-Сен-07 17:21 
Чем хуже?? -- чем язык! :)
Hard, поддерживаю. Ну вот не нравится мне С с его хедерами и связанной с этим путаницей.
Просто С старше, и кода на нем написано ОГРОМНОЕ количество. Лазарус как среда разработки - вполне ОК. Не хватает более мощного отладчика (ну, с учетом анонса - посморим).

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Тушкан , 12-Сен-07 15:15 
>Чем хуже?? -- чем язык! :)

за одно только with X do (особенно вложенные) автора следует порвать лошадьми.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено XAnder , 15-Сен-07 15:10 
>Просто С старше, и кода на нем написано ОГРОМНОЕ количество.

Небольшая поправка. Си не старше Паскаля. Паскаль разработан Никлаусом Виртом в 1970-71 годах. А над Си трудились Ритчи и Томпсон в 1969-73 годах, причём более-менее законченный вид (и название) язык обрёл только в 1972 году не без влияния Паскаля.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено sauron , 11-Сен-07 18:02 
Попробуйте на нем написать чтонибудь низкоуровневое. Упаритесь.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено bum , 11-Сен-07 23:04 
Почему? Ну назовите, что такое можно написать на С, что нельзя написать на Паскале?

"Релиз компилятора Free Pascal 2.2.0"
Отправлено fresco , 12-Сен-07 09:49 
ФС. Объем кода будет в 3-4 раза больше (ибо синтаксис избыточный), производительность ваще в жопе окажется. В принципе, конечно, можно. И ОСи на обероне делают. Но это, имхо, фанатизьм. Шурупы тоже можно молотком заколачивать. Только зачем -- если есть отвертка?

"Релиз компилятора Free Pascal 2.2.0"
Отправлено kde , 12-Сен-07 11:52 
Уж лутче шуруп заколотить молотком, чем гвоздь завинтить отверткой.
Хотя каждому инструменту свое назначение.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Дмитрий Ю. Карпов , 12-Сен-07 12:12 
Лично яразочаровался в Паскале после того, как увидел, что в аргументах подпрограммы/процедуры/функции требуется точно указать тип массива, так что не получается сделать подпрограмму, обрабатывающую массивы разных размеров. Кроме того, я не нашёл возможности создавать во время выполнения массивы нужного мне размера - размер массива определяется на момент компиляния.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено ABorland , 12-Сен-07 14:10 
"Я не нашел" - это ключевое слово

То, что Ты не нашел, еще не означает, что в языке этого нет.
Срочно курить документацию.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено serg1224 , 12-Сен-07 14:45 
+1
срочно И КРАЙНЕ ВНИМАТЕЛЬНО изучаем работу с указателями, типизированными и неочень :-)

"Релиз компилятора Free Pascal 2.2.0"
Отправлено bum , 12-Сен-07 16:05 
Мля. В современном Паскале уже давно существуют динамические массивы. Впервые они появились в одной из версий Delphi и соостветственно полностью перешли во Free Pascal. А передача массивов разной длины в качестве параметра функции в Паскале существует еще с незапамятных времен, курим документацию по ключевым словам "параметры массивы".

"Релиз компилятора Free Pascal 2.2.0"
Отправлено serg1224 , 13-Сен-07 01:45 
>Мля. В современном Паскале уже давно существуют динамические массивы

В библиотеках на Паскале. Или уже встроенные средства языка появились?!

> и соостветственно полностью перешли во Free

Ой ли... полностью?

>Pascal. А передача массивов разной длины в качестве параметра функции в
>Паскале существует еще с незапамятных времен...

Многие еще живы :-) не так уж и давно это было.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено WhiteWind , 13-Сен-07 21:36 
>В библиотеках на Паскале. Или уже встроенные средства языка появились?!

Да, появились.

>Ой ли... полностью?

Да, ой ли.
Да, полностью.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Nice , 11-Сен-07 17:19 
На нем как будто с инструктором на учебной машине едешь.
В аварию попасть можно но шансов меньше.
имхо

"Релиз компилятора Free Pascal 2.2.0"
Отправлено DeadMustdie , 12-Сен-07 09:30 
>На нем как будто с инструктором на учебной машине едешь.
>В аварию попасть можно но шансов меньше.

Весьма точное сравнение. Ибо прокатиться с ветерком тоже никак,
и передачи переключать инструктор слишком рано заставляет. ;)


"Релиз компилятора Free Pascal 2.2.0"
Отправлено serg1224 , 12-Сен-07 14:47 
>Ибо прокатиться с ветерком тоже никак,
>и передачи переключать инструктор слишком рано заставляет. ;)

А некоторые никуда не торопятся :-)

PS
... и не забываем про скорость разработки...


"Релиз компилятора Free Pascal 2.2.0"
Отправлено yerenkow , 11-Сен-07 17:34 
Маленькая поправка - не Nintendo Game Boy DS, а Nintendo DS

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

Или сравнивается время цикла миллионного сложения чисел?


"Релиз компилятора Free Pascal 2.2.0"
Отправлено guest , 11-Сен-07 17:53 
Прочухайтесь, детки: даже автор паскаля признаёт, что язык имеет массу недостатков - поэтому, собственно, он и занялся всякими модулами и прочими оберонами...
Так что не пригоден он к промышленному использованию, а для обучения питон его превосходит на порядки.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено bum , 11-Сен-07 23:06 
>Прочухайтесь, детки: даже автор паскаля признаёт, что язык имеет массу недостатков -
>поэтому, собственно, он и занялся всякими модулами и прочими оберонами...
>Так что не пригоден он к промышленному использованию, а для обучения питон
>его превосходит на порядки.

Оригинальный Pascal и современный Free Pascal - это две большие разницы. Многие решения из Модулы вернулись и были реализованы в разных диалектах Паскаля. Когда последний раз книжку по Паскалю в руки брал?


"Релиз компилятора Free Pascal 2.2.0"
Отправлено serg1224 , 12-Сен-07 14:50 
> даже автор паскаля признаёт, что язык имеет массу недостатков - поэтому, собственно, он и занялся всякими модулами и прочими оберонами...

А у кого нет недостатков? Может у Assembler? :-)

Тут как в пазлах: нужно фигурки соответствующими сторонами соединять.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 11-Сен-07 18:20 
однако детка, даже автор С++ признает кучу его недостатков...

"Релиз компилятора Free Pascal 2.2.0"
Отправлено DeadMustdie , 12-Сен-07 14:24 
>однако детка, даже автор С++ признает кучу его недостатков...

Просто не все согласны с основным принципом дизайна C++.
"Make hard things possible, even if it makes simple things complicated".


"Релиз компилятора Free Pascal 2.2.0"
Отправлено S.D.e.R.F , 11-Сен-07 20:28 
На всех форумах только и пишут что паскаль-отстой...
А реально куча прог пишется на Delphi/Kylix/Pascal. Даже десктопы на linux-XPDE кажется завется

"Релиз компилятора Free Pascal 2.2.0"
Отправлено atx , 11-Сен-07 20:39 
Согласен с S.D.e.R.F Паскаль не так уж и плох... на нём вполне реально писать прикладные программы... как под консоль, так и под иксы/эксплорер...

"...низкоуровневое там страдает..."
а что вы под ним ребята понимаете-то - под низкоуровневом... ?
драйвера писать на Паскале можно - видел это/делал это - и не чуть не хуже чем на си... паскаль+асма - вот вам и полноценное низкоуровневое...

к томуже Дельфи/Куликс/Лазарус - куды приятние чем ВизуалСи/Эклипс/КДевеелоп =) ИМХО...

с постом в одном только не согласен, нельзя сравнивать компиляторы и интерпретаторы...


"Релиз компилятора Free Pascal 2.2.0"
Отправлено WhiteWind , 11-Сен-07 22:34 
Известный многим QIP написан на Delphi, DownloadMaster, лидирующий менеджер закачек написан (скорее всего) на Delphi, TotalCommander написан на Delphi.
Я пишу на Delphi программы для регистрации и обработки цифровых сигналов, раньше писал на TurboPascal драйвер для АЦП, сейчас клепаю демки на OpenGL кроссплатформенные на FreePascal.

А если серьёзно, то не надо устраивать ещё один холивар, т.к. язык это дело привычки, а на вкус и цвет все фломастеры разные.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено fresco , 12-Сен-07 09:54 
> А если серьёзно, то не надо устраивать ещё один холивар, т.к. язык это дело привычки, а на вкус и цвет все фломастеры разные.

Вот это правильно сказано. Исключительно дело привычки. Нормальный кодер на чем угодно может качественные продукты делать -- хоть на php, хоть на асме.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Тушкан , 14-Сен-07 14:22 
>Нормальный кодер на чем угодно
>может качественные продукты делать -- хоть на php, хоть на асме.

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



"Релиз компилятора Free Pascal 2.2.0"
Отправлено kruk , 17-Сен-07 05:08 
>>Нормальный кодер на чем угодно
>>может качественные продукты делать -- хоть на php, хоть на асме.
>
>Это опасное заблуждение новичков. Программист действительно может выучить множество языков, но, как
>и с человечемкими разговорными языками, думать он всегда будет только на
>одном, а на всех других языках у него всегда будет более
>или менее различимый акцент.

У вас в голове устаревшие теории насчёт человеческих языков и, похоже, изумительно извращённое понимание программирования.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 12-Сен-07 00:25 
C более лаконичен, поэтому мне он нравится больше, чем Pascal :)
<offtopic>Кто что скажет про Objective-C?</offtopic>

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Pablitos , 12-Сен-07 01:47 
Ребята,
паскаль это такой же язык как и все С и С++. Он очень подходит для обучения детей програмированию. И открою вам секрет... Единтственная разница С и и паскаля в том что в паскале жесткая типизация. вот и все. В остальном одно и тоже. И Слава Богу что паскаль есть :) А то б поколения работали на бейсике

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 12-Сен-07 07:41 
Опять флуд подняли, борьба детей в песочнице.
Есть задача, а есть инструмент решения. Например, задача –повесить картину на стену, возможный вариант решения – забить гвоздь, инструменты для реализации– молоток и гвозди. И поднялся флуд – какой молоток лучше и гвозди из какой стали выбрать - вот мол молоток с прорезиненной ручкой, лучше чем с просто деревянной, но он дороже, гвозди можно забивать прямо, а можно под углом и т.д. Но все забыли про главное, дело не в гвоздях и не в молотке – задача повесить картину на стену, а она может решаться 1001 вариантом. Картину можно приклеить, можно на шуруп, а не гвоздь повесить и т.д. Всё будет зависеть от конкретного специалиста, который будет решать эту задачу.
Паскаль, С++, Ассемблер – это всего лишь инструменты для реализации определенных задач. Я уверен на Паскале можно и операционную систему написать было бы желание. Плохому танцору как известно ноги мешают. Если не решить проблему, ну извини, повышай свою квалификацию. Профессионал подберет под конкретную задачу нужный инструмент и безвыходных ситуаций не бывает - бывают люди, которые не хотят искать выхода.
Ну, если все такие великие программеры назовите мне язык программирования, который бы улучшил АЛГОРИТМ быстрой сортировки. Для великих гуру просто напомню, что в программировании есть вещи, которые не зависят ни от языка программирования, ни от версии компилятора, ни от операционной системы – называются алгоритмы.
P.S. Еще на С++ напали – что к чему – хороший инструмент в умелых руках. Сложен он для новичка - есть C#, mono и т.д. Где многие проблемы его устранены (но добавлены новые ;-) )

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Anonymous , 12-Сен-07 07:59 
Nemnogo fluda, pardon.
Da, vse zavisit ot algoritma, no na raznyh jazykah realizacija
vygljadit po-raznomu. Pisal ja na assemblere proceduru vyvoda prjamoj
linii na CGA i Hercules adapter. Potom napisal to zhe na C. V poslednem
sluchae poluchilos kompaktnee, no v pervom - ponjatnee. Assemblernyj
variant rabotal s takim svistom, chto strochnyj transformator v monitore
pischal :). C - variant - procentov na 20 medlennee.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено high , 12-Сен-07 10:20 
Гы, а еслиб ОО писали на Lazarus, он был бы на 1700 % быстрее?
Жаба - тормоз, как не крути и не хвали...

"Релиз компилятора Free Pascal 2.2.0"
Отправлено WhiteWind , 12-Сен-07 10:27 
OOo не на Яве написан...

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 12-Сен-07 10:54 
> Возможно он не такой гибкий, но зато в нем труднее допускать ошибки, он прост, логичен и понятен

Вот за это мачо его и не любят. Ведь можно понадевелопить, а потом месяцами отлаживать и искать глюки (причем некоторые оставив на завтрак) и соотв. получать за зря зарплатку... Кальян, ИМХО конечно)))

> OOo не на Яве написан...

А на чем, если оно так тттормозит, ПМК за 1,5 сек везде, а меню вылетает за 2 сек... А жирные документы открывает((((


"Релиз компилятора Free Pascal 2.2.0"
Отправлено vst , 12-Сен-07 17:36 
> > Возможно он не такой гибкий, но зато в нем труднее допускать ошибки, он прост, логичен и понятен
> Вот за это мачо его и не любят. Ведь можно понадевелопить, а потом месяцами отлаживать и искать глюки (причем некоторые оставив на завтрак) и соотв. получать за зря зарплатку... Кальян, ИМХО конечно)))

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


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Apollon , 12-Сен-07 21:10 
а зачем бороться с системой контроля типов? я ни разу не встречал ситуации когда она непролазо мешала, а помогает она очень, а для всяких извращений есть record с вариативной частью, там можно такого наворотить, всякие С-шники обзавидуются :))

"Релиз компилятора Free Pascal 2.2.0"
Отправлено WhiteWind , 13-Сен-07 21:40 
>Так можно на чем угодно девелопить, и на паскале - тоже. Просто
>иногда хочется писать прогу, а не бороться с системой контроля типов.

И вообще, в C не менее строгая система контроля типов. К примеру, void* преобразуется в char* только явно. А в паскале контроль за типом указателей отключабелен.

Или вы говорите, что в C менее строгая система контроля типов только потому, что он int в bool неявно преобразовывает?


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Тушкан , 14-Сен-07 14:18 
>Или вы говорите, что в C менее строгая система контроля типов только
>потому, что он int в bool неявно преобразовывает?

Дело не в том, что она менее строгая. Дело в том, что она более разумная. Компилятор делает то, что он может сделать безопасно и не делает того, что опасно.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено WhiteWind , 14-Сен-07 22:23 
>Дело не в том, что она менее строгая. Дело в том, что
>она более разумная. Компилятор делает то, что он может сделать безопасно
>и не делает того, что опасно.

char* s = malloc(256);
Это опасно?
Почему мне приходится писать
char* s = (char*)malloc(256); ?


"Релиз компилятора Free Pascal 2.2.0"
Отправлено DeadMustdie , 17-Сен-07 10:13 
>char* s = malloc(256);
>Это опасно?
>Почему мне приходится писать
>char* s = (char*)malloc(256); ?

В данном конкретном случае - нет. Но вот пример позатейливее:

struct S1 {
...
};
struct S2 {
...
};
struct S1* s1 = malloc(sizeof(struct S2));

Пример дурацкий, но демонстрирует типовую ошибку - неверно указанный
объем выделяемой памяти. Соответственно, необходимость явно указать
тип результата полезна, так как в значительной степени страхует от
этой ошибки.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено WhiteWind , 17-Сен-07 18:10 
>Пример дурацкий, но демонстрирует типовую ошибку - неверно указанный
>объем выделяемой памяти. Соответственно, необходимость явно указать
>тип результата полезна, так как в значительной степени страхует от
>этой ошибки.

"Не плодите лишних сущностей без необходимости" (c) - Не помню, кто.
В паскале есть специальная функция для выделения памяти под типизированные указатели - New()

var
  P: ^TStruct;
...
P:=GetMemory(SizeOf(TStruct));
равносильно
New(P);


"Релиз компилятора Free Pascal 2.2.0"
Отправлено XAnder , 18-Сен-07 08:53 
>"Не плодите лишних сущностей без необходимости" (c) - Не помню, кто.

Бритва Оккама. Это высказывание очень любили и Альберт Эйнштейн, и автор Паскаля Никлаус Вирт - так что в точку попали.

>P:=GetMemory(SizeOf(TStruct));
>равносильно
>New(P);

Опять в точку. Как же не хватает этой простой функции в Си (не C++)! Всякие сайзофы и слежения за типами надоедают - хочется просто писать программу. Вот и рождаются "ностальгические" макросы вроде

#define myNew(var,type) var=(type*)malloc(sizeof(type))

Бывает и хуже, но реже :)


"Релиз компилятора Free Pascal 2.2.0"
Отправлено WhiteWind , 12-Сен-07 17:39 
Не знаю. но он без явы запускается, и лишь некоторые его возможности не работают без явы

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 12-Сен-07 11:08 
В СБРФ и пр. все прикладные АБС написаны на Delphi (в основном на Delphi 5)
ИМХО, если бы СИ/С++/Кофе/Какао/Змеи был так хорош, то почему именно на Delphi?
Да потому, что девелопится быстро (быстрее всяких дотнетов, накидал компонентов обвязал и порядок)))) и без опасных глюков и багов (как обычно принято в С++), а главное дешево! (Среда разработки довольно дешева по сравнению с VS и учить девелоперов надо меньше, и Sample-code навалом)
По этой причине такие канторы на Linux в ближайшее время не перейдут, если только перченые девелоперы не одумаются и не начнут активно развивать Lazarus, чтобы проект на Delph можно было легко пересобрать под Linux с помощью Lazarus.
(Kilyx умер)
Или полная победа добра не нужна и вендекапец отменен, а?

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 12-Сен-07 11:34 
> а главное дешево!

+1
Есть хорошая программа[R]Software Editor 1.3.11 (есть статья в журнале Chip, ее размер - 4 МБ, написано на Delphi 7)
Недавно получила знак "Программа недели" от Soft.Mail.Ru
Написал ее в одиночку Воронежский программист Руслан Хобибулин (сорри афтар если что-то неправино с фио), да и причем она является только одним из компонентов комплекса Web-разработки.
R-Style Text Editor - по удобству интерфейса и по возможностям удобнее M$ Word, если ее не много доработать (сделать поддержку всех форматов doc/odf и хорошую проверку орфографии), то она реально может заменит M$ Word.
Что есть 1 Делфятник и, что есть 10000 программистов M$ с новомодными VS, .NEtами и пр... Еще пару таких девелоперов и можно за пол года получить офисный пакет круче чем у M$ (правда для защиты от такого, они проталкивают OpenXML. ИМХО 6000 страниц даже просто прочитать – непосильная задача)
C++ программеры могут только огрызаться, ибо их труд малополезен и не эффективен.
Lazarus надо срочно доводить, а то он глючен, а Rtl довольно жирна. Такая сила должна быть и на Linux.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Тушкан , 12-Сен-07 15:05 
Ахренеть! На Дельфи уже пишут текстовые редакторы! До чего дошла наука!

>пол года получить офисный пакет круче чем у M$ (правда для

Сначала борланд пусть сделает нормальную поддержку юникода в своей поделке. А то в 21м веке нифига интерфейс нормальный не сделать без сторонниз библиотек. Да что там юникод: если дельфи не падает при компиляции программ это уже супер.

>Lazarus надо срочно доводить, а то он глючен, а Rtl довольно жирна.

Вот как раз ситуация с Lazarus и говорит, что никому это не надо


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 12-Сен-07 12:18 
Паскаль детям нельзя давать. Давно пора исключить его из школьной программы. По себе знаю и от других слышал: Паскать учит плохому стилю программирования, а т.к. это первый язык - сравнить не в чем, вот и переучиваться трудно на тот же С или Python.

Давайте не будет сравнивать компиляторы/интерпретаторы и языки программирования.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено thedix , 12-Сен-07 17:53 
Чему же такому плохому он учит?
Паскаль очень даже неплохой язык, например, типизация в нем в тему, что особенно полезно для начинающих.
Реализовывать базовые алгоритмы на нем самое то. Без всяких там свистелок/перделок графических.
Не вижу особой проблемы заинтересованным читателям осилить Си и Питон.
Если они действительно заинтересованы.
Кто-то увидит Паскаль и скажет: "Да, это он, мой любимый язык!"
Кто-то перепробует десяток языков и остановится на Си++.
Но ведь не все идут программить. Кто-то познакомится с Паскалем в школе и благополучно пойдет работать водителем, вспоминая учителя информатики по матушке. :)

"Релиз компилятора Free Pascal 2.2.0"
Отправлено hard , 12-Сен-07 13:14 
> Паскаль детям нельзя давать

Не давать Turbo Pascal, надо давать FPC.
Вот BASIC точно надо исключить ибо проприетарщина врага.

> С или Python.

C был разработан для Unix в те времена, когда каждый байт был на вес золота. Он не преследует простоту о однозначность/понятность. И что, можно сделать вывод, что begin и end; вместо {  } - это дурной стиль программирования? А если ты допрограммировался до слепоты, то эти {  }  тебе будет ой как сложно увидать на экране. а void вместо procedure - дурно пахет, правда? Зато человеку понятно.
С++ как логическое развитие объектного подхода, получил все уродства С.
PS Fpc позволяет объектно работать, даже без применения классов, можно вызывать перегруженные и одноименные функции указав ее как поле класс, а за класс брать имя модуля. А с С/С++ с эти какой гимор... Все должно быть уникально. Но Fpc также может работать со строгими именами функций, используя alias.
Короче, товарищи перченые мачо, не х. не знаете, что такое Fpc, то и нех. пердеть в лужу. Fpc уже давно стал круче С, и скоро доберется до С++, а ваши отговорки только лишь от неумения программировать на этом эффективном языке.

> Python

зеленый змий.)))) см на сколько % он тормознутее))))


"Релиз компилятора Free Pascal 2.2.0"
Отправлено hard , 12-Сен-07 13:29 
Вот к примеру Wine, бинарноков ~10 МБ. (сорцев на ~50 МБ)
Компилить сорцы на Pentium III 1 GHz сколько времени? Минут 5-10? Или больше?
А если ставить бинарный (платформа-зависимый) пакет? Секунд 30?
А если бы такой проект был написан на Fpc, то эти же 50 МБ скомпилились бы за этиже 30 сек. Отсюда можно сделать вывод, что FPC дает шанс создавать универсальные, установочные пакеты, которые быстро ставятся и работают на любых платформах.
Необходимо лишь разработать стандарты и спецификации.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Тушкан , 12-Сен-07 14:36 
Вообще то мне, как админу, пофигу сколько оно там компилится. Мне главное, чтобы работало быстро и эффективно. Смысл использовать паскаль как замену С будет тогда, когда его компилятор научится генерировать БОЛЕЕ эффективный код чем С т.е. никогда. Паскаль нужно использовать для того, для чего его и создавали - для обучения студентов.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено ДяДя , 12-Сен-07 19:25 
Ага.
Вы лучше сравните Паскаль и Яву.
А ведь яву сейчас во все дырки втыкают и серверных приложений много развелось.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Apollon , 12-Сен-07 21:22 
Особенно когда попытаешься поработать с программами мониторинга серверов производства Intel, при всяких траблах быстрее сбегать в серверную и там поглядеть, чем добиться хоть какой-нибудь информации от программы.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Mr.Close , 12-Сен-07 15:12 
Буду спорить сразу со многими.
Pascal как раз более пригоден и для обучения и для промышленного использования.
1. Не дает волю природной лени программеров явно объявлять переменные. Защищает от многих других вольных упрощений, свойственных "крутым программерам". Приучает к дисциплине, без чего серьезные разработки вести просто нельзя.
2. Строго следит за качеством кода, снижая неожиданные ошибки (в т.ч. с переопределением и некорректным применением переменных).

Те недостатки, которые ставятся в упрек Паскалю очень четко говорят о вредных привычках тех, кто на них указывает. Паскаль более строг, значит код более надежен. От серьезных разработчиков жалоб заметно меньше, они и на C и на любом другом языке пишут аккуратно. Потому и проблем со строгостью к качеству кода у них не возникает. А разные "трюки" - суть плохой стиль программирования и риск для проекта. Посмотрите спрос на программистов у нас и в USA. Туда нужны Delphi, у нас - С. У нас полет мысли, у них - предсказуемый результат.

Возможности вполне сопоставимы. Враг - мода на C (плохого о последнем ничего не скажу, не ждите, вопросы не в языку, а к программистам). C, его среды разработки и компиляторы развивают многие, а Паскаль присутствует только у Борланда. Отсюда и разница в развитии сред разработки и в популярности, увы. А дальше цепная реакция: меньше программеров - меньше спрос - меньше развитие языка и т.д.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Ne01eX , 12-Сен-07 13:33 
1. Я все понимаю, но вот давайте не будет мешать Delphi и FPC.
2. Я еще писать сидя на горшке не научился, а указатели уже были.

Новость зачетная. А холивар вы, красноглазые, зря устроили.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено hard , 12-Сен-07 14:02 
Такова природа человека, лень, гордыня, страх...
Если есть что-то угрожающее спокойному баблосшибанию, то они стараются сразу оплевать, опорочить, быть, мол, для школьников/студентов и тд.

Вдруг придет хороший делфятник, и заменит собой 5-10 программистов на С++)))
А ведь за насиженное место страшно.
Важен ведь результат, прибыть, а не множественное наследований или краткость кода)))


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Тушкан , 12-Сен-07 14:47 
Абсолютно верно: сначала мы боялись, что нас выживут программисты на Прологе - языке будущего, потому на Паскале - языке будущего, потом на Яве - языке будущего, потом на Аде - мегаязыке будущего, созданном для американского ВПК (т.е. всё по-взрослому), теперь вот Дельфи и .Net - снова боимся... 20 лет страха...
На самом деле Дельфи, Ява и т.д. - это просто способ оптимизации расходов на персонал. Т.е. чтобы получить веб страничку или программу для выписки накладных больше не нужен высококвалифицированный спец, сойдёт и лоботряс-первокурсник. По настоящему высококвалифицированный спец в этом угрозы для себя не видит, наоборот ему достаются самые интересные задачи. И оплачиваются они соответствующим образом.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Mr.Close , 12-Сен-07 15:54 
А теперь вопрос "по делу". На FPc сейчас можно реально писать модули для Apache? Кто-нибудь практикует? А то со смертью Kylix и уходом Delphi в .NET едва зарождавшаяся приятная возможность канула в лету. Теперь опять выбор между интерпретатором PHP и C. Ни тот ни другой вариант не устраивает по разным причинам. Вот вариант Borland D/K был реально удобнее, только не все интерфейсы адаптировать успели.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено WhiteWind , 12-Сен-07 17:47 
>А то со смертью Kylix и уходом Delphi в .NET

Delphi не ушла в .NET. Она идёт по двум направлениям сразу.

И хватит уже! Фломастеры - РАЗНЫЕ! И по вкусу, и по толщине стержня.
А возможности одинаковые.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Apollon , 12-Сен-07 21:18 
есть Pascal Server Page, стоит поискать и почитать, если интересно.
до массового разлития Явы по сайтам была идея (и реализация) подобной технологии с использованием Оберона, называлась Juice, тоже можно почитать.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 12-Сен-07 19:05 
Сейчас выдвину крамольную мысль: паскаль и C не отличаются ничем кроме синтаксиса. Ну тоесть вообще ничем. Все разговоры про недоступность "низкоуровневого" программирования не имеют под собой никаких оснований. Скорость выполнения на 90% определяется программистом (алгоритмом) а не компилятором.
По поводу типизации: считаю, что в больших проектах строгая типизация это большой плюс. Практика показывает что минутная экономия оборачивается месяцами вылавливания багов, и хорошо если эта программа выполняется не где-нибудь за 5000 км. от офиса. Сам в работе использую и С и FPC.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Apollon , 12-Сен-07 21:20 
+100
поддерживаю!! отличия только в синтаксисе !! С-шникам лень писать  begin ... end, вот они и придумали свои любимые { } :))

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Тушкан , 13-Сен-07 12:18 
>и C не отличаются ничем кроме синтаксиса

правда ? посмотри хотябы на убогий цикл for в паскале. как на нём написать цикл по двум переменным for (int i = 0, j = 0; i < 100; i += (++j)++) ? по переменным не типа int ? И так везде, куда не сунешься.


>По поводу типизации: считаю, что в больших проектах строгая типизация это большой плюс.

Если вы набираете в команду недоучек-студентов, не понимаете, что делаете, не смотрите на warningи компилятора, тогда да. Но эту мысль можно развить так: нужно всегда пользоваться ложкой, потому как вилкой можно ненароком выколоть себе глаз. Что вы за программисты такие, если даже сами себе не доверяете и хотите чтобы вас контролировали даже там, где это не нужно?

Но даже, если смотреть на простые begin end, то сколько вы тратите своей программистской жизни на набивание этих бесполезных слов. Короче, от паскаля, такое же ощущение, как от случайно попавших на простынь песчинок, мешающих спать: программировать на нём можно, но только страшно раздражаясь по мелочам.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено WhiteWind , 13-Сен-07 21:47 
>правда ? посмотри хотябы на убогий цикл for в паскале. как на
>нём написать цикл по двум переменным for (int i = 0,
>j = 0; i < 100; i += (++j)++) ? по
>переменным не типа int ? И так везде, куда не сунешься.

Цикл можно делать по всем перечисляемым типам. А цикл for изначально предназначен для последовательного перебора по одному параметру. Для всего остального есть while. А это ваше нецелевое использование for лишь ухудшает читабельность кода.

>Но даже, если смотреть на простые begin end, то сколько вы тратите
>своей программистской жизни на набивание этих бесполезных слов. Короче, от паскаля,
>такое же ощущение, как от случайно попавших на простынь песчинок, мешающих
>спать: программировать на нём можно, но только страшно раздражаясь по мелочам.

Меня, например, очень раздражает необходимость зажимать shift для набора этих ваших {}, я их медленнее, чем begin end набираю.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Тушкан , 14-Сен-07 14:13 
>Для всего остального есть while

Ну да. Можно извратиться и while, если по нормальному не получается. Кто ж спорит то. Это и есть идеология паскаля - загонять программиста в рамки. Т.е. если на С вы можете писать и так и этак, выбирая вариант, который ВЫ, считаете правильным, то в паскале вы ВЫНУЖДЕНЫ выбирать вариант, который кто-то выбрал за вас, посчитав правильным. При это всегда обосновывается тем, что "так правильно". Т.е. не инструмент для человека, а человек для инструмента. Благодаря такому подходу, программирование уже почти превратилось из искусства в банальное ремесло.

>Цикл можно делать по всем перечисляемым типам.

Ух ты. С тех пор, как я в последний раз имел дело с этим недоязыком, произошёл определённый прогресс. Наверно благодаря Борланду, который в свой дельфи тащит все сишные фишки.

>я их медленнее, чем begin end набираю.

Ну, потому на Паскале и программируете :-)  


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Тушкан , 14-Сен-07 14:35 
Ещё такое вопрос. Не в плане наезда на пасквилянтов, а просто из чистого детского любопытства: шаблоны классов в пасакале уже появились ?


"Релиз компилятора Free Pascal 2.2.0"
Отправлено WhiteWind , 14-Сен-07 22:16 
>Ещё такое вопрос. Не в плане наезда на пасквилянтов, а просто из
>чистого детского любопытства: шаблоны классов в пасакале уже появились ?

Нет, не появились.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено XAnder , 15-Сен-07 15:42 
>Ещё такое вопрос. Не в плане наезда на пасквилянтов, а просто из
>чистого детского любопытства: шаблоны классов в пасакале уже появились ?

Так, тоже чисто для справки, не в плане наезда. Классов в Си вообще нет, и в Паскале тоже. Это не ОО языки. Turbo/Object/etc Pascal - это уже другие языки, к развитию которых автор Паскаля не имеет никакого отношения. То же можно сказать и о C++ и Objective-C по отношению к оригинальному языку Си.

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


"Релиз компилятора Free Pascal 2.2.0"
Отправлено DeadMustdie , 17-Сен-07 10:09 
>Так, тоже чисто для справки, не в плане наезда. Классов в Си
>вообще нет, и в Паскале тоже. Это не ОО языки. Turbo/Object/etc
>Pascal - это уже другие языки, к развитию которых автор Паскаля
>не имеет никакого отношения.

Выше по тексту налицо явное смешивание в термине "C" как самого C,
так и C++. "Голый" C лично я весьма редко использую, исключительно
для написания кода под ОС, на которые трудно найти либо хлопотно
установить компилятор C++ - типа OpenVMS.

>То же можно сказать и о C++ и Objective-C по отношению
>к оригинальному языку Си.

Действительно, автор Паскаля не имеет отношения к языкам C++ и
Objective-C :). А вот комитеты по развитию стандарта C++ и C
процентов на 40 состоят из одних и тех же людей.

>P. S.: Сам я с одинаковым уважением отношусь и к Си, и
>к Паскалю, хотя уже и не припомню, когда в последний раз
>что-то писал на Паскале или каком-нибудь паскалеподобном языке.

+1


"Релиз компилятора Free Pascal 2.2.0"
Отправлено serg1224 , 14-Сен-07 21:50 
> ... программирование уже почти превратилось из искусства в банальное ремесло

К слову сказать, некоторый "авангардист" - "специалист" от искусства - такого понапишет, что кроме него самомго никто код разобрать не может, да и читать противно! А ему нравится, прям душа поёт :-) "Ну и пусть себе летит железяка ржавая" (c)

Свободой нужно, конечно, учиться владеть.

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


"Релиз компилятора Free Pascal 2.2.0"
Отправлено S.D.e.R.F , 12-Сен-07 21:38 
Кстати в яве многое позамствовано из паскаля,например идея байт-кода

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Pablitos , 13-Сен-07 02:28 
Ребята,
не спорте о том о чем спорить не нужно! Паскаль - это идеальный язык для обучения программистов на начальном уровне. Хотя бы из-за этого этот язык имеет право на существование.

А все ньюансы (которых есть бесконечное множиство) - это ньюансы... Таких ньюансов есть много. Примеры лень приводить. от fortran-а до ruby. это целая пропасть языков! Просто каждый выбирает ПОТОМ то, что ему удобнее.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено hard , 13-Сен-07 08:21 
Да ты Гуру!)))
Вот скажи, на чем написано ППО в банках? А в Администрации? А на почте?
Они лучше будут на венде сидеть, ради того, чтобы ничего не переделывать, тем более на С или кофе. (что выльется в сбои и большие затраты)
FPC вполне хорош, что за вирус такой: "Паскаль для обучения"? TP7 – для обучения.
FPC - не для обучения, он предназначен, а для использования Delphi программ на любых платформах.

И ПОТОМ можно не выбирать, он вполне подойдет для любых целей, от ядра ОС, до огромной гуайной программы. Или тебе тоже страшно за свое насиженное место?


"Релиз компилятора Free Pascal 2.2.0"
Отправлено serg1224 , 13-Сен-07 15:03 
>TP7 – для обучения.

1. Устарел в сравнении с реализацией языка в Delphi.
2. Коммерческий продукт! При всей моей любви к Borland ...


"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 13-Сен-07 11:08 
Нравится вам или нет, но FPC/Lazarus - это единственный способ пересадить делферов на Linux, а делфер в небольшой компании - вещь просто необходимая.
Пустой Халивар(((

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Тушкан , 13-Сен-07 12:23 
Не надо делферов пересаживать на линукс. Пусть будет заповедник свободный от идиотов. Ведь в след за ними прибегут маркетологи борланда - и тогда точно случится то, о чём так мечтает Мелкософт.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено k22 , 13-Сен-07 15:24 
Сам Free Pascal на си написан, однако.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено thedix , 13-Сен-07 20:13 
Ошибаетесь, он сам себя компилит.

"Релиз компилятора Free Pascal 2.2.0"
Отправлено Аноним , 14-Сен-07 09:04 
кстати, в статье написано, что:

"Compared to interpreted languages, one sees that FPC code executes 50 times faster than e.g. Ruby. The difference with PHP and Java is smaller, but these use 14 (PHP) to 17 (Java) times more memory than FPC programs."

пусть у меня английский и хромает на обе ноги, но в статье написано, что Free Pascal быстрее Ruby и в 14(17) раз ест меньше памяти, чем PHP(JAVA).


"Релиз компилятора Free Pascal 2.2.0"
Отправлено DeadMustdie , 14-Сен-07 09:33 
>кстати, в статье написано, что:
>
>"Compared to interpreted languages, one sees that FPC code executes 50 times
>faster than e.g. Ruby. The difference with PHP and Java is
>smaller, but these use 14 (PHP) to 17 (Java) times more
>memory than FPC programs."
>
>пусть у меня английский и хромает на обе ноги, но в статье
>написано, что Free Pascal быстрее Ruby и в 14(17) раз ест
>меньше памяти, чем PHP(JAVA).

Да уж... ляп в новости преизрядный.
Мне сразу странным показалось, потому как при беге в мешках (сиречь в тестах) Java на современных, JIT-компилирующих виртуальных машинах нисколько не медленнее C++. Просто жрет много памяти и вдобавок в самый неподходящий момент принимается собирать мусор.


"Релиз компилятора Free Pascal 2.2.0"
Отправлено the_root , 09-Апр-08 07:25 
Давайте не трогать Java.

Я джавист. Пробовал си/паскаль
Просто если у меня стоит задача гонять по сетке сущности, то я не заметил чтоб такие механизмы как Reflection были у си или паскаля.
А вот модуль ядра для линукс на Java не соберешь:)

Паскаль для одного, си для другого, Java - для третьего.