LINUX.ORG.RU

Вышел FreePascal v2.4.2

 , ,


0

1

12 ноября увидел свет релиз Free Pascal v2.4.2.

FreePascal (FPC) - это свободно распространяемый компилятор языка Паскаль с открытыми исходными кодами. Он совместим с Borland Pascal 7 и Object Pascal – Delphi, но при этом обладает рядом дополнительных возможностей, например, поддерживает перегрузку операторов. FPC — кроссплатформенный инструмент, поддерживающий огромное количество платформ. Среди них — AmigaOS, DOS, Linux, *BSD, OS/2, MacOS(X) и Win32/win64.

Сам компилятор распространяется под лицензией GPL, а библиотеки времени исполнения — под LGPL.

Основные изменения в новой версии:

  • Поддержка конструкции for ... in (подобно Delphi 2006).
  • Модификаторы abstract и sealed для классов.
  • Дополнительные методы в TObject.
  • Добавлена целевая платформа FreeBSD 64-bit.
  • Множество исправленных ошибок.

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

★★★

Проверено: Shaman007 ()
Последнее исправление: post-factum (всего исправлений: 2)

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

Написать что-нибудь на freepascal и написать что-нибудь в некогда великолепной, но жестоко убитой и изнасилованной delphi - это две большие разницы.

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

> А я бы школьников ТЕРРОРИЗИРОВАЛ БЫ сначала внутренним устройством ЭВМ (! гы) ...

Тебе, чтобы стать великим педагогом мешает малость: частица «бы». Ты пойди в школу, поработай там что ли. Ну и я не уверен, что ты сам понимаешь как работает компьютер. Я, например, понимаю так: все детали соединить что во что втыкается, включить в розетку и можно работать. Понимаешь ли ты больше? Понимаешь ли зачем нужен южный мост, северный мост, их суть и харрактеристики?

Casus ★★★★★
()

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

Napilnik ★★★★★
()

Одобряю. Многие знакомые программисты перешли с Дельфи на Лазарус и Фри Паскаль. Говорят - вполне прилично, только экзешники получаются дичайших размеров.

а школы... их давно надо перевести на perl или python

И растить из детей индусов-быдлокодеров?

в некогда великолепной, но жестоко убитой и изнасилованной delphi

До сих пор расходятся мнения - когда ее убили и изнасиловали - после 3-ей, 5-ой или 7-ой версии. На мой взгляд - этот кусок говна родился уже мертвым.

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

>Он сейчас практически везде есть, где есть браузеры.

JS - это не только браузеры

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

Тока вот смотри, какой казус: половина декларация списка изменений - перетаскивание фич из «некогда великолепной, но жестоко убитой и изнасилованной» ;-)

ps когда ж разрабы перестанут delphi и начнут CP ?..

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

>надо было делать GPL + linking exception.

1) А зачем так заботиться о проприетарщиках? Проприетарные библиотеки же иногда вообще нельзя слинковать статически, т.к. они могут поставляться только в виде .dll (у нас - .so) -файлов.

2) Можно и к LGPL тогда добавить исключение, что не обязательно предоставлять возможность слинковать программу со своей версией библиотеки.

Ttt ☆☆☆☆☆
()
Ответ на: комментарий от Casus

>онимаешь ли зачем нужен южный мост, северный мост, их суть и харрактеристики?
Этапять! Наверняка, чтобы меряться :-D

yaws
()
Ответ на: комментарий от sun-lsd

> Я бы предложил F#

Лесом. Ибо «В настоящее время его разработку ведет Microsoft Developer Division, и распространяется вместе с .NET Framework и Visual Studio как часть Visual Studio 2010».

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

«Язык программирования F# (компилятор и основные библиотеки), разрабатываемый компанией Microsoft и работающий под .NET и Mono, опубликован под лицензией Apache 2.0.»

Программы можно писать в имаксе, используя F# mode for Emacs. И сам язык очень современный, вобрал в себя многие достижения других и при этом не уснаследовал их ошибок.

sun-lsd
()
Ответ на: комментарий от AS

>Лесом. Ибо «В настоящее время его разработку ведет Microsoft Developer Division, и распространяется вместе с .NET Framework и Visual Studio как часть Visual Studio 2010».

Они же говорили, что на моно работает

annulen ★★★★★
()

> Добавлена целевая платформа FreeBSD 64-bit.

наконец-то!

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

Программистам на заметку

>Одобряю. Многие знакомые программисты перешли с Дельфи на Лазарус и Фри Паскаль. Говорят - вполне прилично, только экзешники получаются дичайших размеров.

Чтобы уменьшить размеры исполняемых файлов нужно использовать утилиты strip и upx. Для оффтопика идут вместе с дистрибутивом FreePascal для систем на основе Linux и FreeBSD нужно устанавливать из репозитория или портов.

yura-vn
()
Ответ на: комментарий от AS

«В настоящее время его разработку ведет Microsoft Developer Division, и распространяется вместе с .NET Framework и Visual Studio как часть Visual Studio 2010»
Да ну?

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

Понимаешь ли зачем нужен южный мост, северный мост, их суть и харрактеристики?


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

В школу работать не пойду - детей ненавижу.
Про понимание - когда учился в школе и в инсте - понимал (правда все это было самообучение, ибо преподы учили только васику и блоксхемам), даже кое что кодил на ассемблере, начиная от вирусов и кончая простенькими драйверами для устройств, но это было на 86->486, т.е. для доса, и потом специализация у меня иная, я не программист (но тогда это было мне интересно и поэтому давалось достаточно легко, и я видел разницу между собой и другими кто был увлечен - и теми кто тупо зубрил и сдавал зазубренный но не понятый материал на пятерки, сосед наверху был таким как раз - родители учителя, поэтому он учился только на пятерки, но именно зазубриванием, и спускался ко мне что бы я ему какие то элементарные вещи объяснил, вот смысла в зазубривании я не вижу - это разве что память развивает, не больше)

anonizmus
()
Ответ на: Программистам на заметку от yura-vn

«Чтобы уменьшить размеры исполняемых файлов нужно использовать утилиты strip и upx. Для оффтопика идут вместе с дистрибутивом FreePascal для систем на основе Linux и FreeBSD нужно устанавливать из репозитория или портов.»

А выполнение распухших екзешников на процессоре чем сожмете? Надо оптимизировать, а не костыли советовать.

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

> Да ну?

Ну да: «Начата работа». :-)
Это ж пока ещё оно... Да и отдельно не живёт. Зачем оно вне конкретных проектов ? Моно за собой таскать по каждому чиху ?

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

[i]Это ж пока ещё оно... Да и отдельно не живёт. [/i]
Теперь заживет, куда денется.
[i]Моно за собой таскать по каждому чиху ? [/i]
В некоторых случаях почему бы и нет?

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

>>Чтобы уменьшить размеры исполняемых файлов нужно использовать утилиты strip и upx. Для оффтопика идут вместе с дистрибутивом FreePascal для систем на основе Linux и FreeBSD нужно устанавливать из репозитория или портов."

А выполнение распухших екзешников на процессоре чем сожмете? Надо оптимизировать, а не костыли советовать.

А ты посмотри что там стрипается. Что-то около четверти «экзешника» составляет текст, который можно безболезненно удалить. Причём в распухании бинарника виноват не компилятор, команда fpc file компилит без излишеств, а ИДЕ в котором прошита логика напихать побольше отладочной инфы. Возможно, в вантузе и тяжело компильнуть из консоли, но в линуксе это не так.

Надо оптимизировать

У наСИльников уже оптимизировано. Из коробки нет 64 битных переменных, надо подключать внешними костылями - родимое пятно 16 битных компиляторов, там тоже были максимум 32 бит числа. Конечно можно часть паскаля переписать опять на 16 бит и ускорять программы велосипедными асмовыми вставками, но здравомыслящие люди на это не пойдут.

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

2Casus Сам то я не пойду, но вот требовать чтобы архитектуру чего то там детям объясняли буду... Кстати уж тогда сразу ARM давайте)) Но вобще сначала нужно учить отнюдь не архитектуре. Сначала нужно учить зачем нужен инструмент и как его применять. А вот после этого логично перейти к внутренностям. Тем более алгоритм он и в математике весьма полезен как понятие. Обратите внимание что инструмент проектируют под задачу, но не наоборот.С учетом существующего инструмента задачу могут корректировать это да.Так вот школьник должен понять что компьютер делает то что ему скажешь, то есть что в модель заложишь, то и получишь. За тем, а лучше параллельно он должен понять что компьютер это как раз не то куда диск с очередной CSиной пихают. А что это инструмент работы и исследования. А вот когда он познакомится со спектром задач решаемых ЭВМ можно и архитектуру объяснить, что даст более глубокое понимание принципов информатики и программирования.А для этого и в самом деле подойдет и ассемблер. И потом если Вы Casus помните, то А.Тьринг проводил исследования в области сложности вычислений и формализации алгоритмов еще в 30-ые, а вот те самые принципы архитектуры оформил докладом дедушка Фон Нейман в 1945 году. Не заставляйте школьника проходить устройство доменной печи тогда, когда он еще практически не знает физико-химических свойств металлов :)

pylin ★★★★★
()

По поводу самого релиза молодцы ребята, дело нужное делают, конечно FPC и Lazarus кое где еще уступают Delphi, но недостатки далеко не так критичны и программой можно вполне комфортно пользоваться. А кроссплатформенность это большой плюс

И да pascal,FPC,Lazarus long live!

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

>> А я бы школьников ТЕРРОРИЗИРОВАЛ БЫ сначала внутренним устройством ЭВМ (! гы) ...

Тебе, чтобы стать великим педагогом мешает малость: частица «бы».

Еще ему самоуверенность мешает. Обычно, новеньких преподов как раз таки терроризируют школьники.

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

Вирт вроде писал что на Modula писали ПО для управления группой спутников. А насчет ММВБ а это разве серьезное заведение? Так еще один фондовый рынок стран третьего мира, которые решили поиграть в капитализм за счет народа

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

насчет strip и upx

Значит так. Для начала, замечу, что fpc умеет создавать исполнимые и разделяемые библиотечные бинарники в двух режимах - обычном и smartlinking. В первом случае из каждого юнита (ну, и основного модуля) генерятся обджектные файлы, дальнейшая оптимизация которых (включая избавление от мертвого кода) средствами гнутого линкера ld невозможна. Зато линкуется быстро и менее глюкоопасно. Во втором случае из модулей генерятся статические библиотеки с мелко нарезанным содержимым. Разница в размерах того, что получается после линковки, весьма ощутима. Второй режим вызывается вставкой в код модуля такой штуки: {$smartlink on} (соответственно, есть и off) либо парой ключей -CX -XX из командной строки (на кой их два - не знаю, возможно, уже пофиксили. Но такое сочетание по-прежнему работает). Есть вещи, до сих пор, по-моему, не решенные. По крайней мере, несколько лет назад не было возможности выбросить из бинарника полностью перекрытые виртуальные методы. Судя по размерам продукции Lazarus'а, есть подозрение, что проблема остается и сейчас. Насколько я знаю, есть надежда на то, что с этим будет справляться внутренний линкер, который постепенно внедряется и на части платформ уже работает по умолчанию.

Даже при выключенном смартлинке не могу сказать, что бинарники получаются чудовищно большими, если не линковать «тяжелых» библиотек вроде LCL. Не стОит еще забывать, что FPC свою RTL линкует всегда статически. Что же до LCL - то, по-моему, там пока рискованно включать режим smartlink. И все равно пустая форма после удаления отладочной информации strip'ом весит полтора мега, а уже не тридцать.

А вот UPX - по-моему, штука жульническая. Про винду читал, что там ее использование приводит к неэффективному использованию памяти. Как в линуксе - не знаю, но отношусь к этой штуке по привычке с предубеждением.

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

>До сих пор расходятся мнения - когда ее убили и изнасиловали - после 3-ей, 5-ой или 7-ой версии. После 7-ой. Когда стали переходить на .net. Даже сама IDE стала жутко глючить.

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

>Так еще один фондовый рынок стран третьего мира, которые решили поиграть в капитализм за счет народа

Так, еще один вердикт эксперта по всему с мировым именем. :) Я вроде нигде не утверждал, что ММВБ серьезное заведение... (Дядька, который у них там заведует интеграцией, а к нам приезжал для обсуждения сути попила^Wзаказа - он вообще человек с юмором. Тестовые демо-скрипты на питоне пишет для клиентов, чтоб показать им, что оно работает, и wireshark'а не гнушается, хотя вроде по должности уже давно не обязан.) К дельфовой проге, кстати, которая у них изначально была, претензий нет - свои функции выполняет. Вот линуксовая версия на fpc у них получилась... не сразу.

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

>И да pascal,FPC,Lazarus long live!

Он уже умер? (Кто-то из них?) «Лонг лайв» исторически повелось кричать после констатации R.I.P.а.

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

> очень рад прочитать эту новость. именно паскаль в свое время пробудил во мне любовь к программированию...

+1024

Все остальное почему-то пробуждает отвращение и ненависть.

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

>>Понимаешь ли зачем нужен южный мост, северный мост, их суть и харрактеристики

Долго улыбался. я это еще в школе, классе в десятом знал и прекрасно понимал. хотя школа было полностью гсмная и предмета информатика не было вообще

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

>«Лонг лайв» исторически повелось кричать после констатации R.I.P.а.

Это только у слакварщиков так.

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

> а школы... их давно надо перевести на perl

Бедные школы... :)

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

> Было бы здорово если бы зеленая голодная студентота вместо унылого обрыганского C++ использовала сабж, может быть тогда меньше глюкавых поделок было бы в мире, вот %)

Да, в общем-то, популярность языка в первую очередь обусловлена порогом вхождения... А в Pascal он таки ниже, так что процент поделок был бы больше.

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

> Да, могу заверить, что в игровой индустрии точно применяется, и люди делают немалые деньги :)

А ещё довольно активно используется в коммерческом прикладном программировании. :) По личному опыту знаю.

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

> а смысл менять морально устаревшее говно

Ой, ну да, совсем забыл, что для большинства студентов-«программистов» Pascal ассоциируется с TP7 или Button1Click...

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

> Не так уж он совместим с делфи и фпс делает программы в пару раз толще по сравнению с компилем делфи.

Кстати, интересно, как у FPC со скоростью? Компилятор Delphi считается очень быстрым, примерно на одном уровне с Java.

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

Но он, конечно же, не такой, а весь из себя божественный и волшебный.

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

>Кстати, интересно, как у FPC со скоростью? Компилятор Delphi считается очень быстрым, примерно на одном уровне с Java.

ну FPC не так быстр как delphi, но в общем не обременителен. Гораздо более важно, что платформ поддерживает поболее. Кстати по моим наблюдениям по околопаскалевским форумам - многие делфисты _вынужденно_ используют fpc/lazarus - для x86_64 и при необходимости переноса ПО на Линукс. плюются местами, но используют и в промышленной эксплуатации в том числе.

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

> Не заставляйте школьника проходить устройство доменной печи тогда, когда он еще практически не знает физико-химических свойств металлов :)

А мне зачем это говорить?

Сам то я не пойду...

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

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

> Долго улыбался. я это еще в школе, классе в десятом знал и прекрасно понимал. хотя школа было полностью гсмная и предмета информатика не было вообще

А _зачем_ это знать? Я не вижу смысла. Да, когда-то я мог программировать в шестнадцатиричных кодах Z80, хоть и неудобно было, всё-таки на ассемблере проще. Но смысла в этом знании для своего сына, например, не вижу совсем. Надо знать только логическую связь что с чем в компьютере связано, да и то приблизительно, если ты не пишешь драйвера (в школе то) или BolgenOS.

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

> а школы... их давно надо перевести на perl или python!

Да-да, вот только питона с его «Маяковским» синтаксисом для развития стиля кодирования и не хватало.

Паскаль хорош именно тем, что прививает стиль.

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

>Паскаль хорош именно тем, что прививает стиль стиль ms-dos?

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

> Я люблю перл, но понимаю что это не то чему надо учить детей, с их неокрепшей психикой.

ППКС

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

Стиль развивает схема, а паскаль --- процедурная какашка.

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