Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: вышел в свет PMP-pascal v1.2
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > PIC
_Pasha
Привет всем, кто следит за этой софтиной.
К моменту написания поста уже скачал, но еще не разбирался.
В общем, предлагаю почесать клавой на тему хороший/плохой паскаль. Заодно и договориться, какие тесты для него насочинять. Уж очень мне ндравиццо это задумко.
страница скачивания
oll
Спасибо поглядел, попровал примеры - вроде неплохой продукт. Попробую использовать в ближашем проекте.
Constantka
да? может тогда просветите какие у него преимущества над С ?
oll
Цитата(Короткова Светлана @ Sep 16 2008, 17:59) *
да? может тогда просветите какие у него преимущества над С ?

Для меня, главное преимущество - бесплатность.
Так же (повторяю - для меня) немаловажно, то что в PMP код паскаля преобразуется в ассемблерный код, который компилируется стандартным ассемблером Mplab. Мне, как заядлому ассемблерщику, это удобно для ковыряния в ассемблерном коде, отладке.
Насчет что лучше Си, Паскаль, Бейсик - мне больше нравится Си, хотя использую и Паскаль (Delphi).
Constantka
тоесть преимуществ с точки зрения возможностей языка нет?
может всё дело во вкусовых предпочтениях? wink.gif
oll
Цитата(Короткова Светлана @ Sep 17 2008, 00:40) *
тоесть преимуществ с точки зрения возможностей языка нет?
может всё дело во вкусовых предпочтениях? wink.gif

Преимуществ - абсолютно никаких (кроме тех, что перечислил выше).
А насчет "вкусовых предпочтений" - пишу в основном (для 12/16 пиков) на ассемблере.
DSIoffe
Цитата
может всё дело во вкусовых предпочтениях?

Имхо, дело в характере программиста. Если человек любит всё раскладывать по полочкам, ему приятнее Паскаль, а если любит быстро получать результат, то Си. Я подозреваю, что поэтому Си распространён больше: в молодости второй вариант встречается гораздо чаще, а потом люди привыкают.
Мне больше нравится Паскаль, если надо наваять программу, пишу в Delphi.
_Pasha
Цитата(Короткова Светлана @ Sep 16 2008, 22:40) *
тоесть преимуществ с точки зрения возможностей языка нет?
может всё дело во вкусовых предпочтениях? wink.gif

Все равно, при всей похожести концепций, паскаль и С - две разных планеты. И мне до сих пор кажется, что вероятность накосячить в паскале существенно ниже. Были бы умные компилеры.... Под эгидой FPC... Размечтался, короче.smile.gif
zltigo
Цитата(_Pasha @ Sep 29 2008, 17:36) *
И мне до сих пор кажется...

Когда кажется, креститься надо.
Цитата
Если человек любит всё раскладывать по полочкам,

Когда человеку кажется, что все, что нужно уже лежит на полочках и при этом он не хочет задумываться о том, чего ему будет стоить использование шаблонно-"безошибочных" действий-рецептов, когда ему кажется, что какого-то инструмента ну уж ему лично вполне достаточно на все случаи жизни, тогда он начинает закрыв глаза хвалить Паскаль.
_Pasha
Цитата(zltigo @ Sep 29 2008, 19:42) *
Когда человеку кажется, что все, что нужно уже лежит на полочках и при этом он не хочет задумываться о том, чего ему будет стоить использование шаблонно-"безошибочных" действий-рецептов...

Дык, ежт - это же идеал. Чтобы при всей шаблонности был еще и оптимайзер умный, способный утрясти все, что не влезет. А что - не симпатичная сабжевая программа? smile.gif
zltigo
Цитата(_Pasha @ Sep 29 2008, 18:03) *
А что - не симпатичная сабжевая программа? smile.gif

Лишняя сущность smile.gif.
Цитата
..и оптимайзер умный,

А это отдельный огромный труд, в отличии от транлятора с простого языка, который по нынешним временам тянет на курсовик, трудоемкость его огромна и именно по этому параметру ныне нужно оценивать качество компиляторов.
DSIoffe
Цитата("zltigo")
Когда человеку кажется, что все, что нужно уже лежит на полочках и при этом он не хочет задумываться о том, чего ему будет стоить использование шаблонно-"безошибочных" действий-рецептов, когда ему кажется, что какого-то инструмента ну уж ему лично вполне достаточно на все случаи жизни, тогда он начинает закрыв глаза хвалить Паскаль.

Ну вот, затоптал sad.gif
Я только про форму написал, не за жизнь. Паскаль сам по себе не предполагает ни готовых рецептов, ни умения жить...
zltigo
Цитата(DSIoffe @ Sep 30 2008, 13:42) *
Ну вот, затоптал sad.gif

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

Предполагает sad.gif многое реализовано, как "делай так", а тут мы тебе дадим ложку на все случаи жизни вместо вилки и ножа - и кушать можно и не поранишся... Потом надо эти ограничения обходить для реальной работы, а не для сильно формализированного описания алгоритмов, и получаются, например, борландовские продукты нашпигованные `заплатками` и`рецептами` по вкусу производителя....
_Pasha
Цитата(zltigo @ Sep 30 2008, 16:39) *
Просто Паскаль используют слишком часто, как первый учебный язык

Таки да! Он ведь изначально позиционировался как средство обучения практическому программированию. Так и осталось.
zltigo
Цитата(_Pasha @ Sep 30 2008, 15:45) *
как средство обучения практическому программированию.

как средство обучения практическому теоретическому абстрактно-алгоритмическому программированию. Дальше попытались использовать эту базу для практического программирования. Вышло плохо, практически простота и изящество исходного языка была вывернута наизнанку. В дальнейшим "навороты" сам Автор попытался реализовать в Modula->Oberon а последователи в Ada. Получилось странновато, а в случае Ada жутко и громоздко.
В результате для универсального программированя С/C++ для более абстрактного Java-образные (как де-факто наследники идей Вирта).
DSIoffe
Цитата("zltigo")
многое реализовано, как "делай так", а тут мы тебе дадим ложку на все случаи жизни вместо вилки и ножа - и кушать можно и не поранишся... Потом надо эти ограничения обходить для реальной работы, а не для сильно формализированного описания алгоритмов,

Надо же. А у меня от писания на Паскале создаётся впечатление, что получится всё, что потребуется. Не помню, чтобы я что-нибудь обходил. А что там надо обходить? Язык очень близок к естественному, получается красиво (хотя о вкусах не спорят smile.gif)
Когда мне как-то потребовалось вникнуть в чужие исходники на Си, я их переформатировал, чтобы было похоже на Паскаль. Почти получилось.
Цитата
Вышло плохо, практически простота и изящество исходного языка была вывернута наизнанку.

А что именно вышло плохо? Где наизнанку? Когда я после рисования схем что-то пишу в Delphi, просто-таки душа радуется.
Perepic
Цитата(DSIoffe @ Oct 1 2008, 11:36) *
А что именно вышло плохо? Где наизнанку? Когда я после рисования схем что-то пишу в Delphi, просто-таки душа радуется.

Не к Паскалю, но к продуктам Борладна.
Как-то еще в универе я разбирался с рисованием иконочек на кнопках. Понятно, что кнопка может быть Disabled, соотв. иконка должна стать серо-белой, "выпуклой". Так вот я долго искал как эту фичу можно сделать, хотел подглядеть как в библиотеках Борладна реализовано. Оказалось, они хранят тупо 2 иконки. Плное разочарование. Вобщем, оказалось после непродолжительного поиска, что в WinAPI усть функция, кот переделывают обычную иконку в эту самую Disabled. Все изящно и красиво. Вот только Борланд до сих пор так и использует либы с BitmapButtons, где хранится 2 иконки для каждой кнопки. Вот такое расточительство.

А по поводу ограничений паскаля: как насчет параметров функций со значениями по умолчанию, ф-ий с переменным к-вом параметров, перегрузки операторов. Я вот частеньков коде пользую "volatile". Есть аналогичное в паскале?
DSIoffe
Цитата("Perepic")
Не к Паскалю, но к продуктам Борладна.

Все мы не без недостатков...
А сейчас можно начать перечислять достоинства smile.gif
GAS
Цитата(Perepic @ Oct 10 2008, 11:37) *
А по поводу ограничений паскаля: как насчет параметров функций со значениями по умолчанию
Не все так плохо у "Борладна" вроде Delphi позволяет использовать функции WinAPI да и параметры функций со значениями по умолчанию
FUNCTION RestAcc( sLS : String; dDat : TDateTime; lRej : Boolean = True; lCur : Boolean = True ) : Boolean;
kernel
Цитата
А по поводу ограничений паскаля: как насчет параметров функций со значениями по умолчанию, ф-ий с переменным к-вом параметров, перегрузки операторов. Я вот частеньков коде пользую "volatile". Есть аналогичное в паскале?

Странные люди бывают... Если человек плохо знает или вообще не знает Delphi, то он ругает возможности языка, а не свое не_знание языка. PS: все вышеописанное давно уже есть в Delphi...
_Pasha
Цитата(kernel @ Nov 2 2008, 10:43) *
Если человек плохо знает или вообще не знает Delphi, то он ругает возможности языка

+1
Причем, топик про совсем другой Паскаль, а ругает Delphi <=6 smile.gif
И про volatile понравилось - ну кто ж виноват, что в сях оптимайзер живет своей жизнью... smile.gif
zltigo
Цитата(_Pasha @ Nov 3 2008, 22:36) *
Причем, топик про совсем другой Паскаль, а ругает Delphi <=6 smile.gif

Все это при том, что слово "Паскаль" на самом деле не значит практически ничего sad.gif. И это есть самая главная беда кучки компиляторов авторы которых пытаются спекулировать на слове "Паскаль" и при этом вынужденно обвешивающие изначальный образцово-учебно-абстрактный Паскаль всевозможными примочками, дабы получить хоть сколь-нибудь пригодный к практическому применению компилятор.
Цитата
И про volatile понравилось - ну кто ж виноват, что в сях оптимайзер живет своей жизнью... smile.gif

Глупость изрекли. Жаль, что не понимаете sad.gif.
1.Компиляторы НЕ ОПТИМИЗИРУЮЩИЕ работу с глобальными переменными и постоянно обращающиеся к медленной памяти и еще более медленной периферии есть дерьмо не пригодное для нормального использования.
2.Любой ОПТИМИЗИРУЮЩИЙ компилятор будучи хоть семи пядей во лбу не способен без подсказки оптимизировать работу с переменными, которые изменяются не по его воле.
3.Бездумное массовое использование volatile есть первейший признак абюсолютной безграмотности.
DSIoffe
Цитата("zltigo")
И это есть самая главная беда кучки компиляторов авторы которых пытаются спекулировать на слове "Паскаль" и при этом вынужденно обвешивающие изначальный образцово-учебно-абстрактный Паскаль всевозможными примочками, дабы получить хоть сколь-нибудь пригодный к практическому применению компилятор.

Я бы добавил - жалкой кучки smile.gif Будь я на Вашем месте, конечно.
Авторы Delphi спекулируют на слове "Паскаль"? Несправедливо всё это, личное отношение, имхо. smile.gif Терминология попахивает религиозной войной. Нет чтобы поговорить об основных идеях, сравнить их...
zltigo
Цитата(DSIoffe @ Nov 5 2008, 13:14) *
Авторы Delphi спекулируют на слове "Паскаль"?

Да, поскольку это начиналось как Борланд Паскаль. Много позже когда припарки превзошли все границы разумного и затмили собой не только язык, но и собственно программирование (дайте мне "компонент".....) появились собственное имя, но родство с Паскалем поминают всегда.
DSIoffe
Ох, не любите Вы Паскаль! А я люблю!
Наверное, из-за подобных наездов теперь язык программирования, используемый в Delphi, теперь тоже называют Delphi.
14 операторов исходного Бейсика тоже нельзя использовать в голом виде, как и виртовский Паскаль. Бейсик тоже ничего не значит? За Си не скажу, не знаю smile.gif
Уже давно язык и система программирования, в которой он используется - это разные вещи. В последних борландовских огромных изделиях в одной системе можно работать на нескольких языках одновременно.
А в этой теме, насколько я понимаю, речь идёт о языке.
zltigo
Цитата(DSIoffe @ Nov 5 2008, 15:23) *
А в этой теме, насколько я понимаю, речь идёт о языке.

Именно, именно о языке который уже практически ничего общего с некими монстром, который сейчас Вы назвали "системой программирования" от Борланд уже не имет. Любой другой "Паскаль" на самом деле тоже только несколько похож на прародителя. И в этом есть печальное фундаментальное отличие от стандартизированного Си для которого тоже, конечно, разные творцы, да и тот-же Борланд, создают "системы программирования". Но к счастью ими (ну кроме особых уродцев типа того-же Билдера) можно просто не пользоваться.



Цитата(DSIoffe @ Nov 5 2008, 15:23) *
Ох, не любите Вы Паскаль! А я люблю!
чь идёт о языке.

Просто владея несколькими языками я могу оценивать их достаточно объективно, а не по критериям любви. А любовь, любовь она как известно зла - полюбишь и .....
_Pasha
Цитата(zltigo @ Nov 3 2008, 23:03) *
Глупость изрекли. Жаль, что не понимаете sad.gif.

...Вечно бурчащий и недовольный "Старик и АРМ".
Но, блин, вопросом владеет -это точно! smile.gif
Вы бурчите, пожалуйста! Это выгоняет глистов из мозга и выпрямляет кривые руки.
DL36
Я работал в дельфи 3,4,5 а сейчас работаю на С и жалею времени потраченного на дельфи.

Вы вот специалист в дельфи подскажите как решается проблема с указателями. Мои бывшие соратники просят переписать длл-ку и мне надо из дельфи передать адрес буфера, понятное дело писать буду на плюсах.
DSIoffe
Цитата("zltigo")
Именно, именно о языке который уже практически ничего общего с некими монстром, который сейчас Вы назвали "системой программирования" от Борланд уже не имет. Любой другой "Паскаль" на самом деле тоже только несколько похож на прародителя.

Попробую ещё раз: система программирования и язык программирования - разные вещи. Второе без первого смысла не имеет, конечно, но имеет право на отдельное рассмотрение smile.gif
А не огласите критерии Вашей объективной оценки?
Цитата("DL36")
Вы вот специалист в дельфи подскажите как решается проблема с указателями. Мои бывшие соратники просят переписать длл-ку и мне надо из дельфи передать адрес буфера, понятное дело писать буду на плюсах.

Я решаю просто: иду на http://www.delphikingdom.com/, пользуюсь поиском, если не нашёл ответа - спрашиваю. Там можно и без регистрации. Вашей проблемы с указателями я не знаю, но всё равно предлагаю туда пройтись smile.gif
GAS
Цитата(DL36 @ Nov 6 2008, 10:10) *
Я работал в дельфи 3,4,5 а сейчас работаю на С и жалею времени потраченного на дельфи.
Вы вот специалист в дельфи подскажите как решается проблема с указателями
Вот уж действительно жалко, время потрачено, а решения проблемы нет. Но причем тут дельфи? Я передавал указатели так
Type
PUsr_Keys_Info = ^TUsr_Keys_Info;
TUsr_Key_Info = Packed Record
Num : Array [0..10] Of Char;
Status : Word;
END;
TUsr_Keys_Info = Array[0..15] OF TUsr_Key_Info;

VAR
Data : Cardinal;
pKeysInfo : PUsr_Keys_Info;
nKeySlots : Word;
pGetDrvInfo : FUNCTION( pKeysInfo : PUsr_Keys_Info;
pKeySlots : PWord ) : Word; StdCall; {Описание функции в DLL}

implementation

PROCEDURE FormCreate(Sender: TObject);
begin
inherited;
Data := LocalAlloc(LMEM_FIXED, SizeOf( TUsr_Keys_Info ) );
pKeysInfo := LocalLock( Data );

CheckOper( pGetDrvInfo( pKeysInfo, @nKeySlots )); //Вызываем функцию и передаем указатель
end;
DL36
Цитата(GAS @ Nov 7 2008, 00:36) *
Но причем тут дельфи? Я передавал указатели так

Спасибо за ответ.

Дельфи тут не при чем просто к слову пришлось. Так сложилось начинал работать с ПДП11 асм 580 итд.. во времена разрухи пришлось работать на дельфи, писал не экранные формы а длл внутреннего употребления и постоянно, чего то не хватало. Уволился пришёл к контроллерам и си тут и понял чего не хватало.
Kopa
Тем временем данный Pascal дорос до версии V1.6.2.96 release (beta version) от 2012.01.17
Страница закачки

P.S. Мне ни к чему (использую Форт(Forth) в связке с С, но может кому сгодитсяsm.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.