На базарной площади довольно часто можно слышать высказывания об
Обероне. Мне кажется, что на базарной площади пора появиться ветке об
этой системе и языке, что-то вроде "Мысли об Обероне". Что это такое, перспективы
этой системы, что
полезного можно извлечь из него для программирования на Дельфи
(например) и др.
Ivan
Всего в теме 4531 сообщение
Ссылки по теме "Оберон" и "Компонентный паскаль"
Отслеживать это обсуждение
- Free Pascal, Oberon, BlackBox
- Разработка препроцессора gpre для delphi\freepascal.
- Component Pascal и среда разработки BlackBox
- FreePascal: реальная альтернатива или OpenSource — блажь?
№ 4101 23-12-2005 07:04 | |
Ответ на »сообщение 4095« (sdf)
___________________________
какой интерфейс у a+b? вот вам пример полиморфизма. Шоб вы знали: полиморфизм енто разная интепретация одной и той же команды ли операции ли при одной и той же записи. теперь знаете
Интерпретация без средств реализации и выражения смысла операции, мало чего стоит.
Вам позволена такая запись, просто потому, что "нечто" позволяет вам проводить "изменение смысла операций" под одним именем - "+". Это - часть интерфейса этого "чего-то".
Если "глубокоооооо задуматься" :о) , выяснится, что просто так "из воздуха" полимрфизм не появляется. При всей возможности высокоуровневой абстракции, за ней стоят конкретные объекты, заявляющие, что они под этим имененм предлагают (определяют, реализуют) конкретную операцию (семантика оговаривается отдельно).
Полиморфизм появляется на границе объектов, на интерфейсе (не в смысле ЯП, а в более общем понятии - месте взаимодействия объектов).
В дальнейшем становится уже интересней, когда раскапываешь сами механизмы реализации возможности полиморфизма в конкретном ЯП и исполняющей системе.
В вашем случае, необходимо смотреть, кто же это позволил нам делать: CPU->"+"(a,b) или a->"+"(b) (обозначения чисто произвольны) ...
№ 4100 23-12-2005 07:01 | |
Вышел релиз Black Box 1.5
Dear BlackBox developers,
today we released the final version of BlackBox 1.5 for download from
our web site:
http://www.oberon.ch/blackbox.html
Compared to the beta version, this release does not come with any major
new features. It corrects a number of errors reported by the community.
We would like to thank you very much for your support by pointing out
possible problems and thereby helping to improve BlackBox.
We wish you all a Merry Christmas and a Happy New Year,
your Oberon microsystems crew
--------------------------------
Changes since BlackBox 1.5 BETA:
.\blackbox.exe.manifest (new file):
manifest file for BlackBox.exe; enables Windows XP look & feel
.\empty.odc (new file):
allows the creation of new documents by right-click from the
Windows Explorer
.\tour.odc:
minor changes
.\unins000.dat, .\unins000.exe (new files):
files for BlackBox Component Builder Uninstall
.\comm\docu\tcp.odc:
note about empty string as values for localAdr
.\dev\docu\user-man.odc:
minor changes
.\docu\cp-lang.odc:
minor changes
.\host\mod\ports.odc:
Bezier algorithm corrected
.\sql\mod\odbc.odc:
handling of case WinSql.SQL_ERROR changed
.\sql\mod\odbc3.odc:
handling of case WinSql.SQL_ERROR changed
.\std\mod\scrollers.odc:
corrections in InnerFrame and its clients
.\system\docu\config.odc:
some clarifications concerning Startup.Setup
.\system\docu\dialog.odc:
additional Update procedures
.\system\docu\properties.odc:
minor changes
.\system\docu\stores.odc:
minor changes
.\system\docu\user-man.odc:
minor changes
.\system\mod\dialog.odc:
additional Update procedures
.\system\mod\stores.odc:
corrections in ThisId and ThisBaseId
.\system\rsrc\menus.odc:
entries for HostMail removed
.\xhtml\mod\entitysets.odc:
procedure MapCharToEntity corrected
.\xhtml\mod\stdfilewriters.odc:
procedures New and Writer.DocType corrected
--- BlackBox
--- send subject HELP or UNSUBSCRIBE to blackbox@oberon.ch
№ 4099 23-12-2005 06:58 | |
Ответ на »сообщение 4083« (Trurl)
___________________________
Я встречал 3 варианта:
1) X+Y= 3.345
2) X+Y= 'abcd3.345'
3) ошибка выполнения
и каждый из них имеет свое обоснование.
Если бы внимательно прочитали, то наверняка заметили бы что именно эти три варианта я и обосновывал.
Пусть X=1,Y=0. Тогда операция X/Y неосуществима (при обычной семантике деления). Однако, типы к этому не имеют отношения.
Да, для этих X, Y, действительно, не осуществима. Но Вы, видимо, забыли, что операция деления X/Y определена для X in R и Y in R\{0}. Т.е. для X и Y определены множества допустимых значений, именно это (определение множества допустимых значений) и является предназначением типов данных. Приводя пример со строками, я хотел подчеркнуть, что результат выполнения такой операции трудно себе представить, хотя, разумеется, формально определить операцию деления для строк вполне возможно.
Но это не главное, -- факт в том, что операция деления для строк будет отличаться от одноимённой для вещественных чисел, и корень этого отличия именно в том, что объекты разнородны по своей природе, т.е. в терминах языка программирования -- принадлежат к различным типам данных.
№ 4098 23-12-2005 06:07 | |
Ответ на »сообщение 4076« (info21)
___________________________
Надо бы все же отличать типы переменных от типов данных (значений).
Смысл для классификации языков имеют все-таки типы переменных.
А операции производятся над значениями (хотя проекции a ----> a[i] или a.b это тоже операции, хотя и не в терминологии Сообщений об Оберонах; но это все равно не те операции, о которых говорится в цитате).
Интересно, а что такое "тип переменной" в Вашем понимании? Насколько я могу утвержать, когда объявляется переменная некоторого типа ("ТИПА ДАННЫХ" а не "ТИПА ПЕРЕМЕННЫХ"), то констатируется факт принадлежности любого значения переменной, полученного ей во время существования, к множеству допустимых, определённому соответствующим типом данных. В динамически-типизируемых языках (обратите внимание на название) одно и то же имя переменной может быть ассоциировано в разные моменты времени с данными разных типов.
Глубоко :-)
Есть возражения? Пожалуйста... высказывайтесь...
№ 4097 23-12-2005 05:03 | |
Ответ на »сообщение 4096« (ASU)
___________________________
конечные автоматы енто пример динамического изменения функциональности без переписывания кода и перекомпиляции. опять же шоб знали. примите мои соболезнования...
Шпашибо... Шобалюзнования приняты :)))
енто не ко мне енто к стоматологу.
№ 4096 23-12-2005 05:01 | |
Ответ на »сообщение 4095« (sdf)
___________________________
конечные автоматы енто пример динамического изменения функциональности без переписывания кода и перекомпиляции. опять же шоб знали. примите мои соболезнования...
Шпашибо... Шобалюзнования приняты :)))
№ 4095 23-12-2005 04:47 | |
Ответ на »сообщение 4094« (ASU)
___________________________
Для старта нужен импульс. Стартовать, по большому счету, можно и из состояния невесомости. Ну, да, не суть...
ну да. если убирается опора енто тоже импульс. при бомбометании кажной бомбе придают особый импульс. шоб летела иначе будет просто падать.
у класса есть интерфейс и свойства значит они полиморфные. у модуля тоже интерфейс и тоже свойства и тоже полиморфные, так получается? а какие тода свойства неполиморфные?
Очевидно те, на которые не распространяется понятие интерфейса.
какой интерфейс у a+b? вот вам пример полиморфизма. Шоб вы знали: полиморфизм енто разная интепретация одной и той же команды ли операции ли при одной и той же записи. теперь знаете
ага значит по вашему никакого изменения функциональности ваще не бывает
Из чего Вы сделали подобный вывод? Я обсуждал вопрос динамического изменения функциональности без переписывания кода и перекомпиляции, а не... способности программистов по изменению функциональности.
конечные автоматы енто пример динамического изменения функциональности без переписывания кода и перекомпиляции. опять же шоб знали. примите мои соболезнования...
№ 4094 23-12-2005 04:33 | |
Ответ на »сообщение 4092« (info21)
___________________________
>> Банальная необходимость -- твердая опора среди... идей.
Наверное, все же... не опора, а стартовая точка, то что заставляет задуматься...
Для старта нужна... опора.
И не только для... старта...
Для старта нужен импульс. Стартовать, по большому счету, можно и из состояния невесомости. Ну, да, не суть...
№ 4093 23-12-2005 04:27 | |
Ответ на »сообщение 4086« (sdf)
___________________________
у класса есть интерфейс и свойства значит они полиморфные. у модуля тоже интерфейс и тоже свойства и тоже полиморфные, так получается? а какие тода свойства неполиморфные?
Очевидно те, на которые не распространяется понятие интерфейса.
В. Динамическое изменение функциональности
Это замена колес автомобиля... во время движения. Любители экстрима могут занимать очередь :)
и как замена колес влияет на изменение функциональности?
Все зависит от того, на что заменяют колеса. Если, например, на воздушную подушку, лыжи или еще что-то... иное, то функциональность, действительно, может измениться. Хотя, наверное, пример не очень удачный...
ага значит по вашему никакого изменения функциональности ваще не бывает
Из чего Вы сделали подобный вывод? Я обсуждал вопрос динамического изменения функциональности без переписывания кода и перекомпиляции, а не... способности программистов по изменению функциональности.
ну ну. пишу движок куда грузяться только данные. конечные автоматы, может слыхали? сначалу гружу одно, работаю. потом гружу другое, работаю. никакой функциональности не поменялось? маразм полный!
Сочувствую...
№ 4092 23-12-2005 03:51 | |
Ответ на »сообщение 4082« (ASU)
___________________________
Ответ на »сообщение 4078« (info21)
___________________________
а банальной необходимостью.
Вот.
Банальная необходимость -- твердая опора среди... идей.
Наверное, все же... не опора, а стартовая точка, то что заставляет задуматься...
Для старта нужна... опора.
И не только для... старта...
Отслеживать это обсуждение
Дополнительная навигация: |
|