LINUX.ORG.RU

Вышел FreePascal 2.4

 , ,


0

0

FreePascal — это кросс-платформенный, свободный компилятор и библитека RTL языка pascal.

Добавлены новые платформы:

  • 64-бит Mac OS X (x86_64/ppc64)
  • iPhone (Mac OS X/Arm)
  • Haiku
  • Улучшена поддержка ARM EABI

Некоторые изменения:

  • файл ppc386.cfg больше не используется;
  • переменные Absolute теперь поддерживаются;
  • добавлено выравнивание для переменных типа record;
  • добавлены типы Byte/Word/Long/Qwordbool;
  • все старые модули сокетов для версии 1.0.x были удалены.

User changes

>>> Подробности

★★★★★

Проверено: Shaman007 ()
Последнее исправление: alexsaa (всего исправлений: 3)

Ответ на: комментарий от anonymous

anonymous> Б! Если Вы настолько «умный», то специально для таких как Вы, уточню- Windows-версия клиента Skype написана на Delphi. Причем эта версия гораздо функциональнее линуксового кастрата, на который скайп вообще забил и отдал на разработку OpenSource-сообществу. Так понятнее?

Исходники линуксовой версии скайпа в студию!

Quasar ★★★★★
()
Ответ на: комментарий от vertexua

2. Малое количество компиляторов выского качества.

Это следствие п.8

3. Низкая распространенность

Это следствие п.8

4. Не предлагает решения никаких проблем, которые не решаются так же легко или легче на других языках

Нормальная модульность. Нету ни в C, ни в C++ (в Java, правда, есть, но у неё другие недостатки). Множества (set). Оператор with. Возможность объявлять функцию локально в теле другой функции. Второе и третье удобно, но не очень принципиально, а вот отсутствие первого и четвёртого в плюсах доводит до белого каления.

5. Неудобство обьявления переменных в начале функции

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

6. Отсутствие краткой записи многих математических операций, тренарного оператора

Э.... согласен, но частично. Тернарной операцией, кстати, пользуюсь достаточно редко. Вещь иногда полезная, но киллер-фичей бы не назвал.

7. Шаблоны. Слышал что в FP такое есть. Да? Достаточно ли оно мощное для создания аналогов STL (alogirithms, iterators, etc)

С FP-шными шаблонами не сталкивался. Зато насмотрелся на них в плюсах. Ну да, конечно, техника мощнейшая, но насчёт её оптимальности есть сильные подозрения. И на читаемости кода, ИМХО, сказывается не лучшим образом.

8. Скептическое отношение со стороны большинства программистов )

Вот это на самом деле главный недостаток. :((( Сугубо субъективного происхождения. Из-за него и библиотека не такая большая, как у C/C++, и конкурирующих компиляторов мало.

Короче - языку не повезло. А жаль. Я ушёл на C++, но паскаль жалко. А ведь у него есть и гораздо более совершенные наследники - Оберон, в частности.

hobbit ★★★★★
()
Ответ на: комментарий от anonymous

anonymous> Будь повежливей <...> ты столь красноглаз и фанатичен

И после этого ты, шавка, смеешь вякать о вежливости?

anonymous> С чего ты решил, что паскаль/лазарус/делфи делает из студентов даунов?

Паскаль не делает. а вот дельфя - делает. Но если тот, кто выбрал в качестве обучающей среды дельфю, ведёт у студентов пары, значит он и делает из них даунов.

anonymous> Что плохого в мышевозной разработке _гуи_? По-моему, это вполне оправдано.

Посмотри на Tk и Qt,а потом вякай. Мышевозность в разработке морд - это порок мозга.

Quasar ★★★★★
()
Ответ на: комментарий от sv75

>> чего же такого фундаментального не хватает Delphi, чтобы писать на нём грамотные, хорошо спроектированные программа

Будем считать, что имелся в виду Delphi Classic. Фундаментального (для простого языка высокого уровня) --- неймспейсов, генериков, интерфейсов.

Не скажу, что неймспейсы не нужны, в принципе, полезная штука, но в C++, где они есть. они в 99% случаев используются на пару с #include как костыль для замены отсутствующей в этом языке модульности.

А интерфейсы в Дельфи таки есть.

hobbit ★★★★★
()
Ответ на: комментарий от anonymous

> Чем конкретно делает?

значительно большим удобством

В чем прорыв-то?

в значительно большем удобстве. очевидно же =)

korvin_ ★★★★★
()
Ответ на: комментарий от Quasar

>Там в новости явно сказано, что опенсорсного скайпа не будет.

«Yes, there's an open source version of Linux client being developed» Как это переводится, по Вашему мнению?

anonymous
()
Ответ на: комментарий от hobbit

>А интерфейсы в Дельфи таки есть.

В Дельфи есть не только интерфейсы. Есть там и неймспейсы и генерики

anonymous
()
Ответ на: комментарий от Quasar

> Мышевозность в разработке морд - это порок мозга.
А Вы когда на Qt пишете. Qt Designer из принципа не используете?
Все ручками?

anonymous
()
Ответ на: комментарий от anonymous

> Есть там и неймспейсы и генерики

Причём последние появились аж в этом году, а я в 1995-ом мучался диелемой «будем по-простому явно приводить типы или сделаем наследника от коллекции?» >_<

sv75 ★★★★★
()
Ответ на: комментарий от vertexua

А вообще, главным недостатком Дельфи для меня было отсутствие кроссплатформенности. Ну не потянул Борланд проект Kylix. После чего я и решил окончательно с дельфями прощаться.

FreePascal и Lazarus как раз и призваны этот недостаток восполнить. Боюсь только, что уже поздно...

hobbit ★★★★★
()
Ответ на: комментарий от sv75

>Причём последние появились аж в этом году, а я в 1995-ом мучался диелемой «будем по-простому явно приводить типы или сделаем наследника от коллекции?» >_<

Самое главное, что они есть сейчас, я про 1995 год ничего не говорю.

anonymous
()
Ответ на: комментарий от anonymous

> Это причина не архитектурного характера, не фундаментальная, а скорее маркетинговая

Там есть техническая причина --- в дельфи привыкли контролы расставлять по пикселям жёстко (да, я знаю, что потом с этим начали бороться якорями). Поэтому нормальный перенос интерфейса на дельфи на любой «растягиваемый» интерфейс типа Gtk/Qt --- нереален. В качестве примера можно посмотреть на порт WinForms для Mono/Linux.

sv75 ★★★★★
()
Ответ на: комментарий от anonymous

> Самое главное, что они есть сейчас, я про 1995 год ничего не говорю.

Самое главное, что в 2009 мне уже не нужен дельфи. %)

sv75 ★★★★★
()
Ответ на: комментарий от sv75

> а я в 1995-ом мучался диелемой «будем по-простому явно приводить типы или сделаем наследника от коллекции?»

1995-ом??? Ну если для Вас Delphi Classic - это исключительно Delphi 1, которая, к тому же была заточена под Windows 3.x, тогда разговор, конечно, другой. Давайте я тогда вспомню, как в Си стиля Кернигана-Ричи заголовки функций оформлялись. В современном Си, к счастью, про это уже мало кто помнит.

Насчёт генериков не в курсе, а вот интерфейсы, кажется, были уже в Delphi 5, которой недавно 10 лет стукнуло.

hobbit ★★★★★
()
Ответ на: комментарий от sv75

> Самое главное, что в 2009 мне уже не нужен дельфи. %)

Да мне, в общем-то, тоже... :(

hobbit ★★★★★
()
Ответ на: комментарий от sv75

>Там есть техническая причина --- в дельфи привыкли контролы расставлять по пикселям жёстко (да, я знаю, что потом с этим начали бороться якорями). . В качестве примера можно посмотреть на порт WinForms для Mono/Linux.

Это не причина технического характера, это причина - в головах программистов. Как Вы уже отметили, задача это вполне решаемая. Не говоря уже о том, что gtk/qt мир не ограничивается ;)

Поэтому нормальный перенос интерфейса на дельфи на любой растягиваемый" интерфейс типа Gtk/Qt --- нереален

Вполне себе реален, сами же знаете, что Gtk/Qt более гибкие в этом плане. А более гибкое всегда сможет реализовать частный «негибкий» случай. Вот обратный процесс - уже более интересен, да.

anonymous
()
Ответ на: комментарий от anonymous

> В значительно большем удобстве.
Просто неоспоримый аргумент.
Только вот на вкус и на цвет фломастеры разные.
И многим функциональные ЯП не по вкусу.
Если на ML попробовать пересадить студентов, думаю процент самоубийств в стране значительно возрастёт.

Сойдемся на том что лично для вас система типов паскаля является говном. Для меня это высказывание истинным не является.

anonymous
()
Ответ на: комментарий от anonymous

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

Ты его сообщения почитай (не только в этой теме), они на 90% — агрессивное хамство.

kss ★★★★★
()
Ответ на: комментарий от anonymous

>Кстати, те, кто кричит «паскаль не нужен», что посоветуете взамен? С достаточно низким порогом вхождения, RAD, GUI Builder, etc?

ЗОЧЕМ?! Зочем в обучающем ЯП и в среде для его изучения все эти быдлоэлементы говноэнтерпрайза?

AVL2 ★★★★★
()
Ответ на: комментарий от hobbit

> Насчёт генериков не в курсе,

Написано --- появились в 2009! >_<

вот интерфейсы, кажется, были уже в Delphi 5, которой недавно 10 лет стукнуло

С интерфейсами я крупно прогнал, это да; я же использовал, оказывается >_<.

sv75 ★★★★★
()
Ответ на: комментарий от anonymous

> Если на ML попробовать пересадить студентов, думаю процент самоубийств в стране значительно возрастёт. В США студенты в приличных вузах и сидели на ML. Там, где не схеме.

sv75 ★★★★★
()
Ответ на: комментарий от sv75

В США студенты в приличных вузах и сидели на ML. Там, где не схеме.

Так вот почему там так часто в вузах стреляют!

anonymous
()
Ответ на: комментарий от anonymous

> Вполне себе реален, сами же знаете, что Gtk/Qt более гибкие в этом плане.

Нет, по пикселям перенести *как-то* получится (см. WinForms). Зачем мне будет нужен тот гуй в линуксе, где у меня стоит, скажем, 12-ть размер шрифта --- вот что непонятно.

sv75 ★★★★★
()
Ответ на: комментарий от sv75

>Нет, по пикселям перенести *как-то* получится (см. WinForms). Зачем мне будет нужен тот гуй в линуксе, где у меня стоит, скажем, 12-ть размер шрифта --- вот что непонятно.

Еще раз повторяю — всё вопросы к безруким программистам, которые делают такой «деревянный» гуй. При желании и прямых руках - задача более чем реальная.

P.S. Эта тема конечно же, вне всяких сомнений имеет отшение к языку программирования и его возможностях :-D

anonymous
()
Ответ на: комментарий от sv75

>> Давай ставним идею «динамического массива», аллоцируемого через malloc(), с другими вещами которых учат инженеров.

Давай, но зачем?

По мне так всему фану с указателями цена - три копейки. Это все очень примитивно.

в МУ-61 маллока у меня не был

На спектруме в компиляторе Си был. Я тогда и взялся за Си поскольку код на нем выгладел красиво, Паскаль мне показался квадратно-гнездовым каким-то.

Absurd ★★★
()

>sniper21 *** (*) (01.01.2010 15:05:51)

Проверено: Shaman007 (*) 01.01.2010 19:43:32

Исправлено: sniper21 01.01.2010 15:08:44


Исправлено: sniper21 01.01.2010 15:06:40



библитека RTL


Символизирует. Вспоминаются анекдоты про британскую энциклопудию.

agabekov
()
Ответ на: комментарий от anonymous

P.S. Эта тема конечно же, вне всяких сомнений имеет отшение к языку программирования и его возможностях :-D

Какой Вы, батенька, привередливый. Тут ещё срача Java vs. Mono не было. Точнее, вбросы были, но на них не повелись.

hobbit ★★★★★
()
Ответ на: комментарий от hobbit

>Какой Вы, батенька, привередливый

Да я не привередливый, я просто не хочу, чтобы из-за второстепенных тем разговор менял своё русло :) А срачи про Моно тут случаются регулярно :-D

anonymous
()

Паскаль - язык молодых ^_^

record ★★★★★
()
Ответ на: комментарий от Absurd

> По мне так всему фану с указателями цена - три копейки. Это все очень примитивно.

Да, но, как ни странно, многие въезжает в это с трудом. Возможно, ошибка в консерватории.

sv75 ★★★★★
()
Ответ на: комментарий от Place-des-Arts

>Си серьёзно нужен только тем кто идёт в комп. графику.

Комп. графику насколько я понимаю дают в MathCAD-е.

Absurd ★★★
()
Ответ на: комментарий от Absurd

> Комп. графику насколько я понимаю дают в MathCAD-е.

Речь про трехмёрщину. Там всё на Си, включая публикации.

sv75 ★★★★★
()
Ответ на: комментарий от Place-des-Arts

> Второе, не всем Си вообще нужен.

Си серьёзно нужен только тем кто идёт в комп. графику.

Как насчет ОС/компиляторов/etc?
http://tinyurl.com/y8u3ums

У меня в университете:
1-ый семестр - ANSI C
2-ой семестр - Haskell
3-ий и 4-ый семестр - OOP с использованием Java (использование unit test'ов, VCS)

Raving_Zealot ★★
()
Ответ на: комментарий от sv75

>Речь про трехмёрщину.

Я сужу по учебному пособию «компьютерная геометрия и алгоритмы машинной графики» для ВТУЗ-ов - там хотя и листингов нет, но автор говорит что студенты курсовые работы ему на MathCAD-е сдают. А там все 3D.

Absurd ★★★
()
Ответ на: комментарий от sv75

> Во Free --- нет, я знаю. Только на Си такое решение выглядит раза в три элегантнее, поэтому не ясно, зачем нам Паскаль.

Ну как зачем - у него очень удобная VCL с хорошим дизайнером. Lazarus слегка глючноват (был когда я его смотрел), а вот Delphi хорош. В линуксе я им не пользуюсь, освоил Python+PyGTK, а вот для винды конкурентов нет.

Для современного Паскаля кошерен двойной open array.

В общем-то, двойного open array не бывает. open array - это когда один из формальных параметров функции выглядит вот так: x: array of integer. Если так объявить переменную в секции var, то это будет не open array, а dynamic array.

Так, по крайней мере, было в Delphi 6. Может, в FPC и современных Delphi все иначе.

Open array, например, были еще в Turbo Pascal 7, dynamic array там не было.

ccoder
()
Ответ на: комментарий от anonymous

~_~ Есть Lazarus. С портом на OS X и x64. К тому же - не верю, что нет 64 битной дельфи. Правда оч. давно его не видел.

anonymous
()
Ответ на: комментарий от anonymous

+1, меньше возьни с инструментом, бОльшая концентрация внимания на задаче.

anonimous
()
Ответ на: комментарий от metar

Я, правда лазарусист, хватаюсь за любимый синтаксис, и за LCL - возможность скомпилировать _один и тот же код_ без каких-либо правок под *nix (как qt, так и gtk (хотя gtk давно уже не смотрел) и mswin. Об альтернативах, пока, не слышал... Только что разве qt, но вот приложение, её пользующее (слив, конечно, но названия не помню, но qtcore.dll оно за собой тянуло при установке) заметно подтормаживало на отрисовке, после Alt+Tab'a. Да и вообще, кнопки выглядели чужеродно ко всей остальной системе.

anonymous
()
Ответ на: комментарий от Voviandr

Просто кто-то сказал Delphi - и все разом кинули обсир^Wобсуждать. А IDE у fpc - всё-таки Lazarus (fpide, всё-таки как-то...), который тут почти и не вспоминался (а не, кто-то сказал «глючный, когда его в последний раз смотрел» (когда это было-то) - и всё). А ссылочка с http://www.freepascal.org/ всё-таки ведёт не на http://www.embarcadero.com/delphi а к http://lazarus.freepascal.org/

anonymous
()
Ответ на: комментарий от sv75

use lazarus, luke ^_^ Все (почти) плюшки fpc с дженериками, безусловно необходимыми в обучении многомерными массивами (хотя я бы под ту задачу пользовал что-нибудь вроде TList ^_^) + LCL

anonymous
()
Ответ на: комментарий от anonymous

> Только что разве qt, но вот приложение, её пользующее (слив, конечно, но названия не помню, но qtcore.dll оно за собой тянуло при установке) заметно подтормаживало на отрисовке, после Alt+Tab'a. Да и вообще, кнопки выглядели чужеродно ко всей остальной системе.

Да, это слив. Ибо врать нужно было про qtgui.dll :) Да и вообще, на Windows многие программы выглядят не иначе, как «кто в лес, кто по дрова».

d_a ★★★★★
()
Ответ на: комментарий от Quasar

> И после этого ты, шавка, смеешь вякать о вежливости?

Ну вообще... да :) я ж не советовал «шавкам» удавливаться :) И я бы не назвал красноглазие и фанатизм чем-то очень уж очень «невежливым» (если в разумных пределах, конечно). Твою бы энергию да в нужное русло... Я и сам немного красноглаз и фанатичен, но не считаю, что это что-то плохое, потому что свой фанатизм я пытаюсь аргументировать.

Паскаль не делает. а вот дельфя - делает. Но если тот, кто выбрал в качестве обучающей среды дельфю, ведёт у студентов пары, значит он и делает из них даунов.

Не скажу за всех, конечно, но паскаль преподается во многих универах первым языком. Почему? Да потому что по программе он. Не нравится? Не вали всю вину на преподавателей, высказывай свое недовольство министерству образования. Они тут ни при чем и не делают из студентов «даунов», обучая в Delphi/Lazarus (да и это опять же у тебя не особо аргументировано).

И да, лабораторные работы есть не только у программистов (вот их можешь хоть повально заставлять писать на питоне, схеме, яве и т.д.), но и у других специальностей. Паскаль/Лазарус в этом плане оптимальный вариант, потому как его проходят все, следовательно (в теории) студенты должны его знать.

К тому же те же студенты имеют право выбора, на чем им писать и сдавать (за исключением преподавателей, которые требуют только делфи, и которые пытаются «сделать из студентов даунов»).

Вообще у тебя все очень просто. Взял пересадил всех с делфи на что-нибудь другое и все. А вот если задумаешься о реализации всего этого, посмотришь на ситуацию в универах/школах, то поймешь, что к чему. И да, не все делится на черное/белое.

Посмотри на Tk и Qt,а потом вякай.

Ну смотрел и что дальше? Во многих случаях менеджеры компоновки можно заменить Dock'ами и Align'ами. Во многих случаях не нужно мифическое, «чтобы отображалось и на 240x320 и на 2048x1536» или еще что-нибудь подобное. А нормальный интерфейс в GUI Builder ты сможешь сделать намного быстрее.

Не говорю, что этот вариант подходит _для всех случаев_, просто надо иногда трезво смотреть на вещи.

Да, те программы, что я разрабатывал, не эксплуатировались больше 3 лет и не использовались тысячами клиентов, но они были востребованы и использовались. И для таких программ я бы наверно и сейчас использовал GUI Builder. Только не кидайся опять в крайности, я не говорю за все и за всех)

Да ты посмотри на разработку любых более-менее крупных систем (нет, вообще любых систем). Тех, что разрабатывались «на века» или предполагали быть очень гибкими. Они рано или поздно становятся монструозными тормознутыми поделиями, либо регулярно переписываются их крупные части. Да ты и сам можешь привести примеры.

Старые разработчики сменяются, новые идеи приходят и начинается «у... как тут все запущено, как сложно, как неудобно, как старомодно, а давайте все перепишем с нуля, чтоб без ошибок, чтоб это и это учесть и будет у нас мегапродукт». И пишут ведь)

Я не говорю про регулярное написание велосипедов всеми и на все :)

P.S. Мне вот жалко амарок 1.4

anonymous
()
Ответ на: комментарий от Quasar

я смотрю на LCL с ActionList'ом и Anchors Manager'ом и убеждаюсь, что мышевозное гуимордостроение есть добро. Ну, или продемострируйте пример, по которому написать что-то статичное (динамику, понятное дело, в designtime писать практически (или «принципиально», не задумывался ^_^) невозможно) будет быстрее, чем «намышевозить»?

anonymous
()
Ответ на: комментарий от d_a

я обратил внимание на словечко qtcore.dll, когда бежал Progress bar, при установке... Вроде бы (не так много ставил приложений под винду ^_^) - это был FlameRobbin. Кончатся праздники - поищу тот самый qtcore, правда смысла уже не будет особого ^_^

anonymous
()
Ответ на: комментарий от anonymous

> Во многих случаях менеджеры компоновки можно заменить Dock'ами и Align'ами.

Во многих случаях автомобили можно аменить трехколесными велосипедами.

//Починил.

d_a ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.