LINUX.ORG.RU

Почему не FreePascal+Lazarus?

 , ,


0

5

На паскале пишешь? Фу таким быть...

Почему не принято для Linux писать что-то на FreePascal? Да, язык немного менее гибкий, чем C/C++, более тяжеловатый синтаксис и begin end вместо скобочек кое-кого реально задалбывают. Но зато благодаря более развитой типизации и другим более безопасным вещам меньше шансов «выстрелить в ногу» при сохранении в тоже время и достаточной при необходимости низкоуровневости, чтобы писать даже системные вещи.

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

Да, есть некоторое отставание по таким возможностям, как всякие там лямбды, хотя в Delphi их добавляют, но не будем о Delphi. Вот положа руку на сердце, прям так жить без них нельзя в том же C++? Или лучше использовать для них Лисп, Haskell, OcaML и тп. а не скрещивать ежа с ужом, превращая язык в какого-то необозримого монстра, все возможности которого мало кто знает. При том, что в том же FreePascal/Delphi тип процедура/функция и object дают возможность совершать некоторые фукциональные трюки.

Стандарт? Да, стандарта нет. Но как будто на практике с этим сильно лучше у C++? Фактически крупные программы пишутся под конкретный компилятор и даже версию компилятора, на других могут быть сюрпризы даже на одной платформе, заранее положиться без тестирования, что оно соберется и будет себя также вести нельзя.

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

Блин... Ну какая делфи-7 в 2016 году?

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

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

Так и говорили - «клепатели формочек».

И шли в курилку, потому что «еще конпеляется» :)

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

Разговор был о делфи :) А лазарус это лазарус... Проект с делфи перетащить на лазарус, да еще и не под винду - огромная работа, которая может быть вполне соизмерима с написанием «с нуля»

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

Разложить всё на typedef'ы, а еще лучше на using'и - и будет то же самое в сях. Интерес был именно в одной многоэтажной конструкции.

Конечно, так писать не надо, но обсуждаем же синтаксис.

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

Такая что вчера родившихся

Малчег, я еще в 4ой делфи и билдера начинал ;)

А удивление мое очень просто объяснить... Оно 10 лет как ушло... Да, пользуются, но по большей части не легально (есть исключения, но они только подтверждают).

В 2006 году вышли продукты серии «турбо», которые позволяли легализоваться и дельфистам и билдеровцам. Они были с кривоватым IDE и с ограничениями и тяжелее, но зато позволяли использовать бесплатно.

На 7ке остались только виндузятники любители кряков и те кто не осилил перетащить свои проекты по разным причинам (это к тому как делфи-проекты замечательно поддерживаемы)

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

Малчег, я еще в 4ой делфи и билдера начинал ;)

А я в третьей. Понт зосчитан, «малчег» :) Энивей, пороть 4.2 про «тормозные дельфы» воистину может тот, кто ими не пользовался. А про семерку речь зашла лишь по той причине, что не так давно (крайней студией как раз была 2010 SP1) у нас был заказ на допилки для регистратора ценных бумаг — как раз бодренько перетаскиваемого на крайние дельфы с семерки. Занимаясь параллельно проектами сравнимых размеров на плюсах, нетрудно освежить воспоминания, что «тормознее» в плане сборки. Любители кряков? Бггг. «Корпоративная система мониторинга (не)легальных установок» — слыхал про такую? Да и норм. заказчики предоставляют лицухи на XE без вопросов.

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

Но то, что при прочих равных условиях код на паскале собирается заметно быстрее, чем на крестах - это вполне известный факт. Это одно из следствий (не самое, кстати, печальное) того, что в паскале есть модульность.

Понимаешь, теоретически я с тобой согласен - при прочих равных выигрыш в скорости мог бы быть. Хотя лично мне кажется что причиной тому не модули, а однопроходная компиляция. Но поскольку факторов влияющих на скорость компиляции много хотелось бы посмотреть на цифры отражающие реальное положение дел или по крайней мере узнать мнение людей не являющихся фанатиками одного из языков. Потому что условие «при прочих равных» тут явно не выполняется учитывая вылизанность средств разработки для С/С++ (сколько человекочасов разработки, да и денег) и явную сырость для паскаля. Лично мне показалось что даже Делфи от Эмброкадеро очень тормознутая во всех отношениях. Вот я и интересуюсь - где можно посмотреть результаты сравнения или что-то подобное? Если таковых нет и я прошу слишком много - ОК, готов допустить что ты прав и мне просто показалось. Потому что в принципе какая разница? Никакой. Ну давай считать что паскаль быстрее, мне реально от этого не холодно и не жарко ))

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

Поэтому, пока тот же GCCе откомпеляет,что-то более менее большое - можно успеть сходить покурить и выпить кофе, пока выхлоп в консоль идёт.

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

Чего? Буст как раз поддерживает разные версии языка и разные компиляторы. В какой-то степени, он «абстрагирует от платформы».

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

silver-bullet-bfg ★★
()
Ответ на: комментарий от DarkEld3r

При этом этот буст весит больше дотнета, а всякие говнокодеры его тянут только ради каких-нибудь контейнеров или псевдо-динамических-массивов. Это при условии, что пытающийся юзать - освоил профессию «установщик boost».

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

вот когда переползут, тогда и будет показатель.

Так какие-то части пишут уже на C#, людей переучивают и т.д. Всё легаси в один день выкинуть нельзя. Так что вполне себе показатель, в рамках одной фирмы.

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

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

Паскаль необходим для думающих индивидуумов
гуане, на гуане и какашках

Эталонный образец «думающего индивида».

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

Эталонный образец «думающего индивида».

Привет, эталонный урезанный образец человека!

Napilnik ★★★★★
()
Ответ на: комментарий от silver-bullet-bfg

Но паскаль хотя бы нужен, в отличии от С++.

Ааааааа, что ж ты так жжешь... Кому он нужен? Двум некрофилам? Для поддержки говнософта 90х?

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

Только буст стремительно перестает быть нужен :)

Потому что он въезжает в стандарт? Если нет, то давай жги про альтернативы тому же asio.

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

При этом этот буст весит больше дотнета,

Это набор библиотек, если что.

освоил профессию «установщик boost».

Ты какие-то ужасы рассказываешь.

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

Потому что он въезжает в стандарт?

Лямбды буста в стандарте в том самом укуренном виде, в каком они были в бусте? Или хотя бы «фореач»? Перестает быть нужен любой BOOST_WORKAROUND вырвиглазный п*ц через который выражены в бусте «похожие» концепции :) Вхатевер, таскдепендент, но этот твой асио тоже нужен далеко не всегда.

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)
Ответ на: комментарий от anonymous

Там хидеры с объектниками, которые весят в последнем релизе в полной коплектации: 130 с лишним метров в архиве. 4 дотнет весит 48 мегабайт.

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

Это ты щас чего сравнил, хедеры буста с рантаймом дотнета?

Net это только рантайм? А что делают over9000 классов?

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

А в чём разница?

В том, что это не одна монолитная библиотека и можно использовать только отдельные части. В том числе, не обязательно тащить все исходники.

DarkEld3r ★★★★★
()

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

bormant ★★★★★
()

1 для безопасности и простоты есть более подходящие языки, тот же C# (mono)

2 pascal морально устарел и годится только для учебных целей, ИМХО

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

до сих пор динамические массивы не умеет

Ненужно! Фортран 77 наше всё!

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

Ну, вот видишь. Дельфи тебе не даёт даже покурить и кофе попить. А GCC учитывает твои нужды и не торопит.

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

освоил профессию «установщик boost».

$ emerge boost

Не смог освоить одну комадну?

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

Тот же GTK, что и на всех остальных *nix платформах.

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

Классы в нете тоже не в одной монолитной библиотеке, если что. Они там в разных dll.

Отлично. Тогда какой вообще смысл сравнивать суммарный вес?

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

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

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

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

А против в основном понторезы, дальше хелло ворлда не уходившие

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

Для таких евангелистов С++, он будет нужен. Конечно. Будет нужен и сам цпп, и буст, и шаблоны. Но, как только таким как ты.

Так, а давай я перефразирую вопросы, чтобы не было у тебя ощущения, что ты что-то умеешь и знаешь. Кому нужны «кресты», окромя пары сотен фонатеков и полутора Ъ-линуксоидов? Вот скажи, почему я должен использовать для нативного софта С++, а не тот же Delphi? Сразу говорю - мне на лицензии, закрытость кода и т.п. - чхать, я деньги зарабатываю, а не теории с дивана излагаю.

silver-bullet-bfg ★★
()
Ответ на: комментарий от silver-bullet-bfg

Кому нужны «кресты», окромя пары сотен фонатеков и полутора Ъ-линуксоидов?

Из дому выходить не пробовал, школьничек?

Pavval ★★★★★
()
Ответ на: комментарий от silver-bullet-bfg

Кому нужны «кресты», окромя пары сотен фонатеков и полутора Ъ-линуксоидов?

Delusions of grandeur. Само собой, сообщение о ненужности C++ послано из браузера, написанного на C++.

trycatch ★★★
()
Ответ на: комментарий от silver-bullet-bfg

А на невменяемость конторы, убогую поддержку и мутные перспективы тебе тоже плевать? Тогда кукуруза ты диванная, а не «практик». Выбор практиков - Lazarus, а дельфи больше нет.

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

Какие-то конкретые претензии к gtk#, или так, попердеть вышел?

anonymous
()

просто исторически так сложилось, что больше пишут на Си, и он вроде как стал «стандартом». Если нравится Pascal, бери его и пиши на нём, всё остальное - это просто бурление.

xterro ★★★★★
()
Ответ на: комментарий от silver-bullet-bfg

Кому нужны «кресты», окромя пары сотен фонатеков и полутора Ъ-линуксоидов?

Ты сейчас это пишешь с ОС и браузера, написанных на паскале?

mbivanyuk ★★★★★
()

Это аналогично вопросам:

  • почему Python, а не Perl;
  • почему Android, а не Windows Mobile;
  • почему Git, а не Mercurial;
  • почему велосипед, а не мотоцикл;
  • и т.д..

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

iZEN ★★★★★
()

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

Если хочется обязательно паскалевский синтаксис, то изучи лучше Ada-2005. Там и настоящая строгая типизация и настоящая стандартизация связки язык-компилятор и никаких свистоперделок (во всяком случае до 2012 стандарта).

ksicom
()

язык норм

я пишу - проблем не имею :)

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

который до сих пор динамические массивы не умеет

--- это шутка? :)))

acukac
()
Ответ на: комментарий от silver-bullet-bfg

не ломают ничего при обновлении? Это точно не про java: там смена последней цыферки в версии JRE уже может приводить к непредсказуемым результатам.

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