|
|
  |
Pascal для AVR |
|
|
|
Dec 12 2008, 16:46
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Огурцов @ Dec 12 2008, 19:12)  У меня целый диск с паскаль-компилерами валялся, датирован годом так 2000. Вот именно, что "валяется". Валяется многое что (Классический Паскаль в основе очень прост с точки зрения компиляции и вполне годится для темы дежурного курсовика, что и определяет количество валяющегося "материала"), речь идет о том что со сколь-нибудь реальной работой облом. Цитата Так что ждите, для 32-битников и паскаль появится качественный.... А можно не ждать? 32битники освоены сишными компиляторами уже в прошлом веке, причем даже не в конце... Цитата Да, потому что все это экономит время.... По началу, пока все это используется в паркетных условиях для "Hello....". Потом, обычно, начинаются вечные разговоры о "глюках" и поиск (вместо разборок по сути) новых "неглюкавых". Цитата и генерально увеличивает надежность. С какого бодуна неведомо кем и для каких условий писаные "компоненты" обеспечивают хоть какую-то надежность? Хотя я наверное не прав - все познается в сравнении - львиная доля пишущих на Дельфи вообще ничего самостоятельно обеспечить не может, в этом смысле - да, хоть что-то дышащее обеспечить за счет сделанного кем-то. Цитата А паскалевский case не противопоставлен только потому, что у него иной, более оптимальный принцип работы, и по быстродействию он порвет сишный switch как тузик грелку. Ну в худшем случае, будет работать так же, как и конструкция из if. "Остапа понесло"
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 12 2008, 17:19
|

Знающий
   
Группа: Участник
Сообщений: 672
Регистрация: 6-01-06
Из: Петербург
Пользователь №: 12 870

|
Можно ламеру вякнуть? Решил для чистоты эксперимента сделать в Дельфях вообще пустой проект - форма со значками закрытия, сворачивания-разворачивания. Он весит 359 Кб Таким образом, рабочая часть "восьми ферзей" влезает в 374 - 359 = 15 Кб
--------------------
Льва Абалкина больше нет. Забудь о нем. На нас идет автомат Странников!
|
|
|
|
|
Dec 12 2008, 17:20
|

Профессионал
    
Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581

|
Цитата(XVR @ Dec 12 2008, 13:25)  Т.е. если dll, сделанные на Delphi не работают под VC, а dll сделаные на VC работают под Delphi, то виноват VC?  Может надо где то в консерватории поправить? но ведь так же описанные функции принимаются самой ОС и работают с нею - не значит ли это, что в консерватории все ништяк? мне не доводилось юзать VC и я не могу сказать, в чем именно проблема. но почему-то не верю, что Delphi создана настолько тупым образом, что ее DLL отличаются от любых иных DDL. думаю, такой проект никогда не имел бы такого колоссального коммерческого успеха, какой был у Delphi - надеюсь, про этот успех все программисты помнят? Цитата(defunct @ Dec 12 2008, 15:51)  cdecl не пробовали писать?  cdecl отличается от stdcall местом "чистки" стека при вызове функции: для cdecl это делается в вызывающей программе, а при stdcall этим занимается сама функция. для экспорта из DLL рекомендовано использовать stdcall - как я понимаю, это стандартный способ обращения к функциям DLL. мне кажется, что VC при загрузке DLL долна использовать не традиционный для С способ, а именно этот... я не прав? Цитата(defunct @ Dec 12 2008, 15:51)  Как вы в Delphi контроллируете типы при взаимодействии с функциями DLLки? Какой есть для этого механизм? при работе с DLL я не могу контролировать типы параметров, кроме как по заголовочному файлу, в котором описаны прототипы этих функций. однако, если в этом файле написано для параметра word (аналог short int для С), то попытка вызвать функцию с параметром integer (аналог int для С) вызовет при компиляции не ворнинг, а ошибку, т.е. неверно работающий исполняемый файл не будет создан вообще. Цитата(defunct @ Dec 12 2008, 16:23)  Типичный образ ламера, который кстати никак не связан с каким-то конкретным языком. Ламер он во всем такой. Вы правы, что ламеров везде хватает  , в т.ч. и занимающихся "батонокиданием" на Delphi. А вот насчет процента, на мой взгляд, среди Сишников % оных меньше, чем среди Delphi'стов. да, ламеров хватает. просто там, где плотность населения выше - там и ламеров больше  а С-программирующих больше, чем паскаль-программирующих. статистика, панимаш... мне еще показалось, что у значительной аудитории участников разговора имеется мнение, что Delphi - это только компоненты и вечный их поиск в сети... это не совсем так. компонент лишь позволяет за 5 секунд сделать то, что руками приходится делать 5 часов, а то и 5 недель. и главное отличие качественно написанного компонента от не менее качественного исходника какой-то либы в Си в том, что компонент однозначно не потребует ни малейших усилий для того, чтобы его применить, в то время как исходник Си как минимум надо проверить на соответствие по типам параметров функций в вашей программе и в библиотеке. и не факт, что исходник скомпилируется сразу без проблем, а компонент - это уже скомпилированный код. Да, кстати о ламерах. в организации, где я работаю, программистов много, пишут программы для весьма серьезных объектов. но либо мне не повезло, либо они и в самом деле такие - но то, какой код они пишут (тот, что доводилось видеть), лично у меня вызывает просто шевеление волос! не смотря на то, что 90% программ - для встраиваемых систем, ну ни малейшей оптимальности, о которой тут говорили: если в функции 5 циклов - введено 5 итерационных переменных, называются все они типа i1, i2, i3 и т.д., глобальные переменные раскиданы везде - от хидеров до промежутков между функциями в исходниках (короче стиль "собаки" - где приспичило, там и нагадила)... зато очень много вложений операторов друг в друга (ну, типа когда в пре- и пост- части for пишутся чуть ли не поэмы) и т.д. все знакомые мне программисты - достаточно молодые парни (2-4 года стажа), все учились на программиста, все пишут на Си и презирают паскль за убожество и "длинность"... каждая их программа месяцами налаживается на объектах... ужос!
Сообщение отредактировал ARV - Dec 12 2008, 17:33
--------------------
Я бы взял частями... но мне надо сразу.
|
|
|
|
|
Dec 12 2008, 17:47
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(ARV @ Dec 12 2008, 20:20)  да, ламеров хватает. просто там, где плотность населения выше - там и ламеров больше  а С-программирующих больше, чем паскаль-программирующих. статистика, панимаш...  Ситуация для Паскаля много хужее - благодаря ярлыку учебного языка и насаждению в качестве обязательного к изучению в exUSSR условиях процент ламеров паскалистов-Дельфистов несораизмеримо прирастает обучаемыми этому языку по обязательной программе. К ним в основном и относятся лично мои замечания о вечном поиске Компонентов. Цитата ...компонент лишь позволяет за 5 секунд сделать то, что руками приходится делать 5 часов, а то и 5 недель. и главное отличие качественно написанного компонента... Главная отличительная черна качественного компонента, как и качественной сишной библиотеки в том, что они практически не встречаются в свободном виде. Результат-же использовани чего попало не радует (ну разве только автора-ламера у которого "все работает"). Цитата(ARV @ Dec 12 2008, 20:20)  Да, кстати о ламерах. в организации, где я работаю, программистов много, пишут программы для весьма серьезных объектов... На Паскале, они конечно, написали-бы все изумительно  . Я особенно много в свое время читал и правил ADA-исходников ну очень сурового западного заказчика.. Правил и плакал, правил и плакал... (нет не от ужаса созерцаемого, а от жалости к себе вляпавшемуся в это дерьмо). То, что там было написано под чутким руководством менеджеров, которых, наверное, тоже вешали лапшу на уши, что на ADA вообще любой сержат круто и без ошибок напрограммирует вообще уму не растяжимо. Очень был рад, что вся эта эпопея накрылась по другим причинам до этапа "подайте сюда софт".
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 12 2008, 17:51
|

Профессионал
    
Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581

|
Цитата(zltigo @ Dec 12 2008, 20:34)  Ситуация для Паскаля много хужее - благодаря ярлыку учебного языка и насаждению в качестве обязательного к изучению в exUSSR условиях процент ламеров паскалистов-Дельфистов несораизмеримо прирастает обучаемыми этому языку по обязательной программе. К ним в основном и относятся лично мои замечания о вечном поиске Компонентов. я думаю, что неаккуратность и лень - вовсе не следствие изучения паскаля... зато явная причина ламерства. не думаю, что те, кто так же учит в ВУЗе Си меньшие ламеры - скорее, гораздо бОльшие... Цитата(zltigo @ Dec 12 2008, 20:34)  Главная отличительная черна качественного компонента, как и качественной сишной библиотеки в том, что они практически не встречаются в свободном виде. Результат-же использовани чего попало не радует (ну разве только автора-ламера у которого "все работает"). возможно, вам покажется странным, но точно так же, как для GNU-сообщества сишников, для паскалистов (и в том числе для Delphi) имеется очень много качественного и бесплатного софта, в том числе и компоненты. лично я для своих задач полностью удовлетворен комплектом JVCL - поиски прекратил много лет назад, сразу, как обнаружил этот набор. чего не хватает - лично мне проще сделать самому, чем искать в сети... Цитата(zltigo @ Dec 12 2008, 20:47)  На Паскале, они конечно, написали-бы все изумительно  . сомневаюсь. я говорил и повторю снова: ламерство - оно "кроссплатформенно"  просто это к слову о том, что в Си ламеров меньше...
--------------------
Я бы взял частями... но мне надо сразу.
|
|
|
|
|
Dec 12 2008, 17:53
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Цитата(zhevak @ Dec 12 2008, 01:41)  Уважаемые Жека и Pasha
Вы что измеряли-то? ..... И что самое забавное, этот код, Делфя-прога таскает с собой постоянно. Прямо как тот чудак, который таскает по всем коммандировкам тяжеленный чемоданище с постельным бельем, тапочками, сопогами, графином, стаканом, настольной лампой, телевизором, гантелями, ... короче со всем своим барахлом. Вот именно. Поэтому сравнивать по коду Си и Pascal (в классическом понимании), бессмысленно. Паскаль по определению должен проиграть. Кроме ошибок компиляции, паскаль тянет ошибки исполнения. Причём эти ошибки прямо в текстовом виде. Это и знаменитые Overflow и деление на ноль и файловые и т.д. и т.п. Этого там настолько много, что порой приходится отключать. Кстати отключить это можно средствами компилятора. Конечно, в связи с этим Паскаль требует не меньше знаний для проффессионального его использования, чем плюсы. Достаточно посмотреть те примеры которые идут вместе с Delfi. И, я на 200% уверен, что проффессионалы C++, которые давно не используют Delfi - слегка будут удивлены. Многоэкранный текстовый редактор, со всеми сервисами. Текст программы - 3 файла общим весом 20858 байт (исходный текст). Проект WebServises. Client - Delfi::Bilder == 2/15077 :: 7/22179 (в полтора раза!!) Server == 5/9550 :: 15084 (в 1.6 раза) Говорите "begin - end"? К сожалению это единственный проект, который был и там и там. Думаю, на текстовом редакторе разница была бы двухкратная. Учтите, что проект писали люди одной фирмы - производителя, которые хорошо знают что они пишут. В этом и есть разница языка более высокого уровня, которым является Pascal. По мере увеличения свободных ресурсов кристаллов будет идти непрерывный и неизбежный переход с языков низкого уровня на более высокий уровень. С ASM, на котором мы писали недавно, уже большенство пересело на Си. Следующая ступень С++. Далее - применение ОС, для большего комфорта. Далее будет врят ли Паскаль. Скорее всего что-нибудь платформенно независимое. Загадывать сложно. Но факт состоит в том, что нет идолов. И Си неизбежно уступит место другим языкам. Я почему использую Паскаль (Delfi)? Да мне до лампочки сколько он мне нагенерит!!! 100кб или 10мб в тех приложениях которые я пишу. Когда мне будет до лампочки сколько кб займёт моя прога в камне, а язык более высокого уровня предоставит мне лучший сервис, то я с удовольствием перейду на него. Одно дело когда мы сравниваем средства одного порядка. Другое если сравнить например C++ от IAR и DELFI (условно конечно). Чтобы я, например, мог также запросто создать графическую оболочку на своём дисплее (в МК), чтобы также смог работать с файлами и т.д. И представим, на секунду, что результирующий код легко влазит в моё устр-во. И что? Я откажусь и буду сам что-то ваять - вылизывать байты? Да не в жизнь! Кто сейчас вылизывает байты на ПК?
|
|
|
|
|
Dec 12 2008, 17:56
|
Профессионал
    
Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118

|
Цитата(Жека @ Dec 12 2008, 20:19)  Можно ламеру вякнуть? Решил для чистоты эксперимента сделать в Дельфях вообще пустой проект - форма со значками закрытия, сворачивания-разворачивания. Он весит 359 Кб Таким образом, рабочая часть "восьми ферзей" влезает в 374 - 359 = 15 Кб Консольный компилятор dcc32.exe, с ключем -сс --> будут желаемые 15кб.
|
|
|
|
|
Dec 12 2008, 18:15
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(ARV @ Dec 12 2008, 21:06)  эта среда (не язык - именно среда) породила такой фурор среди ламеров Цитата , что борландовцы решили сделать и для программистов С\С++ аналог (билдер знаменитый) - чтоб ..... еще больше окучить и постричь ламеров... Цитата с этого момента звезда Delphi пошла на закат... поскольку на расплодившихся ламеров обратили свое внимание и другие более крутые фирмы и забрали их к себе  показав им такие красивые IDE c офигительными наворотами на кнопках мышки! Ну и тут еще и WEB-программимрование подоспело  . Но дело Борланда не умерло  те, первые ламеры заматерели и начали рожать планы обучения в росийских школах и ВУЗах  Причем Цитата причем снисходительно-доброго отношения .... не получают до сих пор... наоборот, всяческие поношения
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 12 2008, 18:37
|

Профессионал
    
Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581

|
Цитата(zltigo @ Dec 12 2008, 21:15)  среди ламеров еще больше окучить и постричь ламеров... поскольку на расплодившихся ламеров обратили свое внимание и другие более крутые фирмы и забрали их к себе  показав им такие красивые IDE c офигительными наворотами на кнопках мышки! Ну и тут еще и WEB-программимрование подоспело  . Но дело Борланда не умерло  те, первые ламеры заматерели и начали рожать планы обучения в росийских школах и ВУЗах  Причем уже даже не смешно читать... ощущение, что у вас яд с языка капает  это по-вашему ламеры создали коммерческий успех Борланда и Делфи?! значит, коммерческий успех С - за счет профессионалов, а Делфи - за счет ламеров? здорово... и, как обычно, с доказательствами... просто для вас ламер - это тот, кто не с вами, вот и все. знаем таких, проходили в школе. не хватает лишь лозунга "бей паскальников!"
--------------------
Я бы взял частями... но мне надо сразу.
|
|
|
|
|
Dec 12 2008, 18:43
|
;
     
Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509

|
Цитата(SasaVitebsk @ Dec 12 2008, 21:53)  Этого там настолько много, что порой приходится отключать. Кстати отключить это можно средствами компилятора. Во вчерашних примерах: оставил только проверку стека, остальное - не надо. По остальным пунктам хоть и обширного поста +1  Кстати - в лазарусе собрал демку про OPENGL - Цитата(Leka @ Dec 12 2008, 21:56)  Консольный компилятор dcc32.exe, с ключем -сс --> будут желаемые 15кб. Пробовали реально ? Под win32 должно быть больше по-любому
|
|
|
|
|
Dec 12 2008, 19:11
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата(ARV @ Dec 12 2008, 20:06)  а еще интересная тема скрыта в истории... сначала была Delphi. Да что вы знаете про матросов, салабоны! (ЦЭ)  До делфей был турбопаскаль. Между прочим, даже кроссплатформенность была некоторая, потому как третий тп я, например, пользовал в двух вариантах, под писюк и под CP/M. Даже была у меня самописная графическая библиотека в трех вариантах, под три таргета (одна машина под CP/M, вторая - тоже восьмибитка, только другая, и третья - банальный 8086) подключалась при помощи $I (раздельной компиляции третий тп еще не умел), а вот основной код был практически идентичный (единственная проблема была с разными кодировками русских букв). И ничего, все собиралось и работало. А потом турбопаскаль научился раздельной компиляции. И Борманд  придумал библиотеку типа теперешнего VCL, только в текстовом режиме работала. Я с ее помощью никогда не писал, посему название в голове крутится, а вспомнить не могу. Но факт в том, что была. И ее весьма широко использовали. А вот пример из современности: Вот где-то года 2 (или уже 3) назад начал я один проект, который представлял собой гейт ICQ-мой протокол. Сначала были найдены исходники более-менее вменяемого делфийского компонента для создания аси, после чего он был доточен под личные нужды и исправлены самые вопиющие ошибки (ну, например, сразу был отстрелен какой-то компонент типа индисокет с заменой на вменяемые send, recv и select). В каком-то виде это было запущено в работу. После того, как количество одновременных коннектов достигло сотни, у меня стал вопрос или об апгрейде сервера, на котором работал этот гейт, или, как говорится, чтото решать. Было принято волевое решение "чтото решать" - постоянные утечки памяти в VCL, необъяснимые глюки в VCL-ных тредах и пляски с бубном просто достали. Кроме того, на горизонте маячила необходимость перевода гейта на никсы. Вообщем, выбросил я нафиг делфя и на основе найденной в инете более менее вменяемой айсикюшной библиотеки с исходниками на плюсах было исполненно аккуратное кроссплатформенное приложение, крутящееся на сервере месяцами, обеспечивая в среднем одновременно триста соединений, без утечек и тормозов. И совсем мало по памяти. Вопрос апгрейда сервера снялся сам собой. PS Исходники библиотеки на плюсах были тоже, конечно, изрядно обточены напильником, а изначально они вообще не работали после очередной смены протокола аси. Вот такая вот музыка
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Dec 12 2008, 19:16
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(ARV @ Dec 12 2008, 21:37)   это по-вашему ламеры создали коммерческий успех Борланда и Делфи?! Да! Борладовцы были первые, которые начали делать ПРЕЖДЕ ВСЕГО не компиляторы, а ПРЕЖДЕ ВСЕГО IDE, Турбовижины, самодельные "Базы даных", массу готовых библиотек... Это реально привлекло в программировние людей, многие из которых стали ламерами ввиду изначально заложенной прадигмы по воспитанию потребителя их продукции. В заметной степени и я, до мозга костей железячник, хотя и отдавший в свое время немало дней и ночей Фортрану, пришел в конце 80 в реальное а не "научное" программирование Благодаря их "Турбо" продуктам. Заметное количество из хоткеев борландовской IDE живут в моих редакторах до сих пор  , хотя сама их IDE использовалась в первоначальном варианте совсем недолго. Иx BCC 3.1 и TASM используется мною (c самодельными библиотеками и линкером) для программирования старого 186 железа до сих пор. Код, правда, гененит по нынешним временам отвратный, но переползать на, например, что-то типа Watcom бессмысленно. Их TASM лучший до сих пор. В всем этом ничего страшного нет - процесс движения многих навыков и профессий в массы естественнен и неизбежен. Еще десятки лет назад "шофер" было исключительно профессией. Сейчас много, много больше, чем профессионалов "Блондинок за рулем". Для "болондинок" работает целая индустрия старающаяся (и не безрезультатно! и небесполезно! для всех участников) сделать программирование вождение безопаснее, удобнее, безответственее и не требующим никаких особых знаний (тем более знания железа  ). Это все естественно и не ново, и, повторюсь, нормально. Только вот требовать какого-то особого "снисходительно-доброго отношения со стороны", наверное, с их стороны несколько чрезмено  .
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 12 2008, 22:23
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Цитата(Rst7 @ Dec 12 2008, 23:11)  И Борманд  придумал библиотеку типа теперешнего VCL, только в текстовом режиме работала. Я с ее помощью никогда не писал, посему название в голове крутится, а вспомнить не могу. Но факт в том, что была. И ее весьма широко использовали. TurboProfessional.  А я использовал. Один из первых программаторов делал с меню на его основе.  ЗЫ: Только не Борланд это написал. А Борланд потом приобрёл эту фирму. Цитата(Rst7 @ Dec 12 2008, 23:11)  Вот такая вот музыка  Давайте будем объективными. Это имеет отношение к языку Паскаль как таковому? Это имеет отношение к его реализации. Причём именно к реализации библиотек в виде VCL. Могло быть, что на основе плюсов, например с помощью Borland C++ была бы таже шляпа? Естественно. Именно эта же шляпа и была бы, так как таже VCL. Так какое отношение это имеет непосредственно к теме обсуждения? Вон сколько нареканий на некоторые компиляторы С мы наблюдаем. http://www.tiobe.com/index.php/content/pap...tpci/index.htmlhttp://forum.vingrad.ru/forum/topic-162297.html
|
|
|
|
|
  |
5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0
|
|
|