Re[18]: Общий делитель
От: VladD2 Российская Империя www.nemerle.org
Дата: 29.10.04 16:58
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Минимальный набор — это, пожалуйста, в Лисп. Тем более, что CLOS уже содержит объекты.

К>Там нет ни указателей, ни ссылок, ни вообще ничего такого. И всё работает

К>Так что позволь усомниться в твоём заклинании.


Дак он не императивный. Хотя нет. И в Лисп проникли гнилые порасли императившины.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Может, все таки общий множитель?
От: Mamut Швеция http://dmitriid.com
Дата: 29.10.04 17:22
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Сергей Губанов, Вы писали:


СГ>>Потому что Оберон построен на фундаментальных принципах и не скоро еще устареет. Он содержит минимальный набор концепций, которые так или иначе всегда будут отображаться в других языках. Он является их "общим делителем".


VD>Они из этих принципов процентов 10% знает. В общем, зачем вместо математики учить общие делители я не понял.


Может, все таки общий множитель?
Общтий делитель только один — 1 (единица). На ноль, как известно, делить нельзя. А с одной единицей много не сделаешь
... << RSDN@Home 1.1.4 beta 3 rev. 185>>


dmitriid.comGitHubLinkedIn
Re[17]: Мощность...
От: prVovik Россия  
Дата: 29.10.04 18:36
Оценка: 18 (1) +1
Здравствуйте, VladD2, Вы писали:


VD>Проблема же этого другого языка в том, что в нем невозможно обхадиться исключительно ссылками и приходится скатываться к динамическому заему памяти и работе с указателями.


А может, это от того, что понятие "ссылка" в С++ и С# обозначает немного разные концепции?

В С# ссылка — это механизм косвенного доступа к некоторому неконкретизированному объекту. Такая ссылка может в разное время может указывать на разные объекты, а можит и вообще никуда не указывать.

В С++ ссылка — это механизм непосредственного доступа к конкретному объекту. Это псевдоним для существующего объекта, однозначно идентифицирующий этот объект на протяжении всего времени существования такого псевдонима.

ИМХО, понятия ссылки в С++ и C# концептуально неэквивалентны, их различия принципиальны, и это не просто различия в реализации.

VD>Тут же чистая концепция позволяющая просто не обращать внимание на реализацию. Все просто, прозрачно, быстор...

А зря. Ибо очень часто различие в реализации принципиально. По этой причине в С++ часто рекомендуют вместо ссылок импользовать константные указатели, дабы явно выделить в тексте программы факт косвенного доступа к объекту. К этому требованию можно относиться по разному, но то, что оно не лишено смысла — это однозначно.
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re[26]: Что дают шаблоны?
От: prVovik Россия  
Дата: 29.10.04 19:09
Оценка: 18 (1)
Здравствуйте, VladD2, Вы писали:

VD>Указатели зе так и остаются указателями не зависимо от того на что ни указывают.

Если ты об указателях С++, то это не так. В стандарте, на сколько я помню, четко оговорено, что может существовать только указатель, ссылающийся на реально существующий объект соответствующего типа, либо не ссылающийся вообще никуда, то есть имеющий значение NULL. Другими словами, указатель не может ссылаться куда угодно.

Вся семантическая разница между указателями С++ и ссылками C# только в том, что с указателями С++ можно проводить дополнительно две операции. А именно:
1) в случае, если указатель ссылается на элемент массива, то через него можно получить указатель на другой элемент того же массива.
2) вычисление distance между двумя указателями, ссылающимися на элементы одного массива.
На этом вся разница, вроде, закончилать.

P.S.: да, я знаю, что еще может существовать указатель на элемент, следующий за последним элементом массива, но это отдельный случай.
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re[25]: Что дают шаблоны?
От: prVovik Россия  
Дата: 29.10.04 19:27
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Sinclair, Вы писали:


S>>размерность пространства программ


VD> А шо цэ за звэрь?


Думаю, что Сергей имеет ввиду (или подразумевает) порядок бесконечности (вспоминаем математику), но в своих рассуждениях он, неправ. Никакие процедуры и ф-ции этого порядка не меняют, ибо, как не раз уже тут отмечали, любую структурно-ориентированную программу можно перевести в аналогичную ей программу для машины Тьюринга, в которой этих процедур и ф-ций нет. А весь смысл именно в удобстве программиста.
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re: Может, все таки общий множитель?
От: VladD2 Российская Империя www.nemerle.org
Дата: 29.10.04 19:27
Оценка:
Здравствуйте, Mamut, Вы писали:

M>Может, все таки общий множитель?


Действительно... может... хотя...
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[19]: Общий делитель
От: prVovik Россия  
Дата: 29.10.04 20:26
Оценка: 17 (1) :)
Здравствуйте, VladD2, Вы писали:

VD>Дак он не императивный. Хотя нет. И в Лисп проникли гнилые порасли императившины.


Кстати, хочу рассказать, как я изучал в универе лисп.
Но начну рассказ на семестр раньше, когда у нас был предмет "логическое программирование", на основе пролога.

Предмет начинался размеренно, преподаватель рассказывал и показывал базовые принципы, вобщем было скучно. Но после окончания нашей начальной подготовки, он сделал нам "фейсом об тейбл", показав сортировку пузырьком на прологе(!!!), и придупредив, что это обязательный вопрос на экзамене... Ломка сознания была страшной!!! Программа была крохотной: всего несколько строчек, но она совершенно не лезла в голову. Короче, разобравшись с этими рекурсивно определенными правилами, я, наконец, понял, что такое декларативное программирование, и, в частности, пролог. Затем, на экзамене были всякие алгоритмические задачки в одну-две строчки кода типа вычисления пересечения, или разности списков. Проблем с ними не было, так как я уже "думал на прологе".

В следующем семестре у нас было "Функциональное программирование" и, соответственно, язык лисп. Вел его, кстати, уже другой преподаватель. Были лабораторные, я писал программы на лиспе, но не мог понять одного: что же означает это загадочное словосочитание "функциональное программирование" и чем оно отличается от обычного? Я писал на лиспе точно такие же программы, какие я писал бы на обычном языке программирования. Практически один в один. Разве что рекурсия чаще использовалась, но я ейю и в обычной жизни не брезговал. Не мог понять, почему запись "имя_функции(параметры)" нефункциональна, а запись "(имя_функции параметры)" функциональна. На паскале я писал: "a := a + 1;", а на лиспе: "(setq a (+ a 1))". Короче, те же яйца, но дебильный синтаксис. Разницы между парадигмами программирования не было видно. Так, по окончанию этого курса я не мог внятно объяснить, чем же функциональное программирование отличается от обычного? Понял я это лишь через время, и оказалось, что дело совсем не в синтаксисе ...

Так вот, вспоминая свой печальный опыт изучения функционального программирования, у меня сейчас не поднимается язык назвать лисп функциональным. Ну не ассоциируется он...
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re[20]: Общий делитель
От: VladD2 Российская Империя www.nemerle.org
Дата: 29.10.04 22:14
Оценка:
Здравствуйте, prVovik, Вы писали:
...
V> Так вот, вспоминая свой печальный опыт изучения функционального программирования, у меня сейчас не поднимается язык назвать лисп функциональным. Ну не ассоциируется он...

Нада... вашим преподам нужно было по шее настучать.

Но в общем, ты прав. Можно и на Лиспе (отце всех ФЯ) писать в императивном стиле, и на Шарпе в функциоанльном.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[21]: Общий делитель
От: Mamut Швеция http://dmitriid.com
Дата: 29.10.04 22:47
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, prVovik, Вы писали:

VD>...
V>> Так вот, вспоминая свой печальный опыт изучения функционального программирования, у меня сейчас не поднимается язык назвать лисп функциональным. Ну не ассоциируется он...

VD>Нада... вашим преподам нужно было по шее настучать.


VD>Но в общем, ты прав. Можно и на Лиспе (отце всех ФЯ) писать в императивном стиле, и на Шарпе в функциоанльном.


И еще здесь
Автор: Mamut
Дата: 28.10.04
(на правах саморекламы )
... << RSDN@Home 1.1.4 beta 3 rev. 185>>


dmitriid.comGitHubLinkedIn
Re[11]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: Borisman2 Киргизия  
Дата: 30.10.04 05:56
Оценка:
Развели тут....релизиозную войну....
Java vs C++

Хотя если Вы взглянете в самое начало, предполагалось, что Вы разведете религиозную войну
Modula2(3)+Oberon vs Java+C++

Не в том направлении удара смотрите, товарищи бойцы ))))

А вообще-то тема очень провокационная. Как обычно, тов. Вирт воюет с призраками Кернигана и Ритчи.
Re[27]: Что дают шаблоны?
От: Schade Россия  
Дата: 30.10.04 10:02
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Честно говря Фортрана никогда не видел. А как же на нем без переменных живут?


Ну, кажется переменные там есть, точнее, реализуются стандартными средствами языка. А вообще-то и без них можно обходится — все сидит в стеке.
... << RSDN@Home 1.1.4 @@subversion >>
Re[28]: Что дают шаблоны?
От: FR  
Дата: 30.10.04 11:15
Оценка: +1
Здравствуйте, Schade, Вы писали:

S>Здравствуйте, VladD2, Вы писали:


VD>>Честно говря Фортрана никогда не видел. А как же на нем без переменных живут?


S>Ну, кажется переменные там есть, точнее, реализуются стандартными средствами языка. А вообще-то и без них можно обходится — все сидит в стеке.


Вы Форт с Фортраном не путайте.
... << RSDN@Home 1.1.3 stable >>
Re[29]: Что дают шаблоны?
От: Schade Россия  
Дата: 30.10.04 11:33
Оценка: +1
Здравствуйте, FR, Вы писали:

FR>Вы Форт с Фортраном не путайте.


Угу. И Гоголя с Гегелем. Речь так и идет о Форте, Влад просто опечатался, разве не видно?
... << RSDN@Home 1.1.4 @@subversion >>
Re[26]: Имена модулей vs namespace
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 31.10.04 07:50
Оценка:
Здравствуйте, Кодт, Вы писали:

К>В .Net есть встроенные способы борьбы с library hell'ом. И это вовсе не длинные_мнемонические_идентификаторы, а номера версий и цифровые подписи сборок.


Вот и я про то же самое — namespace тут ни при чем.
Re[32]: У дел
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 31.10.04 08:01
Оценка: -1
Здравствуйте, Кодт, Вы писали:

К>... с Обероном. Тоже, кажется, передовой язык и всё такое... Но не у дел.


Есть такой феномен в человеческой психике. Берут 10 человек, причем 9 из них подсадные. Показывают две палочки примерно одинаковой длины и спрашивают какая из них длиннее. 9-теро подсадных показывают на короткую палку и говорят что она длиннее. В большинстве случаев испытуемый тоже как и все показывает на короткую палку и тоже говорит что она длиннее. К чему я это привел. А тут на RSDN примерно такая же ситуация. Есть порядка десятка человек твердящих что оберонов нет. Вот и Вы. Кодт, тоже в это поверили. А Вы лучше гляньте ссыли и сами убедитесь "у дел он или не удел":

http://cern.ch/oberon.day

Свежие аэрокосмические новости: http://www.prweb.com/releases/2004/9/prweb160825.php (Excelsior — (бывший XDS) разработчик компиляторов модулы и оберона).

Кстати, сам не давно узнал — на Обероне-2 написана ОС реального времени XO/2, управляющая роботами контроля дорожного движения, расставляемыми в данный период по всей Швейцарии.

Да Вы и сами можете покопаться в интернете по ключевым словам Modula, Oberon...
Re[26]: *
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 31.10.04 08:05
Оценка:
Здравствуйте, VladD2, Вы писали:

VD> Как я понял модули в Обероне вложенными быть не могут.


Разумеется не могут.

Как можно одну DLL-ку вложить внутрь другой DLL-ки? Как система будет их динамически загружать/выгружать? Ножницами разрезать бинарник на куски, выкорчевывать машинный код и загружать???
Re[24]: Модуль - единица инкапсуляции
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 31.10.04 08:09
Оценка:
Здравствуйте, Schade, Вы писали:

S> .NETовские сборки


Мне не понятен смысл Вашего сообщения. .NETовские сборки это NETовские модули. И в чем проблема-то? Вам не нравится то что я использую термин "модуль" вместо термина "сборка"?
Re[22]: Среда исполнения и загрузчик
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 31.10.04 08:11
Оценка:
Здравствуйте, Кодт, Вы писали:

К> Чаво???


В чем состоит смысл Вашего сообщения?
Re[28]: Что дают шаблоны?
От: VladD2 Российская Империя www.nemerle.org
Дата: 31.10.04 08:19
Оценка:
Здравствуйте, Schade, Вы писали:

S>Ну, кажется переменные там есть, точнее, реализуются стандартными средствами языка. А вообще-то и без них можно обходится — все сидит в стеке.


Вот и хотелось бы поглядеть на то как можно жить без переменных в ИЯ.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[27]: *
От: VladD2 Российская Империя www.nemerle.org
Дата: 31.10.04 09:16
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Разумеется не могут.


СГ>Как можно одну DLL-ку вложить внутрь другой DLL-ки?


Вообще-то могут. Но тут дело то в рдугом.

Я попопробую объяснить по доходчивее

ЭТО УБОГОСТЬ!

СГ> Как система будет их динамически загружать/выгружать? Ножницами разрезать бинарник на куски, выкорчевывать машинный код и загружать???


Тебя тут как-то просили объяснить что такое модуль. Ты начал петь какую-то фигню. Сейчас ты поешь другую. Так как ты объяснишь эти модули детям? А ведь при всем при этом концепция примитивно и пользоваться ее на практике будет крайне неудобно. Вложенные пространства имен куда удобнее. А разбиение на модули куда удобнее делать именно на уровене исполняемых файлов. Зачем мне грузить отдельно еденицу видимости кода???
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.