LINUX.ORG.RU

Книжка о Free Pascal и Lazarus под открытой лицензией

 , , ,


1

1

23 декабря на сайте компании «Альт Линукс» появилась новость о выходе книги «Free Pascal и Lazarus: Учебник по программированию» под лицензией GNU FDL.

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

Страница с ссылкой на книгу.

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



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

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

>> Oberon-2, Modula — [...] Методы не принадлежат классам.

Это местный вариант обобщенных функций лиспа?


не, наврал. Не выходит обобщённых функций, мультиметодов. Мультметоды были бы, если бы вместо PROCEDURE (t:Pclass1) totalSum*():INTEGER; можно было бы написать PROCEDURE (t1:Pclass1, t2:Pclass2, i:INTEGER) totalSum*():INTEGER; ...
Такого не выходит: есть ограничения на ковариантность Pclass1 и Pclass2, расширение произвольных типов (базовых, тьюплов, и т.п.) не работает.
Если бы можно было добавить - был бы примерный аналог мультиметодов без метаобъектного протокола ( :before, :after, :around, EQL-специализаций и т.п.)

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

да, наверное, складывать нельзя. хотя бы среднее арифметическое брать. и все по той же причине - по сути ведь одно и то же =) ибо если сложить результаты С и С++, они обгонят жаву в 2 раза, что явно не есть правдой =) а если сложить и на два разделить - дык обгонят аж лисп да еще какую-то лобуду... =)

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

я имел ввиду что вся эта статистика - чепуха, хотябы потому что 1) по твоей последней ссылке рейтинг яваскрипта в разных поисковиках скачит чуть не от низу до верху: это что пользователи Powell's Books предпочитают ЯваСкрипту - ВижуалБейсик, а пользователи Del.icio.us считают ЯваСкрипт основным яп на планете? 2) рейтинг в поисковиках говорит не о популярности/нужности яп, а о количестве вопросов по яп, следовательно может свидетельствовать о том что С/С++ языки имеют не вполне очевидный синтаксис даже для тех кто их использует, или что много студентов гуглят учебники по этим языкам..

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

я и не говорил о популярности / нужности - я имел в виду практическое применение и академическую актуальность =)

а по поводу любой статистики кто-то из великих сказал: «существует три вида лжи - обычная, наглая и статистика» =)

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

>я имел в виду практическое применение и академическую актуальность =)

ну вот как раз о практическом применении эта статистика и не говорит =)

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

я бы сказал наоборот: чем больше яп применяется, тем чаще возникает необходимость получить информацию о тех или иных его возможностях... но эт так - мое субъективное мнение =)

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

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

Это хорошо обьясняет почему в совокупности С/С++ (а по законам математики надо все-таки считать сумму) обгоняют Яву в пару-тройку раз ))

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

по-моему, где-то лежит виртуальная машина КУМИР: http://lpm.org.ru/kumir2/

О! Он даже поддерживает процедуры и функции, спасибо большое за ссылку

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

А ещё был такой язык РАПИРА. У него с читаемостью вроде получше, чем у РАЯ было.

Не знал о таком проекте, впринципе РАПИРА выглядит как один из вариантов РАЯ (на который до сих пор нет ни стандартов ни соглашений, а есть только примеры на языке Ершова), более приближённый к синтаксису бэйсика, например убран нц (начало цикла), введён терминатор строки, что позволяет писать несколько комманд в одной строке, а одну комманду разбивать на несколько строк.

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

А РАПИРА - хорошая задумка, похож на язык 1С, для описания алгоритмов - самое то, хотя и, возможно, менее понятный новичку.

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

ух ты, даже ООП и IDE есть

Чот транслятор падает при первой же возможности :-/ А вот инфа о языке может оказаться очень полезной, для разработки своего базиса.

ladserg
()

Для обучения основам программирования в школе паскаль вполне сгодится. В вузах все же лучше использовать более современный язык. На роль такого языка вполне бы сгодился Eiffel (http://www.eiffel.com/). Очень строгий и продуманный язык, уже есть классическая книга «Объектно-ориентированное конструирование программных систем», вскоре появится перевод на русский язык книги специально для студентов «Touch of Class».

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

простите мне мою грубость, но это лишь бред и демагогия...

но брейнфак я люблю! =)

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

>Процедурное программирование _кончилось_. Не используется оно больше нигде в чистом виде.

Процедурное программирование - FORTRAN? C - не очень далеко ушел от ассемблера/модели прожевывания команд весьма примитивных CPU и т.п. железа?

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

>А где-нибудь можно слить исходники сабжа?

Хорошо было бы. Но на безрыбье и рак рыба, сконвертил в полуавтоматическом режиме в html. Это заняло примерно день: 442-1 страницы, области текста, картинок и таблиц на всех нужно как минимум проверить. Качайте)) http://letitbit.net/download/11253.186c0dc2aa4036e6de7526b795c4/freepascal_ht...

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

>Люди! Вы вообще читали этот учебник? Project1, Edit1, Label1, procedure TForm1.Button1Click(Sender :TObject ) ; -Ну разве можно такому учить? Все программы сделаны по принипу «магической кнопки». Да, супер, ученики прочтут и научаться делать циклы и читать из-писать в файл.

Отличную русскоязычную литературу по 5-7 борландпаскалю и книги Фаронова никто не отменял. Эта книга быстро натаскивает на новые фичи, поэтому она нужна.

и читать из-писать в файл

Всё просто, нужно ученикам дать задание поработать с файлом открытым как нетипизованный. А чтобы было веселее, обрабатывать строки текста равные объёму всей оперативы, вместе со свопом, каждая. Но тогда аргументация о вреде goto затрещит по всем швам. Нельзя давать таких задач, выполняя которые ученик в чём-то усомнится)))

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

>> поддержка ООП, исключений

Я скромно надеюсь, что это в школе обходят.


это я имел в виду уже ВУЗовский уровень.

В паскале вместо (в худшем случае --- кроме) указателей придется объяснять: var, setlength, high, разницу между разными видами массивов, «почему массивы хоть с трёх и по любому ordinal, а динамические от нуля», «почему передача массива не как var карасется расстрелом», «почему не надо делать SetLenght +1» и так далее.


опять же проблемы надуманы. массивы в object free pascal _всегда_ передаются по ссылке. да и вообще все «составные» типы передаются по ссылке.
да и в общем все эти вопросы спокойно понимаются на уровне логики.

Кстати интересно, авторы ЕГЭ про какой паскаль знают? %)


думаю, что некоторое подмножество turbo pascal 7.0.

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

>Интересно, Boost для FPC уже написали? в FPC есть дженерики

на freepascal.ru один человек уже начал лабать что-то в стиле Александреску.

шаблоны есть в object free pascal и современном delphi (IMHO в 2009 ввели).

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

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

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

>да какой Паскаль, какие Си с плюсами и без, вы че??? пускай долбят Дональда Кнута. все тома, прям со школы и до окончания ВУЗа! а то расплодилось быклокодерство... Книги Дональда Кнута явно не для школьников.

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

> А РАПИРА - хорошая задумка, похож на язык 1С

/0

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

> размерность типа string всё так же 255 символов

Из криокамеры давно-то давно вылез? Строка в 255 символов была актуальна до выхода ObjectPascal, а это год где-то 1997-98 ЕМНИП. Если не использовал Паскаль, то так и пиши - нечего лужи газифицировать.

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

> На роль такого языка вполне бы сгодился Eiffel (http://www.eiffel.com/).

Его нет в репах, у него нет свободно распространяемой реализации и т.д.

Вывод: лучше уж С.

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

Обязательный верхний регистр ключевых слов? Я начинаю любить яву за красоту.

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

>По моему, школьникам, LOGO или РАЯ более чем достаточно.

А по-моему, школьников не нужно считать идиотами. Лого за 5 минут делается как eDSL на любом *нормальном* языке.

ЗЫ: А язык РАЯ, это стеб над языком АДА?

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

> пускай преподы сами решают, давать примеры в консоли или в окнах.

По-хорошему, нужно и то, и другое.

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

> ЗЫ: А язык РАЯ, это стеб над языком АДА?

Возможно, покойный академик Ершов что-то такое и имел в виду. Спросить больше не у кого. Но официальная расшифровка - «Русский алгоритмический язык» (там ключевые слова на основе русского языка были).

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

>кстати есть ещё одна книга/учебник по fpc/lzarus на русском языке. мне даже кажется что она получше, чем указанная в теме. Вот адрес страницы автора (там же можно и скачать) http://mansurov-oshtu.ucoz.ru/

Эта книга сверстана вырвиглазно... по крайней мере из оффтопика, под линуксом дома проверю.

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

Читаю сейчас статью Ершова «Алгоритмический язык в школьном курсе основ информатики и вычислительной техники». Боже! Статья написанная на русской печатной машинке со вставкой отсутствующих символов ручкой, про язык программирования, предназначенный для обучения программированию без использования компьютеров... 85-й год. Первые два источника - газета «Правда». От такого Сюрреализма сам Дали плачет от зависти.

Macil ★★★★★
()

> 23 декабря на сайте компании «Альт Линукс» появилась новость о выходе книги «Free Pascal и Lazarus: Учебник по программированию» под лицензией GNU FDL.

Цензурных слов не хватает. Не прошло и 10 лет как выпустили подобную книгу. Господа энтузиасты СПО, если будете двигаться вперед такими черепашьими темпами - мелкософт всегда будет впереди вас на 10-100 и более шагов.

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

Ональная боль неосилятора окрыляет!

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

> РАПИРА - хорошая задумка, похож на язык 1С

будешь смеяться, но таких языков с русским синтаксисом, «похожих на 1С» — вагон и маленькая тележка. Где-то в районе языка Глагол была ссылка на форум языков с русским синтаксисом.

На язык 1С похожи: РАЯ, РАПИРА (но есть кортежи, массивы, динамическая типизация), БлекБокс компонентный Паскаль (см. сборку для школ с проекта информатика21: русские ключевые слова) (но есть модули, динамическая загрузка/выгрузка, компоненты, ООП, статическая типизация), Афина (поделка субд приложения навроде дельфи, русский синтаксис, MIDAS/TDbGrid/SQL, сервер приложений, ЕМНИП), СБиС++ (макроязык вроде 1с, интерпретатор), 2С gpl (язык, написанный сам на себе, вроде смоллтока)

И ещё много вариантов.

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

>В Component Pascal нельзя расширять базовые классы вроде INTEGER, а в Go — можно, потому что интерфейсы не привязаны к типам.

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

anonymous
()

wow, еще пара сообщений и новость о книжке по паскалику будет более обсуждаемой, чем ядро дебиана.

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

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

И чего?

Человек реально глядел в будущее и старался готовить к этому будущему школьников. В 85-м году практически единственным компьютером, доступным школьнику, был программируемый калькулятор с его незабываемыми машинными кодами (то, что мой класс на кафедру к ЭВМ водили - это было скорее исключение, чем правило). Чуть позже появились РК-86, ещё чуть позже - Спектрумы.

Курс информатики так и был составлен. 9 класс - алгоритмика на РАЯ по книжке. 10 класс - Бейсик на компьютере там, где это возможно.

написанная на русской печатной машинке

Кстати, компьютер как средство подготовки текстов был осмыслен довольно-таки поздно, на него очень долго смотрели именно как на программируемый калькулятор (в лучшем случае - как на БД). И даже когда программы редактирования и вёрстки начали потихоньку распространяться, революционность их распространения была осознана далеко не сразу. Я вот недавно нашёл «Науку и жизнь» второй половины 80-х, когда уже там была и «Школа информатики» и многое другое... Так вот, там была статья про современную типографию с компьютерами. Автор увлечённо рассказывает, как в будущем машинистки будут вводить принесённые журналистами материалы в ЭВМ, как потом всё это будет автоматизированно обрабатываться... Но даже просвещённый автор не додумался, что у журналиста будет своя персональная ЭВМ, и необходимость в машинистках для «первичного» набора просто отпадёт. Всё радикально изменилось через каких-то 3-4 года.

Очень легко судить о прошлом с колокольни настоящего...

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

> не нашел достоверного источника о том, что MS Windows 1.0? анонсированная в 1983м году была написана на Pascal.

Достоверно известно, что до последних 16-разрядных версий у функций Windows API использовалось соглашение Pascal. Только потом его на stdcall заменили. Наверное, это как раз наследие первых версий...

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

> Читаю сейчас статью Ершова «Алгоритмический язык в школьном курсе основ информатики и вычислительной техники».

В корень надо смотреть. Ершов загубил производство ЭВМ и написание системного софта в СССР (хотел как лучше, получилось как обычно). Остальное фигня.

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

> Кстати, компьютер как средство подготовки текстов был осмыслен довольно-таки поздно,

В 85 году в США уже использовали ТeX, разве нет?

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

>Человек реально глядел в будущее и старался готовить к этому будущему школьников.

Я не про это. Я про сюрреализм ситуации... И особенно про «Правду» в первых двух источниках.

компьютер как средство подготовки текстов был осмыслен довольно-таки поздно


Да, в принице. «Современный» TeX появился в 89-м году. TeX82 был 7-ми бытным... И даже дело не в битности и отсутствии локализации. Как потом это дело печатать-то? Фотонабором только, да еще не каждая фотонаборная машина подойдет. Русские цифровые шрифты на компах появились много позже...

Да, я понимаю, что в те времена хранить тексты на компе было крайне сложно... Да и печатать... Тащить на вечнораздолбанное АЦПУ.

Но вот какая штука. Именно в то время в MIT'е полным ходом шел проект Athena. И вот это страшно... То что у нас до сих пор смотрят на ЭВМ исключительно с позиции вычислительной математики.

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

В корень надо смотреть. Ершов загубил производство ЭВМ и написание системного софта в СССР (хотел как лучше, получилось как обычно). Остальное фигня.

А можно поподробнее, а то я пропустил этот отрезок истории?

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

> То что у нас до сих пор смотрят на ЭВМ исключительно с позиции вычислительной математики.

Ну «до сих пор» - это загнули. Сейчас ударились в другую крайность, когда главными программами на компе считаются Word и IE. Если комп не на работе, а дома у В.Пупкина, Word заменяется на Wow, Stalker, etc. Вычислительная математика мало кого интересует.

А ведь крайне интересная штуковина! Эх, мне бы мой Q8200 20 лет назад, когда я моделировал фильтры Баттерворта на 8-разрядном «Партнёре»! Да что там Q8200 - первого пня бы хватило с лихвой! (Удаляется в коридор старчески побрюзжать.)

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

>>Да, а средства на переобучение учителей информатики ты из своего кармана будешь выделять?

Мне как IT-профессионалу...


Бу-га-га! :))) Ламеришко, предлагающий изучать МЛ в школе скромен не по годам! :)
Изучение ещё одного ЯП - лишь +100 к ЧСВ, до профи тут далеко.

matumba ★★★★★
()

Книга категорически нужна, как и Паскаль. Почему именно эта? Да потому что описывает не убогий паскакаль 70-ых, а современный FP. То есть те, кто его изучат, не будут после обучения разочарованно плеваться «изучили какую-то плесень, а ничего РЕАЛЬНОГО написать нельзя!». И вдвойне хорошо, что это книга по бесплатному паскалю - больше не нужно ставить крякнутый Дельфи (это касается и преподов!). Вобщем, начинание более, чем позитивное.

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

>Вычислительная математика мало кого интересует.

Ну, еще остались заповедники, где софт называют «математикой» ;) И стратегия обучения студентов, вроде бы как не поменялась.

А ведь крайне интересная штуковина!


Да чего уж там ;) Хотя бы обычный АРМ. Знаешь, кто-то сказал про iPad, если бы у меня в детстве была такая штуковина, я никогда бы не начал программировать...

Ладно, вон допилят GA144, будет еще та игрушка. И для школьников и для студентов и для бородатых дядек ;)

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

>Книга категорически нужна, как и Паскаль. Почему именно эта? Да потому что описывает не убогий паскакаль 70-ых, а современный FP. То есть те, кто его изучат, не будут после обучения разочарованно плеваться «изучили какую-то плесень, а ничего РЕАЛЬНОГО написать нельзя!». И вдвойне хорошо, что это книга по бесплатному паскалю - больше не нужно ставить крякнутый Дельфи (это касается и преподов!). Вобщем, начинание более, чем позитивное.

+1024! Полностью солидарен.

Amuser
() автор топика
Ответ на: комментарий от ladserg

http://www.upweek.ru/edinaya-seriya.html

Одно из видений вопроса.

Кроме того:

А что Лев Тимофеевич участвовал в числе дающих дорогу ЕС ЭВМ - я и не знал... Знал, что А.П.Ершов тоже в этой чудаковатой группе был... Мы с ним имели долгий и безрезультатный спор по поводу целесообразности использования в языке «Альфа» - расширение Алгола - русскоязычных служебных слов: начало, конец, выполнить, цикл... Он был уверен, что это облегчает усвоение языка носителям русского языка. А я настаивал, что концепции программирования настолько более сложны, чем запомнить несколько стандартных международных слов - что нет смысла ломать стереотипы... Дело доходило до смешного - у них на ВЦ СО АН была своя версия моего любимого языка Лисп... ну там - CAR - CDR - CONS... Так он заставил своих девчат перевести их на русский, и получилось: ГОЛОВА, ХВОСТ, ОБЪЕДИНИТЬ. Девчата оказались с юмором, и диагностику непонятного затыка выдавали в виде: «Куда ведешь, тропинка милая?»

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