Оберон-клуб «ВЄДАsoft»

Твердыня модульных языков
Текущее время: 28 мар 2024, 18:35

Часовой пояс: UTC + 2 часа




Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2, 3, 4
Автор Сообщение
СообщениеДобавлено: 10 сен 2019, 21:54 
Не в сети
Аватара пользователя

Сообщения: 1019
Откуда: Днепропетровская обл.
Если серьёзно приторачиваться к мэйнстриму, в частности, пользоваться WinAPI, то без таких вещей как VAR [nil] трудно жить. Если же сделать игрушечный компиляторчик и к нему три библиотеки с десятком процедур и плеваться на всё, чего нет в репорте на Oberon-07/16 — тогда да, жить можно, сферический конь в вакууме получится. В Оберон-сообществе таких коней любят подкармливать сахаром, но реально на них почти никто никуда не едет.


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 10 сен 2019, 22:20 
Не в сети

Сообщения: 146
Zorko писал(а):
Если же сделать игрушечный компиляторчик и к нему три библиотеки с десятком процедур и плеваться на всё, чего нет в репорте на Oberon-07/16
А где Вы такое увидели? Зачем эти домыслы?
Цитата:
сферический конь в вакууме получится
Такой, как у Ивана для музея? Зачем же Вы его программу компилировали с помощью OfrontPlus?


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 11 сен 2019, 02:06 
Не в сети
Аватара пользователя

Сообщения: 1019
Откуда: Днепропетровская обл.
Comdiv писал(а):
А где Вы такое увидели? Зачем эти домыслы?
Не будем прям уж тыкать пальцем, но такие компиляторы я где-то увидел. ;-)

Цитата:
Такой, как у Ивана для музея? Зачем же Вы его программу компилировали с помощью OfrontPlus?
Проверил, хорошо ли Ofront+ поддерживает Oberon-07. И — я этого не говорил (про прибор Ивана). Ему нужно — значит нужно.

Константин, бывает "мне не нужно", а бывает "мне нужно". И бывает "я думаю, что так будет лучше для всех". Чувствуете разницу?


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 11 сен 2019, 10:17 
Не в сети

Сообщения: 146
Zorko писал(а):
Не будем прям уж тыкать пальцем, но такие компиляторы я где-то увидел. ;-)
Какой транслятор Вы имели ввиду, это очевидно. Естественно, я спрашивал про это -
Цитата:
плеваться на всё, чего нет в репорте на Oberon-07/16
Где Вы это увидели?
Цитата:
бывает "мне не нужно", а бывает "мне нужно". И бывает "я думаю, что так будет лучше для всех". Чувствуете разницу?
И опять объясняете так, будто домыслили, что Вас в категорической и грубой форме уверяют в ненужности, а не спрашивают. Считаете, что очень нужно и хорошо. Вопросы, сомнения, другие мнения - это не наезд.
Цитата:
И — я этого не говорил (про прибор Ивана)
Понятно, что Вы писали про меня, но делали это обобщённо, упоминая сферических коней, получающихся при использовании O7. Я же привёл программу Ивана как пример того, что люди делают полезного несферического на O7, не оглядываясь на снобизм разного рода профессионалов.


Ладно, это всё лирика.

Тут возник связанный технический вопрос по Ofront. Одна из значимых особенностей VAR - неравенство 0 неявной ссылки, которая образуется в формальном параметре. В Blackbox это соблюдается, в то время как в Ofront+ можно получить 0-ю ссылку не используя ни SYSTEM, ни расширения языка. Среди опций командной строки я не смог найти такой, которая бы позволила сгенерировать нужные проверки для недопущения этой ситуации. Есть ли такая возможность в Ofront+ и как её задействовать? Если нет, то планируется ли её добавить?
На данный момент 0-ю ссылку хотя и более многословно, но несложно указать и без VAR [nil].


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 11 сен 2019, 23:49 
Не в сети
Аватара пользователя

Сообщения: 1019
Откуда: Днепропетровская обл.
Comdiv писал(а):
Какой транслятор Вы имели ввиду, это очевидно.
Естественно, я имел в виду не Ваш Восток. Но таких компиляторов есть даже несколько.

А вот про разработку трёх библиотечных модулей с десятком процедур — это может быть и про Восток. Вы просто не писали крупную программу на WinAPI, иначе бы не стали выступать за безтиповые системные указатели вместо типизированных VAR [nil].

Кстати, Ofront+ в плане библиотек тоже далеко не ушёл и является игрушечным средством в этом смысле.

Comdiv писал(а):
Где Вы это увидели?
Ну, Вы же взяли для основы Oberon-07, а не, к примеру, КП? И никак его не расширяли, просто трактовали описание языка как считаете нужным, впрочем, это все делают.

Comdiv писал(а):
Я же привёл программу Ивана как пример того, что люди делают полезного несферического на O7
Можно и на игрушечном компиляторе сделать что-то полезное, если конечно не упрёшься в его почти непреодолимые недостатки.

Comdiv писал(а):
Среди опций командной строки я не смог найти такой, которая бы позволила сгенерировать нужные проверки для недопущения этой ситуации. Есть ли такая возможность в Ofront+ и как её задействовать? Если нет, то планируется ли её добавить?
Да, добавить опциональную проверку-сравнение на NIL перед разыменованием с указанием позиции ошибки было бы хорошо. Вы теоретически интересуетесь, или Вам при использовании Ofront'а+ крайне не хватает этой фичи? А так — я озадачился, добавил в ToDo, буду обдумывать.


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 13 сен 2019, 18:04 
Не в сети

Сообщения: 146
Zorko писал(а):
Comdiv писал(а):
Где Вы это увидели?
Ну, Вы же взяли для основы Oberon-07, а не, к примеру, КП? И никак его не расширяли
Гм, так это же азы логики. Если я использую русский язык, это не означает, что я ненавижу украинский. Вы, конечно, не только не обязаны внимательно изучать все мои сообщения и следить за всей моей работой, но и не можете этого сделать, но зачем тогда делать обобщения на таком скупом материале да и ещё с таким пренебрежением к правилам вывода?
Zorko писал(а):
Можно и на игрушечном компиляторе сделать что-то полезное, если конечно не упрёшься в его почти непреодолимые недостатки.
Область применимости есть у всего на свете. Провозглашение чего либо, дающего настоящие результаты, игрушечным на основание наличия границ применимости - это софистика. Также можно провозгласить игрушечной классическую механику, потому что можно упереться в её непреодолимые недостатки, вызванные невозможностью учёта эффектов теории относительности.


Цитата:
Вы просто не писали крупную программу на WinAPI, иначе бы не стали выступать за безтиповые системные указатели вместо типизированных VAR [nil]
Такой обмен опытом - это главная причина, почему имеет смысл заводить подобные дискуссии. Я написал много кода на Си, но не использовал активно WinAPI в том числе и потому, что сознательно ограничивал его прямое использование. Если для WinAPI всё не так, как в POSIX мире, то об этом было бы интересно узнать подробней. На основании своего опыта скажу, что указатели на примитивные типы в параметрах, для которых не просто возможна, а именно необходима возможность зануления встречается редко. То же самое с указателями на структуры, не выделенных динамически обособленно. Сходу ничего не могу вспомнить. Было бы интересно узнать о примерах в разных API и насколько велик процент таких функций. Судя по тому, что написано в документации к WriteFile, для привязки к ней, вполне можно было обойтись и без VAR[nil]. Если опыт говорит об обратном, то об этом тоже было бы интересно узнать.

Comdiv писал(а):
Вам при использовании Ofront'а+ крайне не хватает этой фичи?
Смотрю из интереса.


Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2, 3, 4

Часовой пояс: UTC + 2 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
© VEDAsoft Oberon Club