LINUX.ORG.RU

Вышел Lazarus 0.9.28

 , , ,


0

0

Lazarus - это интегрированная среда разработки на FreePascal, поддерживающая множество фреймворков (GTK+, Qt, WinCE, Carbon) и операционных систем Linux, BSD, Windows, MacOS.

Новшества версии 0.9.28:

Главные изменения в интерфейсах LCL

  • GTK2 теперь фреймворк по умолчанию для Linux (необходимо было исправить множество багов. Подробнее тут)

Главные изменения в библиотеке LCL

  • был добавлен TFrame
  • большинство компонентов имеют значения по умолчанию
  • TMonitor class: поддержка мультимониторных конфигураций
  • рефракторинг LCL позволил сократить размер приложений на 15-18%
  • в компоненте TreeView появилась возможность редактирования а также добавлены разнообразные визуальные улучшения
  • новые свойства: TBitBtn.GlyphShowMode, TApplication.ShowButtonGlyphs, которые включают отображения глифов на кнопках, для кадой кнопки или всего приложения
  • новые компоненты: TShellTreeView - показывает диски (разделы) и директории/файлы, TShellListView - показывает директории/файлы и TFilterComboBox - специализируется на отображении фильтра файлов.

Небольшие изменения LCL

  • TColorBox, TColorListBox были полностью переписаны. Теперь они более Delphi-совместимы.
  • TColorDialog.CustomColors было добавлено.
  • добавлена поддержка формата битовой карты os/2 (bmp)
  • в TMouseButtons добавлены mbExtra1, mbExtra2. Поддерживается до 5 кнопок мыши (только Windows)

Изменения в IDE

  • новый диалог настройки IDE объединяющий в себе настройки для: переменных окружения, редактора, codetools, отладчика, опции справки
  • удалён jitform, использовавшийся как хак для создания методов в design-time
  • и другие изменения в поддержке отладчика, редакторе, дизайнере форм

Доработанные и исправленные компоненты

  • TAChart
  • LazReport
  • Printers и PostscriptCanvas
  • TDbGrid, TDrawGrid и TStringGrid

Всего исправленых ошибок 1031.

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

★★★★★

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

>написание интерпретатора паскаля на паскале,

не труЪ. Тру -- это компилятор паскаля на ассемблере, см. Context: http://www.avhohlov.narod.ru/

Хотя компилятор паскаля простой как палка. Его всё равно на чём писать.

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

>Ну и текстом на каком языке программирования является патч?

на декларативном. Языке программы patch. Как sed-скрипт есть текст на языке sed. Программа может примениться или нет, тогда возникнет .rej-файл. То есть это ещё и логический язык программирования, на котором описываются конфликты :)))

anonymous
()

Снова осквернили могилу православного Pascal'а

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

Попутал я, сорри. На отечественном варианте Yamaha MSX дело было. Но там унутре у него был Z80, потому и попутал. Turbo Pascal от Borland был под CP/M (:

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

>1. Многословный синтаксис.

begin и and глазами парсятся быстрее чем { и } Причм странно что те же самые люди которым не нравится синтаксис Паскаля ругают Питон за отсутствие скобок вообще =)

>2. Интеграция с Native OS API.


А какие собственно проблемы? Или ты про WinApi? Там про проблемы слышал..

>3. Те проблемы, из-за которых Вирт изобрёл Модулу и Оберон.


Большей частью решены в современных диалектах. В виртовском паскале даже меток не было ибо нефиг

>4. Мало возможностей метапрограммирования: макросы, хвостовая рекурсия, система типов с выводом.


А они нужны "простому трудяге"? Если нужно метапрограммирование сразу с функциональных языков начинать надо

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

>на декларативном. Языке программы patch.

ну про это я там дальше писал :)

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

> Не учителю, а методисту или кто там заведует программой. Бо учитель может и паскалевскую программу на фрипаскале не скомпилить. А чо, документация по опциям коммандной строки ничем не лучше описания схемы с точки зрения безграмотных товарищей. И привычной оболочки турбопаскаля нет.

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

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

> чего, по-твоему, не хватает?

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

напомню, что

map :: (a -> b) -> [a] -> [b]

(хаскеллисты, поправьте, если я в синтаксисе ошибся)

и на окамле реализуется, например, так:

let rec map f xs = match xs with [] -> [] | x::xs -> (f x)::(map f xs)

функция весьма проста, но тем не менее весьма полезна.

естественно она должна работать с любой функцией типа (a -> b), где a и b -- любые типы.

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

> begin и and глазами парсятся быстрее чем { и } Причм странно что те же самые люди которым не нравится синтаксис Паскаля ругают Питон за отсутствие скобок вообще =)

а индентация глазами парсится еще быстрее и {} этом мешают в значительной степени меньше, чем begin и end

> А они нужны "простому трудяге"? Если нужно метапрограммирование сразу с функциональных языков начинать надо

а кому он нужен, этот "простой трудяга"? и если метапрограммирование, то лучше лисп. впрочем, конечно, ФП-языки обычно "более приспособленны" к МП, чем ИП-языки за счет наличия искаропки нормальной, удобной, системы типов, поддержки функций высшего порядка, поддержки сопоставления с образцом и наверное чего-то еще =)

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

По схеме?

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

cab ★★★★
()

Знаете, однажды я видел, как набирали программистов в одну очень серьезную команду. Нет, не для написания операционной системы или проги управления реактором ядерной станции... В обычную команду, пишущую АСУПы для крупных и средних предприятий. Так вот... Начальник группы разработки дал задачу десятку претендентов: «Десять минут за клавиатурой для написания текстового редактора. Среда разработки - любая. Двадцать минут на размышления и совещания друг с другом». Было прикольно наблюдать, как отличники вузов спорили про типы переменных, методы реализации алгоритмов и прочий оффтоп. В итоге выиграли три человека. Один парень взял дэльфу, кинул на форму TMemo и сказал: «Остальное согласуем с клиентом». Начальник улыбнулся, сказал «принят», а остальным: «вот такие люди берут рынок! Остальные умничают в хвосте. Поэтому, остальные в свои десять минут дорабатывают его проект». Другой парень добавил к проекту три функции: Memo.Lines.LoadFromFile(Path), Memo.Lines.SaveToFile(path) и Memo.Lines.Clear, А третий растянул TImage на окно под TMemo и загрузил в него кусок картинки Ночной ковыль из стандартных обоев Windows XP. Остальные пошли домой :) ---- Так вот, по существу обсуждаемой темы: почитал ленту и пришел к следующим выводам 1) Lazarus растёт и берет рынок. 2) Большинство постов здесь - фрагментарно-умный оффтоп, не имеющий практической ценности, равно как и его авторы. 3) Программист - это не тот, кто пишет программы, а тот, чьи программы работают. А язык программирования формирует мышление, и по образу мыслей четко можно сказать, кто на чём кодит. Большинство здесь не кодит ни на чём, и не будет кодить... просто людям часто свойственно заниматься не своим делом. Толковому меньшинству привет и с пятнеццой :)))))

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

>begin и and глазами парсятся быстрее чем { и }

фига-с-два, это раз... два - программер не читатель, программер - писатель! а пишется оно быстрее :)

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

>Один парень взял дэльфу, кинул на форму TMemo и сказал: "Остальное согласуем с клиентом". Начальник улыбнулся, сказал "принят", а остальным: "вот такие люди берут рынок!

быдлоподелко детектед... остальные небось сами сбежали после таких "умных" заяв... я бы сбежал

>Так вот, по существу обсуждаемой темы: почитал ленту

ага, почитай ещё карту...

>1) Lazarus растёт и берет рынок.

быгыгы.... незаметно так, совсем незаметно :)

>2) Большинство постов здесь - фрагментарно-умный оффтоп, не имеющий практической ценности, равно как и его авторы.

и тебе спасибо за 2 копейки в общую кучу

>3) Программист - это не тот, кто пишет программы, а тот, чьи программы работают.

йоптыверивел, вот оно как оказывается :) а я то и не знал....

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

> кинул на форму TMemo и сказал: "Остальное согласуем с клиентом"

делфийское TMemo -- совсем не текстовый редактор, если что.

текстовые редакторы это vim и emacs, например

> Начальник улыбнулся, сказал "принят", а остальным: "вот такие люди берут рынок! Остальные умничают в хвосте."

расскажи это Полу Грему, ага.

а из-за таких вот "начальников" россия теперь и плетется в хвосте ИТ-индустрии

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

> Один парень взял дэльфу, кинул на форму TMemo и сказал: "Остальное согласуем с клиентом". Начальник улыбнулся, сказал "принят", а остальным: "вот такие люди берут рынок! Остальные умничают в хвосте. Поэтому, остальные в свои десять минут дорабатывают его проект".

и вот еще: если уж и приводить быдлопримеры, то нужно сказать, что MSVS 2008 содержит компонент, интегрирующий MS Office в форму, так что твоё TMemo тихо посасывает в сторонке

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

> Один парень взял дэльфу, кинул на форму TMemo и сказал: "Остальное согласуем с клиентом". Начальник улыбнулся, сказал "принят", а остальным: "вот такие люди берут рынок! Остальные умничают в хвосте.

Ужость какая... То верно был конкурс на должность манагера в отдел продаж, ты спутал.

> Программист - это не тот, кто пишет программы, а тот, чьи программы работают.

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

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

> фига-с-два, это раз... два - программер не читатель, программер - писатель! а пишется оно быстрее

Нет, дружище, такие чукчи-нечитатели в IT не нужны. Так как биореактор на профилактике, отправляю тебя пока что в перл-гетто на перевоспитание.

ЗЫ: нашли то же мне, из-за чего спорить - begin end им мешает уже программировать, тьфу на вас! Паскаль сосёт вовсе не из-за этой фигни.

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

> ЗЫ: нашли то же мне, из-за чего спорить - begin end им мешает уже программировать, тьфу на вас! Паскаль сосёт вовсе не из-за этой фигни.

ясен хрен не из-за этой, но эта делает его еще более унылым =)

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

>> фига-с-два, это раз... два - программер не читатель, программер - писатель! а пишется оно быстрее

>Нет, дружище, такие чукчи-нечитатели в IT не нужны.

Долдон??? Или программистам уже за чтение кода зарплату платят?

>Так как биореактор на профилактике,

после тебя никак не восстановится видать

>ЗЫ: нашли то же мне, из-за чего спорить - begin end им мешает уже программировать, тьфу на вас!

и ветром обратно на тебя

>Паскаль сосёт вовсе не из-за этой фигни.

в том числе и из за этой

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

>begin и and глазами парсятся быстрее чем { и }

ну это да, но операторные скобки begin..end ничуть не лучше {} или лисповых (), всё равно для вложенных конструкций надо считать скобки begin..end
Гораздо лучше конструкция как в Modula-2:
PROCEDURE blabla(..) .. END blablabla; IF .. THEN .. END IF;
или как в Dylan define method blablabla .. end или end method или end method blablabla, if .. then .. else .. elsif .. end if; :
есть чётко выделяемое визуально "закрытие блока", но нет специального ключ. слова вроде begin для открытия блока, блок открывается сразу конкретной конструкцией, а закрывается либо общим end либо подписанным именем блока end method blablabla либо подписанным классом блока end method;

>>2. Интеграция с Native OS API.


>А какие собственно проблемы? Или ты про WinApi? Там про проблемы слышал..


соглашение вызовов в ABI в C stdcall cdecl/fastcall , в паскале *сюрпрайз* pascal / fastcall . Хотя раз в Сишном WINAPI смогли сделать pascal, можно и в паскале сделать cdecl :)
Интересно, научился ли этому FPC

Хотя это ещё полдела: получится, что биндинги С API в pascal юниты надо писать руками, обновлять, когда ABI сломается, итп.. А их *не надо* писать руками, на это должна быть умная тулза, которая сама сгенерирует обёртку на паскале по заданным сишным хедерам.

> >3. Те проблемы, из-за которых Вирт изобрёл Модулу и Оберон.


>Большей частью решены в современных диалектах. В виртовском паскале даже меток не было ибо нефиг


Я про модульность с экспортируемыми символами и расширяемые типы-записи, годный ADT -- а ты про что? Про какие проблемы?

Современный паскаль да, довольно низкоуровневый. Или вот, читаем доку по Nimrod, вроде уже морально подготовились видеть встраиваемый скриптовый язык с питоновым синтаксисом, и на тебе: cast, два типа указателей ref/ptr traced/untraced с ручным выделением памяти/GC, тип Variant, примеры type TObject = .. в доке :))


>А они нужны "простому трудяге"? Если нужно метапрограммирование сразу с функциональных языков начинать надо


Хороший вопрос. Я бы сказал, что метапрограммирование нужно любому трудяге, начиная с макроассемблера и препроцессора Си. Функциональщина да, помогает (см. пример с факториалом). Опять же, пример с генерацией *.dfm файлов с формочками по декларативному описанию -- вполне себе трудовой.
Интересно, почему метапрограммирование добавили в С++ (шаблоны), и именно таким громоздким способом. Можно же было чище сделать -- императивное ядро, функциональный toolkit, и API работы с AST. Вот MetaLua например, или те же AST макросы в Nimrod.

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

>и вот еще: если уж и приводить быдлопримеры, то нужно сказать, что MSVS 2008 содержит компонент, интегрирующий MS Office в форму, так что твоё TMemo тихо посасывает в сторонке

как будто все позабыли про RichEdit и OLE/ActiveX. Ворд можно засунуть в форму и без всяких там компонентов.

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

>Начальник группы разработки дал задачу десятку претендентов: "Десять минут за клавиатурой для написания текстового редактора. Среда разработки - любая. Двадцать минут на размышления и совещания друг с другом".

мда.. А если Равшанам с Джамшутом дать комадну "построить дом", они тоже сразу начнут строить? Или уточнят требования: какой дом, для чего, как план типовой или свободная планировка или под заказ, какие нужны коммуникации (мощность заложить ,например, -- как обычно, с двух подстанций, или свой дизель-генератор ставить), и т.п.

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

а если "среда разработки - любая", можно было взять Emacs и писать на emacs lisp :) ???

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

> Долдон??? Или программистам уже за чтение кода зарплату платят?

Быдло-студенота детектед. Подрасти сначала, малышка, а потом поговорим на тему "за что платят программистам".

>> Паскаль сосёт вовсе не из-за этой фигни.

> в том числе и из за этой

Давай давай, проявляй свою школьную натуру, синтаксисо-дрочер.

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

>соглашение вызовов в ABI в C stdcall cdecl/fastcall , в паскале *сюрпрайз* pascal / fastcall . Хотя раз в Сишном WINAPI смогли сделать pascal, можно и в паскале сделать cdecl :) Интересно, научился ли этому FPC

Это умел ещё древний BorlandPascal. Никаких проблем при работе с сишными библиотеками там нет.

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

Вопрос в трудоёмкости биндингов. Да, есть Gtk, OpenGL, directX, sqlite етц. Вопрос в том, сложно ли нагенерировать новых, а не писать руками. В идеале мы просто берём C или C++ с extern "C" хедеры, и получаем работающие биндинги.

anonymous
()

Бейсиковцы спорят о том, что круче - паскаль, или си... Ламера тупорылые с красными от стыда дипломами :) Этот спор закончен лет пять назад :))))) , а вы до сих пор тут... Идите учить информатику, продавцы помидоров... Вы тут явно где-то недалеко...

anonymous
()

Опа! Еще один герой китайских мультов по клаве бахнул! Цвет дипломов его напрягает, однако. Невтоптаца в пол, торрэро, чтоли? Успокойся, организм, не один ты тут при извилинах...

anonymous
()

Опа! Еще один герой китайских мультов по клаве бахнул! Цвет дипломов его напрягает, однако. Невтоптаца в пол, торрэро, чтоли? Успокойся, организм, не один ты тут при извилинах...

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

>Быдло-студенота детектед.

детектед, детектед...

>Давай давай, проявляй свою школьную натуру, синтаксисо-дрочер.

алсо быдлокодер детектед :)

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

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