Анонсирован (http://lazarus.freepascal.org/index.php/topic,15656.html) выход открытого кроссплатформенного компилятора Free Pascal 2.6.0 (http://freepascal.org/), совместимого с Borland Pascal 7, Delphi и Metrowerks Pascal. В новой версии расширена поддержка платформ и добавлены новые возможности языка, продолжающие развитие функциональности Delphi 7.
Основные новшества (http://wiki.freepascal.org/User_Changes_2.6.0):- Для Mac OS X и iOS реализована поддержка диалекта Objective-Pascal;- Расширены возможности генератора кода для платформы ARM: задействованы инструкции ARM VFPv2 и VFPv3 для вычислений с плавающей точкой, реализована поддержка Thumb-2;- Улучшена реализация режима совместимости с Delphi:
- Поддержка вложенных типов, переменных класса и локальных констант класса;- Реализация расширенного синтаксиса определения записей (пока без поддержки конструкторов);- Возможность использования счётчиков "(for..in)" в записях;- Поддержка helper-ов для классов и...
URL: http://freepascal.ru/news/20120101082859/
Новость: http://www.opennet.me/opennews/art.shtml?num=32710
Отлично. Наверное лучший первый язык для начинающих старшего возраста(подростки и юноши).
Знаю шестиклассников, которые пишут на Си. Зачем искусственно ограничивать детей убогим паскалём?
> > лучший первый язык для начинающих старшего возраста(подростки и юноши).
> Знаю шестиклассников, которые пишут на Си.Он не о шестиклассниках говорил, а, я так понимаю, о 10-11-классниках и студентах. Такое вот у нас образование, что шестиклассники способны на большее, чем студенты.
Студентам, в зависимости от специальности С дают либо во втором семестре 1 курса, либо в 1-вом второго. А в это время читают устройство 8086. Что-бы не писале на С как на бейсике. В Израиле примерно так-же - так Спольский пишет.
>Студентам, в зависимости от специальности С дают либо во втором семестре 1 курса, либо в 1-вом второго. А в это время читают устройство 8086. Что-бы не писале на С как на бейсике.В MIT давным-давно курс введения в программирование читается на питоне
http://ocw.mit.edu/courses/electrical-engineering-and-comput.../
Course Description
This subject is aimed at students with little or no programming experience. The class will use the Python™ programming language.ну и для computer science выбран тоже питон
http://cemerick.com/2009/03/24/why-mit-now-uses-python-inste.../
Why MIT now uses python instead of scheme for its undergraduate CS program
>В Израиле примерно так-же - так Спольский пишет.Ну Спольский это конечно да.
Python как бы не C, из-за которого разгорелась дискуссия. Или да?
> Python как бы не C, из-за которого разгорелась дискуссия. Или да?ну так там повыше заява
>Студентам, в зависимости от специальности С дают либо во втором семестре 1 курса, либо в 1-вом второго.
>не C, из-за которого разгорелась дискуссия. Или да?Ну какие там могут быть дискуссии в 2011 году о С? Но в главном вы правы - питон тоже не находка.
И я видел выпускников школы, писавших машинный код в .com файл. А вторая половина могла его ввести без редактора в Электронику МК-52. А в это время Кнут фигачил свой ТеХ на убогом паскале, без ТДД, ООП и прочего бреда, быплачивая более агрессивные премии за ошибки в нём, чем богатый Гугл. C - не самый выразительный язык, и не очень подходит в качестве первого языка ИМХО.
Опять кому-то не угодил один из языков программирования. Техноснобизм это, уважаемый.
Вполне себе жизнеспособный и применимый язык. Например, для написания интерфейсов и оболочек - достаточно развитой, и достаточно простой. Очень давно не работал с С, не знаю, как там сейчас с обработкой строк, но лет 10 назад использовать С для работы с текстовыми данными при наличии Perl или того же Pascal было сродни мазохизму.
На помню где точно, попалась как-то статья Никлауса Вирта по поводу ниши Паскаля именно в обучении. Так вот, Паскаль хорош своей понятностью, на уровне Бейсика, и структурированностью, как Си. Именно Паскаль с точки зрения дидактики является оптимальным выбором для начинающих. Потому как не всем с ходу понятно, для чего нужно передавать ссылку на переменную, а не саму переменную просто для чтения с клавиатуры и т.п.
>Так вот, Паскаль хорош своей понятностью, на уровне БейсикаНепонятно какие языки вы имеете в виду - но современный паскаль это современный паскаль и простое там это типа такого
type
generic TList<T> = class
Items: array of T;
procedure Add(Value: T);
end;implementation
procedure TList.Add(Value: T);
begin
SetLength(Items, Length(Items) + 1);
Items[Length(Items) - 1] := Value;
end;ну а современный бэйсик
Public Class classHolder(Of t)
Public Sub processNewItem(ByVal newItem As t)
Dim tempItem As t
' Insert code that processes an item of data type t.
End Sub
End Class>Потому как не всем с ходу понятно, для чего нужно передавать ссылку на переменную, а не саму переменную просто для чтения с клавиатуры и т.п.
в Ц нет никаких ссылок на переменные, есть только указатели, ссылки появились в ц++
Там даже есть 64-битный лазарус для виндовс :-)
уже очень давно.
>>> совместимого с Borland Pascal 7синтаксисом или еще и библиотеками?
Как там с графикой (ну то, что было BGI)?
>>>> совместимого с Borland Pascal 7
> синтаксисом или еще и библиотеками?
> Как там с графикой (ну то, что было BGI)?там со всем все нормально
http://www.freepascal.org/docs-html/rtl/graph/index.html
TP compatible unit to handle screen graphics.ну и
http://freeschool.altlinux.ru/?p=3884
только я не уверен что это очень нужно, там современных возможностей вполне хватает
Совместно с Lazarus дает возможность очень быстро писать надежные программы от демонов до разных ГУИ.
"быстро писать надежные программы" - а мы верим, мы вообще всем Ыкспертам верим :)
Уважаемый, не быстро, а ОЧЕНЬ быстро! Особенно это хорошо, когда программирование не основной вид занятия. Так, что, прежде чем иронизировать, оглянитесь вокруг, есть еще и другие сферы жизни, где приходиться периодически программировать.
Кто-нибудь использовал (или собирается) воспользоваться поддержкой Thumb в fp.Я просто как то не могу применений придумать этому.
> Кто-нибудь использовал (или собирается) воспользоваться поддержкой Thumb в fp.Я просто как то не могу применений придумать этому.для embedded естественно
http://wiki.freepascal.org/TARGET_Embedded
но это все еще только пилится
-currently only arm-embedded is supported
-supported controllers are currently limited to certain NXP LPC, ATMEL AT91, TI Stellaris and ST STM32F10x controllers
или вас конкретно Thumb интересует, ну это обосновывается так>С архитектурой ARM не совсем так. Грубо говоря, можно разделить все процессорные ядра, разработанные этой фирмой, на две большие группы: семейство Cortex-M (архитектура версий ARMv6-M и ARMv7-M), использующееся только для микроконтроллеров, причём начального уровня (ну, для 32-разрядных начального, конечно [:)] ), и всё остальное -- хоть древние ядра ARM7 (версия ARMv4), хоть новейшие Cortex-A, причём сюда входят как контроллеры, так и процессоры. "Все остальные" являются "настоящими" ARMами с единой системной архитектурой и системой команд (общая метода обработки прерываний, общий набор регистров, общий набор инструкций и т.п., просто более поздние версии архитектуры имеют всякие дополнения, отсутствовавшие у более ранних версий), поэтому здесь, говоря о компиляторе, некорректно делить по признаку контроллер/процессор: для них должен генерироваться одинаковый код, разница кроется лишь в аппаратуре управления памятью и периферии, что к трансляции никакого отношения не имеет. А вот Cortex-M, строго говоря, вообще нельзя считать ARMом: у них абсолютно иная системная архитектура (в частности, совсем по-другому обрабатываются прерывания) и отсутствует "родная" система команд ARM, реализована лишь Thumb или Thumb-2, но она имеется и у "нормальных" ARMов, начиная с версии ARMv4T, ну а более древние на рынке уже отсутствуют.
>Соответственно, чтобы транслятор годился для разработки программ для Cortex-M, от него требуется в обязательном порядке поддержка генерации кода для системы команд Thumb/Thumb-2, для всех остальных можно обойтись одной ARM, но намного лучше иметь обе, поскольку ARMовский код пожирает очень много памяти, а это неприятно, даже если сама память не является дефицитным ресурсом.
Это да, но зачем на паскале? :)
>Это да, но зачем на паскале? :)Ну например чтобы в 2 раза быстрее и в 3 раза меньше багов, чем на некоторых других языках.
Но за те же бабки ессно.:)
Плохому танцору....-)))
Если мозг есть то и на Паскале можно отличный софт писать, а если мозга нет, то на С++ пишут такое гуано, что писец...
А какой флейм на лоре по этому поводу развели ... (http://www.linux.org.ru/news/opensource/7205275)По сути - давно пишу для себя на freepascal всякие утилитки, которые и быстро надо сляпать, и кроссово (linux,windows), и чтоб еще работали на полной скорости, и чтоб багов всяких не было.
Правда, чистому C(gcc) со всеми оптимизациями freepascal по скорости сливает до 50% в худшем случае. Зато по всем совокупности параметров - хорош.
> Правда, чистому C(gcc) со всеми оптимизациями freepascal по скорости сливает до 50% в худшем случае.Ну так сколько народу (и за какие бабки) делает один, и сколько другой - пары десятков не наберется и реально в свободное время ( http://wiki.freepascal.org/Developer_pages ). А результат налицо.
А насчет мелких утилиток так кстати сам компилятор как раз пример того насколько и большие проекты эффективнее делать на нормальном языке. До того как все перешли на питон и жабоскрипт были работы где сравнивали с++ с адой (это тоже алголоподобный язык) - где то в 10 раз меньше багов для того же функционала. Что впрочем только сишников удивить может.