Оберон-технология: особенности и перспективы |
Тематика обсуждения: Оберон-технология. Особенности, перспективы, практическое применение.
Всего в теме 6256 сообщений
Добавить свое сообщение
Отслеживать это обсуждение Обсуждение из раздела Школа ОБЕРОНА
№ 5426 10-10-2007 03:16 | |
Ответ на »сообщение 5425« (Руслан Богатырев)
___________________________
Если элементы связаны - система.
№ 5425 10-10-2007 02:45 | |
Ответ на »сообщение 5421« (AVC)
___________________________
Вот статья на тему "Оценка сложности системы":
http://www.ait.org.ua/p/pub_podhod.html
IMHO, несколько занудная; но, может быть, кого-нибудь наведет на полезные мысли.
Насчет полезных мыслей... Сначала неплохо бы понять, что есть система, а что есть не-система. На мой взгляд, здесь ситуация обстоит весьма туманным образом. В принципе этот момент уже продумывал, но интересно мнение других. Скажите, система уравнений -- это система? Система периодических элементов Д.И.Менделеева -- это система? Вопрос не праздный.
№ 5424 10-10-2007 02:42 | |
Ответ на »сообщение 5423« (Илья Ермаков)
___________________________
И это логично - случайное совпадение размерностей массивов ещё ничего не говорит об их совместимости. Завтра, может быть, в Bar размер 4 будет изменён на 5 :-)
Логично предположить, что когда будет изменен, тогда и возникнет ошибка, о которой просигнализирует компилятор. Впрочем, и существующий порядок имеет право на жизнь. В общем, это проблема поиска разумного баланса между именной и структурной эквивалентностью.
№ 5423 10-10-2007 01:06 | |
Ответ на »сообщение 5422« (AVC)
___________________________
BTW, в синтаксисе Оберона наблюдается, на мой взгляд, некоторое отсутствие логики в части передачи массивов в качестве аргументов процедуры.
Допустим, вы завели массивVAR a: ARRAY 4 OF REAL;
Вы сможете передать его в качестве аргумента процедуреPROCEDURE Foo(VAR a: ARRAY OF REAL);
но не сможете передать процедуреPROCEDURE Bar(VAR a: ARRAY 4 OF REAL);
Так это правило совместимости массивов. Массивы совместимы тогда и только тогда, когда явно отнесены к одному типу (отдельно объявленному, т.е. переменные будут иметь один тег типа), либо когда параметр объявлен как открытый массив.
И это логично - случайное совпадение размерностей массивов ещё ничего не говорит об их совместимости. Завтра, может быть, в Bar размер 4 будет изменён на 5 :-)
№ 5422 09-10-2007 17:00 | |
BTW, в синтаксисе Оберона наблюдается, на мой взгляд, некоторое отсутствие логики в части передачи массивов в качестве аргументов процедуры.
Допустим, вы завели массив VAR a: ARRAY 4 OF REAL;
Вы сможете передать его в качестве аргумента процедуре PROCEDURE Foo(VAR a: ARRAY OF REAL);
но не сможете передать процедуре PROCEDURE Bar(VAR a: ARRAY 4 OF REAL);
№ 5421 09-10-2007 16:52 | |
№ 5420 09-10-2007 09:04 | |
№ 5419 09-10-2007 04:44 | |
Спасибо за все отклики на наивный вопрос о сложности.
Буду думать дальше.
Полагаю, цель не в том, чтобы дать "схоластическое" определение сложности (например, Буч начинает свою известную книгу с раздела о сложности, но определения так и не дает), а в том, чтобы сформулировать критерии оценки управляемости сложной системы.
Есть же ряд более-менее универсальных критериев деления программных систем на части (подсистемы, компоненты и т.п.). Например, ортогональность и отсутствие повторов (в разных вариантах: (a) DRY = Don't Repeat Yourself ("Pragmatic programmer") и (b) OAOO = Once And Only Once ("Exteme programming explained").
Есть также известные критерии модульности: coupling/cohesion.
План такой: максимально объективно сформулировать критерии, а потом уже применить их к разным языкам (в т.ч. Оберонам) с целью научиться определять достоинства и недостатки языков для построения сложных систем.
№ 5418 09-10-2007 02:04 | |
Ответ на »сообщение 5417« (Руслан Богатырев)
___________________________
Программирование связано с созданием программ и программных систем. Вот от систем я и предложил бы Вам начинать.
От людей надо начинать, от людей :)) Для кого вы собрались сложность укрощать ? Для марсиан что ли ?
№ 5417 09-10-2007 01:02 | |
Ответ на »сообщение 5415« (AVC)
___________________________
Как вы думаете, что такое сложность?
(Извините, если вопрос и правда глупый.)
Вопрос очень даже непростой. Предлагаю подходить к нему с разных сторон. Природа сложности разная. Сложное с одной позиции может не быть таковым с другой. Но в любом случае сложность (по крайней мере та, которая нас интересует) имеет отношение к мышлению.
Программирование связано с созданием программ и программных систем. Вот от систем я и предложил бы Вам начинать.
Добавить свое сообщение
Отслеживать это обсуждение
Дополнительная навигация: |
|