LINUX.ORG.RU
ФорумTalks

вопрос c \ fpc. не религиозный.


0

0

пишу я себе на паскале и пишу (opengl в основном), ничего особо серъезного (серверные приложения, ОС и т.д.) не собираюсь писать.
всем меня паскаль устраивает и работой с памятью и с glut \ opengl.
программирование - не статья моих доходов, хотя и неплохо получается (demoscene кто знает).
и, собственно, вопрос - есть смысл перебираться на Си? я думаю особой трудности это не составит - но все же.

Ну... с учетом того что например в мане все описания функций приводятся именно как прототипы на С... То жить проще все-таки с С чем с Pascal, imho

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

как бы с чтением манов и книг проблем особых нет, мне особо не важно синтаксическое описание функций - мне важен алгоритм, тупо копировать \ вставлять из примеров как то не пытался.
хотя и проблем с чтением СИшных примеров не припомню, все же не hex :)

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

Ну скажем так... Там есть вещи с которыми живется легче и которые в Pascal если и были то корявые, типа указателей Но в любом случае переходс Pascal на C это проще чем на Prolog например

magellan
()

>и, собственно, вопрос - есть смысл перебираться на Си? я думаю особой трудности это не составит - но все же.

Есть, если всяких переполнений буферов не наделаешь.

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

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

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

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

Там просто вылезает Runtime Error, а не исполняется произвольный код. :)

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

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

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

>Ага, щазз. Произвольного кода лично не встречал, но случаи, когда выход за границу массива портил соседние переменные, наблюдал лично.

А в дебаг-режиме?

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

млять. вы задолбали. мало того что все вопросы уже в Talks приходится задавать, ибо никто по другим темам не ходит, так хоть флейм не разводите, в jabber`е пи...ите.

по существу в общем.

divenvrsk
() автор топика

>есть смысл перебираться на Си?

Есть, если не боишься отстрелить себе обе ноги веревкой

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

да причем здесь "боюсь" - смысл есть или нет?
или средств паскаля мне с головой хватит для таких целей?
или паскаль через пару лет остановится в своем развитии?
в таком разрезе=

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

Смысла - нет.

Целей у тебя, сколько я могу понять, особых нет.

Паскаль уже остановился, так что не страдай фигнёй.

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

Никто нигде не остановился. Указатели в паскале нормальные, учите матчасть. Копированием массивов в паскале занимается компилятор, там это можно делать простым присвоением, не занимаясь онанизмом с memcpy, выравниванием и контролем типизации вручную.

Стартеру топика. Если тебе под fpc хватает нужных библиотек - сиди и кодь на fpc в свое удовольствие. Единственное что там нехорошо - оптимизатор у него на одно ицо прихрамывал как я помню в свое время. Мож щас наладили уже...

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

> Никто нигде не остановился.

Покажь развитие.

> Указатели в паскале нормальные, учите матчасть.

Я ж говорю, что это тот же самый язык, что и C.

> Копированием массивов в паскале занимается компилятор, там это можно делать простым присвоением,

О да, охрененное преимущество. C плачет в уголке.

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

> Покажь развитие.

http://freepascal.org/news.var

http://freepascal.org/future.var

> О да, охрененное преимущество. C плачет в уголке.

Охрененное. Потому-что не надо помнить, что в одном массиве у тебя выравнивание на двойку а во втором на четверку просто потому-что ты в хидере забыл attribute packed прописать, а компилятор сжевал молча. Классический пример глюка c buffer underflow/overflow просто восхитительные на этом вылезает.

Более того, многие системные вещи на паскале делать намного удобнее чем на c, например адресоваться к одной и той же области памяти как к двум разным переменным, разных типов, не используя при этом указатели, фиктивные типы union и явное приведение типа, там очень изящно сделана работа со структурами в силу начичия оператора with, есть поддержка таких удобных вещей как множества перечисляемых типов. Паскаль - очень стройный и самодостаточный язык. Кому не хватает паскаля но очень не хочется заморачиваться на скользкие моменты - пишет на modula или ada.

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

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

И эти люди запрещают мне ковыраться пальцем в носу!

>изящно сделана работа со структурами в силу начичия оператора with

Который был проклят всеми, включая Вирта

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

> И эти люди запрещают мне ковыраться пальцем в носу!

Системные вещи всегда делаются на грани фола. Но компилятор за этой гранью следит лучше.

> Который был проклят всеми, включая Вирта

Любым средством пользоваться нужно вмеру. А сдуру некоторые и х%й ломают =)

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

> http://freepascal.org/news.var

Lazarus and FPC will be on the HCC in Utrecht, Netherlands in the HCC Pascal booth

Э-э-э... Это развитие?

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

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

> Потому-что не надо помнить, что в одном массиве у тебя выравнивание на двойку а во втором на четверку

Гыгыг. Почему я об этом могу вообще не думать, интересно?

> Более того, многие системные вещи на паскале делать намного удобнее чем на c, например...

Ну сам понимаешь, что это всё абсолютные копейки?

Ты мне лучше скажи - замыкания там до сих пор фальшивые?

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

Такая вещь может наблюдаться при операциях со стеком - то в чем Борланд преуспел (передача переменных в стеке) и похоже FPC унаследовал. Не скажу точно, эту тему еще не ковырял, но в остальном переход в BP на FPC не вызвал болезненных реакций организьма.

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

реальных доводов перехода - нет.
дискуссия на gamedev - опять же религиозна, как и здесь. писатели на Си - это круто, на паскале - ламо. а на практике оказывается, что горе писатели на Си (не все конечно, но многие, которые считают себя программерами) - не знают банальных вещей, а знают только синтаксис и пару-тройку команд базовых.
в общем, моей мнение - смысла нет. не вижу я ничего такого чего нельзя на fpc, а можно в си.
то что миллионы пишут на си, а немногие на паскале - вовсе и не довод. стадным чувстом как то не очень владею.
всем спасибо за некоторые объективные мнения.

divenvrsk
() автор топика

- Доктор, я жить буду?
- А смысл?


Что за вопросы, если паскалист до мозга костей, шкодь на паскале, если играешь в нео на си, пиши на нем, если хочется что-нибудь поучить, полистай, почитай книжку. Вроде, не должны доказывать ничего, чай не в суде. Linux for fun, хотя и тут есть варианты.


Представляют новую сотрудницу в офисе.
- Знакомтесь, это Лена, специалист по си плюс плюс.
Голос из-за монитора.
- Да... Сиси плюс плюс.;-)

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

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

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

>то в чем Борланд преуспел (передача переменных в стеке)

в делфях перменные передаются в регистрах.

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