Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Выбор одного из диалектов Prolog, Определение качеств всех диалектов 
:(
    Опции темы
Terrika
Дата 13.2.2010, 00:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 30.12.2009

Репутация: нет
Всего: нет



Здравствуйте, дорогие форумчане!
На днях я решил заняться Прологом... Но вот меня поразило обилие диалектов этого языка.
Я хотел бы подобрать под мои нужды какой-нибудь диалект, на худой конец два:
1. Межплатформенность
2. Исходный код нормален
3. Чтоб я видел программу после компиляции.

С уважением.
З.Ы. Только не сильно пинайте меня. 
PM MAIL   Вверх
Фантом
Дата 13.2.2010, 01:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Terrika @  13.2.2010,  00:39 Найти цитируемый пост)
На днях я решил заняться Прологом... Но вот меня поразило обилие диалектов этого языка.
Я хотел бы подобрать под мои нужды какой-нибудь диалект, на худой конец два:
1. Межплатформенность
2. Исходный код нормален
3. Чтоб я видел программу после компиляции.

Возьмите SWI-Prolog. Это один из лучших вариантов, причем он свободно распространяется. Реализует наиболее стандартный (т.н. "эдинбургский") диалект языка.

Конкретно по пунктам:
1) Windows, Linux, MacOS X. При желании можно собрать и для чего-нибудь другого, благо имеются исходники.
2) См.выше. Хотя, в принципе, по этому пункту подходит почти все, за исключением Turbo Prolog и его потомков (PDC, Visual Prolog).
3) Не понял смысла пожелания. 
PM   Вверх
Грымзик
Дата 13.2.2010, 01:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 7.10.2009

Репутация: 6
Всего: 6



Я согласна, берите SWI Prolog. Самые распространенные это он и Visual Prolog.
Если у последнего и есть какие-то преимущества относительно SWI, то я думаю,
что если Вы с ними и выстретитесь, то очень не скоро, я лично с ними не встречалась.
Зато есть сразу же вылезающий недостаток, связанный с загромождением кода. 
PM MAIL   Вверх
Terrika
Дата 13.2.2010, 01:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 30.12.2009

Репутация: нет
Всего: нет



Ой, извини...

Например, после компиляции получился бы EXE-файл
PM MAIL   Вверх
Фантом
Дата 13.2.2010, 01:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Terrika @  13.2.2010,  01:30 Найти цитируемый пост)
Например, после компиляции получился бы EXE-файл 

А, ясно.  smile Это тоже есть.

Цитата(Грымзик @  13.2.2010,  01:29 Найти цитируемый пост)
Если у последнего и есть какие-то преимущества относительно SWI, то я думаю, что если Вы с ними и выстретитесь, то очень не скоро, я лично с ними не встречалась.
Зато есть сразу же вылезающий недостаток, связанный с загромождением кода.  

Я бы выразился сильнее - Visual Prolog, строго говоря, попросту не является Прологом. Это некий другой язык, имеющий достаточно смутное отношение к оригиналу.


PM   Вверх
Terrika
Дата 13.2.2010, 01:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 30.12.2009

Репутация: нет
Всего: нет



Цитата(Фантом @  13.2.2010,  01:37 Найти цитируемый пост)
Например, после компиляции получился бы EXE-файл 

А, ясно.   Это тоже есть.


Вот именно, но какой диалект подойдет?

PM MAIL   Вверх
Фантом
Дата 13.2.2010, 01:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Terrika @  13.2.2010,  01:41 Найти цитируемый пост)

Вот именно, но какой диалект подойдет?

Я имел в виду, что SWI-Prolog это умеет.
PM   Вверх
Terrika
Дата 13.2.2010, 02:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 30.12.2009

Репутация: нет
Всего: нет



А Визуал Пролог?

Добавлено позже
А Визуал Пролог?
PM MAIL   Вверх
Грымзик
Дата 13.2.2010, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 7.10.2009

Репутация: 6
Всего: 6



Визуал Пролог умеет.
Фантом, а я не знала что SWI создает экзешники. Куда он их кладет?

PM MAIL   Вверх
Фантом
Дата 13.2.2010, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Грымзик @  13.2.2010,  18:51 Найти цитируемый пост)
а я не знала что SWI создает экзешники. Куда он их кладет?

Полагаю, туда же, где лежит исходник (проверить не могу, поскольку версии под Windows, равно как и самой Windows, не имеется). Попробуйте запустить pl -g <основная цель> -c <имя файла с программой>.
PM   Вверх
Грымзик
Дата 13.2.2010, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 7.10.2009

Репутация: 6
Всего: 6



Нет, в папку с исходником точно не кидает. Проверила папку на диске С,
где установлен компилятор, может там есть папка для экзешников, 
в визуале так делается, но я там тоже ничего не нашла. Потом есть папка
для открытия/сохранения файлом по умолчанию, она тоже пуста.
pl -g <основная цель> -c <имя файла с программой> сделать не могу,
в винде в компиляторе можно только запросы после ?- вводить.
А что, в линуксе исполняемый файл создается?
PM MAIL   Вверх
Фантом
Дата 13.2.2010, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Грымзик @  13.2.2010,  21:41 Найти цитируемый пост)
в винде в компиляторе можно только запросы после ?- вводить.

Странно. По идее, оба варианта должны быть идентичными.

Цитата(Грымзик @  13.2.2010,  21:41 Найти цитируемый пост)
А что, в линуксе исполняемый файл создается? 

Да, конечно.
PM   Вверх
Винитарх
Дата 16.2.2010, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 21.1.2007

Репутация: нет
Всего: нет



Цитата(Грымзик)
Зато есть сразу же вылезающий недостаток, связанный с загромождением кода.
Это не есть недостаток современного языка программирования. Или Вы хотите сказать, что Си-шарп или Дельфи тоже имеют этот недостаток???
Цитата(Фантом)
Я бы выразился сильнее - Visual Prolog, строго говоря, попросту не является Прологом. Это некий другой язык, имеющий достаточно смутное отношение к оригиналу.
Это не сильнее. Это просто неправильно. Visual Prolog - это Пролог. То, что он вышел за рамки ISO является объективной причиной его достоинств:
- непревзойдённая скорость исполнения программ
- надёжность и безопасность кода
- развитый GUI
- возможность программирования с использованием современных парадигм функционального и императивного программирования
- наличие огромной библиотеки, ставящей его на один уровень с такими монстрами, как С# и Delphi и проч.



Это сообщение отредактировал(а) Винитарх - 16.2.2010, 13:12
PM MAIL   Вверх
Фантом
Дата 16.2.2010, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Винитарх @  16.2.2010,  12:56 Найти цитируемый пост)
Это не сильнее. Это просто неправильно. Visual Prolog - это Пролог. То, что он вышел за рамки ISO является объективной причиной его достоинств:

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

При этом перечисленные достоинства, вообще говоря, либо не являются достоинствами, либо их наличие само по себе спорно:
1) Непревзойденная скорость исполнения программ - это, конечно, плюс. Правда, можно спорить о том, обладает ли им VP.
2) Надежность и безопасность кода - в чем именно она выражается?
3) Развитый GUI - да. Только любая внешняя библиотека сделает это не хуже, да и работает вся эта кухня (как, впрочем, и сам компилятор) только под одной ОС.
4) Возможность программирования с использованием современных парадигм функционального и императивного программирования - это не достоинство, это недостаток. Языков-солянок, в которых намешаны все концепции, о которых слышали их создатели, и так больше, чем требуется.
5) Наличие огромной библиотеки - это, конечно, тоже плюс. Но тут то же замечание, что и в п.3 - непереносимость ее сильно обесценивает.
PM   Вверх
Грымзик
Дата 16.2.2010, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 7.10.2009

Репутация: 6
Всего: 6



Винитарх, я считаю, что это недостаток, потому что я никак
не могу понять зачем это надо, если можно без этого.
Я конечно особенности visual prolog не знаю, но я не могу себе
представить, чтобы где-то вот эти лишние описания сыграли
бы положительную роль. По поводу Си-шарп и Делфи особо ничего сказать
не могу, я с каждым из них всего пару раз дело имела, но все-таки уже от этого
опыта сложилось впечатление, что можно было бы поубавить. Зачем например в 
шарпе делать чтобы мейн был членом какого-то класса, почему как в С/С++ нельзя.


PM MAIL   Вверх
Винитарх
  Дата 17.2.2010, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 21.1.2007

Репутация: нет
Всего: нет



Цитата(Фантом)
1) Непревзойденная скорость исполнения программ - это, конечно, плюс. Правда, можно спорить о том, обладает ли им VP.
На нашем форуме проводились сравнения VIP vs SWI. Ест-но не в пользу SWI. SWI  не только уступил в скорости на порядки, он просто глючил на тех исходных данных, на каких VIP прекрасно работал. А вычисляли мы функцию Аккермана.
Цитата(Фантом)
2) Надежность и безопасность кода - в чем именно она выражается?
В строгой типизации. Львиная доля ошибок вылавливается на этапе компиляции. В SWI ест-но типизации нет и на этапе проектирования нельзя проверить надёжность программы, только на этапе исполнения путём тестирования. Но кто ж проводит ПОЛНОЕ тестирование? Да никто!
Цитата(Фантом)
3) Развитый GUI - да. Только любая внешняя библиотека сделает это не хуже, да и работает вся эта кухня (как, впрочем, и сам компилятор) только под одной ОС.
Это всё слова. Напишите на SWI к примеру СУБД для внутренней БД и прочуствуйте разницу во времени и затраченных усилиях между SWI и VIP.
Цитата(Фантом)
4) Возможность программирования с использованием современных парадигм функционального и императивного программирования - это не достоинство, это недостаток.
Это большое достоинство. Потому что эти возможности факультативны. Не нравится - не используйте. Оставайтесь в рамках синтаксиса Турбо Пролога, который, как я увидел по Вашему форуму, Вы знаете. Никто, как говорится не принуждает.
Цитата(Фантом)
5) Наличие огромной библиотеки - это, конечно, тоже плюс. Но тут то же замечание, что и в п.3 - непереносимость ее сильно обесценивает.
Да переносимости в VIP7 нет. Она осталась только в VIP5. Но всё же это уже не пятый, а шестой пункт, в котором VIP уступает SWI.
Итого счёт 5:1 в пользу Visual Prolog7.2.  smile 

Цитата(Грымзик)
Винитарх, я считаю, что это недостаток, потому что я никак
не могу понять зачем это надо, если можно без этого.
Дык в том то и дело, что в VIP7.2 можно писать по старинке, как писали в Турбо Прологе, без всяких изысков. Никто же Вас не заставляет! Однако иметь прямой доступ, например, к данным в Oracle без обращения к чужим библиотекам, это - заманчиво.


PM MAIL   Вверх
Фантом
Дата 17.2.2010, 01:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Винитарх @  17.2.2010,  00:23 Найти цитируемый пост)
На нашем форуме проводились сравнения VIP vs SWI. Ест-но не в пользу SWI. SWI  не только уступил в скорости на порядки, он просто глючил на тех исходных данных, на каких VIP прекрасно работал. А вычисляли мы функцию Аккермана.

А это разве задача для декларативного языка? Хотя бы для функционального - да. VIP действительно в этом отношении более универсален, но мы так и не определились, почему это следует считать достоинством. А на "родных" для Пролога задачах разница в быстродействии, пожалуй, невелика (хотя она, не буду возражать, действительно в пользу VIP).

Заодно, кстати, не дадите ссылку на сравнение? Не поймите превратно, мне просто интересно посмотреть на более детальное описание результатов.

Цитата(Винитарх @  17.2.2010,  00:23 Найти цитируемый пост)
В строгой типизации. Львиная доля ошибок вылавливается на этапе компиляции. В SWI ест-но типизации нет и на этапе проектирования нельзя проверить надёжность программы, только на этапе исполнения путём тестирования. Но кто ж проводит ПОЛНОЕ тестирование? Да никто!

Да, пожалуй, тут соглашусь. Хотя та же типизация (она в VIP, кстати, не слишком уж строгая, до какой-нибудь Ады ему очень далеко) - это существенно противоречащее исходной идее свойство. Получившийся результат, возможно, и лучше, но он не является Прологом. Скорее он заполняет экологическую нишу Хаскеля и т.п., но при этом, пожалуй, излишне громоздок.

Цитата(Винитарх @  17.2.2010,  00:23 Найти цитируемый пост)
Это всё слова. Напишите на SWI к примеру СУБД для внутренней БД и прочуствуйте разницу во времени и затраченных усилиях между SWI и VIP.

А зачем? Это просто еще одна задача, которую не надо решать на Прологе. Да, если хочется все сразу сделать на одном языке, то в случае SWI это будет посложнее, но подобное желание не вполне естественно.

Цитата(Винитарх @  17.2.2010,  00:23 Найти цитируемый пост)
Это большое достоинство. Потому что эти возможности факультативны. Не нравится - не используйте. Оставайтесь в рамках синтаксиса Турбо Пролога, который, как я увидел по Вашему форуму, Вы знаете. Никто, как говорится не принуждает.

Кхм... а что понимается под "моим форумом"? 

Знаете, то, что в языке есть нечто, чем я не хочу пользоваться, для меня не является достоинством. smile Правда, я не предпочитаю Turbo/PDC VIP'у, к первому все сказанное ранее относится примерно в той же степени, что и ко второму. Турбо Пролог я действительно знаю - точнее, знал лет 15-20 назад, а сейчас уже многое успел забыть (к VIP, впрочем, относится то же самое, только воспоминания посвежее). Однако уже лет десять как минимум я попросту не вижу задач, к которым их можно было бы приспособить. Попытки писать все на Прологе явно нелепы - проще собрать гетерогенный проект, написав все, кроме системы логического вывода, на чем-нибудь другом. Собственно прологовские задачи пишутся на SWI быстрее и эффективнее (а скорость разработки в этих случаях, как правило, ценнее скорости выполнения), стыковать их с чем-то другим проще. Ну и закладываться на Windows и коммерческий компилятор с особенностями, меняющимися от версии к версии, я не хочу даже бесплатно.

Цитата(Винитарх @  17.2.2010,  00:23 Найти цитируемый пост)
Да переносимости в VIP7 нет. Она осталась только в VIP5. Но всё же это уже не пятый, а шестой пункт, в котором VIP уступает SWI.
Итого счёт 5:1 в пользу Visual Prolog7.2.

Я бы сказал, что он не шестой, а нулевой. Допустим, написал я некую программу на VIP в 1999 году (пример, кстати, совершенно реальный), и что я с ней сейчас буду делать? Инструмент импорта старых проектов, конечно, есть, но он, мягко говоря, кривоват. На нынешних версиях Windows все это дай бог если вообще как-то запустится. А программа и сейчас представляет ценность, причем вариант "выкинуть и написать заново" не стоит рассматривать - слишком сложно.

В реальности, правда, и пришлось переписывать. Но в расчете на SWI и под Linux, с другими обертками. Но то, что получилось, и сейчас успешно крутится на разных платформах, и я не думаю о том, что завтра разработчик компилятора еще что-то поменяет и мне придется лихорадочно думать, что и где в коде более чем десятилетней давности при этом отвалится.

Цитата(Винитарх @  17.2.2010,  00:23 Найти цитируемый пост)
Дык в том то и дело, что в VIP7.2 можно писать по старинке, как писали в Турбо Прологе, без всяких изысков. Никто же Вас не заставляет! Однако иметь прямой доступ, например, к данным в Oracle без обращения к чужим библиотекам, это - заманчиво.

Ну совсем уж по старинке не получится. А заманчивости неиспользования сторонних библиотек (если они есть и достаточно хорошо сделаны) я, откровенно говоря, не понимаю. Помимо всяких частных соображений, есть одно стандартное общее - универсальный комбайн умеет делать все, но, как правило, каждую конкретную вещь он делает хуже, чем специализированный инструмент. 
PM   Вверх
Винитарх
Дата 18.2.2010, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 21.1.2007

Репутация: нет
Всего: нет



Цитата(Фантом)
Кхм... а что понимается под "моим форумом"?
Этот форум. Ведь Вы ж активность свою на нём проявляете, а не каком-нить другом форуме по Прологу.
Цитата(Фантом)
Знаете, то, что в языке есть нечто, чем я не хочу пользоваться, для меня не является достоинством.
Но и не может являться недостатком. Оно ж не мешает. Можно об императивных и функциональных парадигмах просто забыть напрочь. smile
Цитата(Фантом)
Собственно прологовские задачи пишутся на SWI быстрее и эффективнее 
Неправда. Например прога транслитерации русского текста английскими буквами (вполне проложная задача) пишется на VIP в пол строчки, а на SWI dj сколько это выйдет? Не берём в расчёт базу для замен, которая на VIP и на SWI будет практическиодинаковой.
Цитата(Фантом)
Помимо всяких частных соображений, есть одно стандартное общее - универсальный комбайн умеет делать все, но, как правило, каждую конкретную вещь он делает хуже, чем специализированный инструмент. 
Да я понимаю. На квус и цвет - фломастеры разные. Просто я не разделяю высказывания типа: Visual Prolog - не является Прологом. Аргументы свои я привёл выше. Главная же мысль моя: в Visual Prolog есть бэктрекинг и предикаты - это то, что делает язык именно прологом, независимо от того, что ещё дополнительно реализовано в языке. унификация тоже есть, но она не является для пролога обязательной, имхо. 

PM MAIL   Вверх
Фантом
Дата 18.2.2010, 20:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Винитарх @  18.2.2010,  18:03 Найти цитируемый пост)
Но и не может являться недостатком. Оно ж не мешает. Можно об императивных и функциональных парадигмах просто забыть напрочь.

Необходимость прототипирования предикатов - пожалуй, мешает.

Цитата(Винитарх @  18.2.2010,  18:03 Найти цитируемый пост)
Неправда. Например прога транслитерации русского текста английскими буквами (вполне проложная задача) пишется на VIP в пол строчки, а на SWI dj сколько это выйдет? Не берём в расчёт базу для замен, которая на VIP и на SWI будет практическиодинаковой.

А в чем именно разница? В SWI посимвольная обработка - это те же "полстрочки".

Цитата(Винитарх @  18.2.2010,  18:03 Найти цитируемый пост)
Главная же мысль моя: в Visual Prolog есть бэктрекинг и предикаты - это то, что делает язык именно прологом, независимо от того, что ещё дополнительно реализовано в языке. унификация тоже есть, но она не является для пролога обязательной, имхо. 

Ну, вкус фломастеров у каждого и в самом деле разный. На мой взгляд, механизм унификации является существенным для языка.


PM   Вверх
Винитарх
Дата 20.2.2010, 14:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 21.1.2007

Репутация: нет
Всего: нет



Цитата(Фантом)
Необходимость прототипирования предикатов - пожалуй, мешает.
Вы имеете в виду объявления предикатов? Так они ж повышают надёжность и безопасность кода.
Кстати в Visual Prolog есть так называемые анонимные предикаты, которых в ISO Прологах нет. Поэтому в некоторых случаях писать весь предикат не надо, а только тело.
Цитата(Фантом)
Ну, вкус фломастеров у каждого и в самом деле разный. На мой взгляд, механизм унификации является существенным для языка.
Пусть будет существенным. В VIP то он всё едино есть. Вот поэтому то я и говорю, что Visual Prolog является Прологом, настоящим и полнокровным. Если он Вам не нравится - не используйте. Но говорить, что он не Пролог, выглядит не только неаргументированно, но даже неправильно.


PM MAIL   Вверх
Фантом
Дата 20.2.2010, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Винитарх @  20.2.2010,  14:49 Найти цитируемый пост)
Вы имеете в виду объявления предикатов? Так они ж повышают надёжность и безопасность кода.

Знаете, написание всего кода на Аде повышает эту безопасность еще сильнее. Ада - это тоже разновидность Пролога?

Цитата(Винитарх @  20.2.2010,  14:49 Найти цитируемый пост)
Пусть будет существенным. В VIP то он всё едино есть.

Только очень основательно обрезанный. Фактически допустима унификация только объектов с заранее гарантированной однотипной структурой, что резко снижает ее ценность.
PM   Вверх
Винитарх
Дата 20.2.2010, 20:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 21.1.2007

Репутация: нет
Всего: нет



Цитата(Фантом)
что резко снижает ее ценность.
И одновременно с этим повышает надёжность кода.
Цитата(Фантом)
Знаете, написание всего кода на Аде повышает эту безопасность еще сильнее. Ада - это тоже разновидность Пролога?
У Вас, Фантом, закончились аргументы?  И Вы решили внести долю флейма? 

PM MAIL   Вверх
Фантом
Дата 21.2.2010, 00:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Винитарх @  20.2.2010,  20:00 Найти цитируемый пост)
У Вас, Фантом, закончились аргументы?  И Вы решили внести долю флейма?

Нет, просто довел Ваш аргумент до логического завершения.

Любой язык программирования отличается от других каким-то набором характерных особенностей (вообще говоря, неважно, хороших или плохих). Если у некоторого языка поменять эти характерные особенности на другие (неважно, по каким причинам) - получится другой язык. Возможно, даже более хороший, но другой.

В Прологе нет статической типизации и существенно ограничены императивные возможности. Можно долго и упорно выяснять, хорошо это или плохо, но это так. И если все эти элементы добавить в язык, то получится нечто другое. В конце концов, Erlang почему-то никто не пытается назвать Прологом, хотя его синтаксис, вообще говоря, ближе к Прологу, чем синтаксис VIP.
PM   Вверх
Винитарх
Дата 21.2.2010, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 21.1.2007

Репутация: нет
Всего: нет



Цитата(Фантом)
В Прологе нет статической типизации и существенно ограничены императивные возможности.
Не эти особенности являются сутью Пролога, а предикаты, поиск с возвратом и унификация (хотя по мне две последние можно исключить, но пусть они останутся). Во-первых, то, что добавлено в Visual Prolog нисколько не исказило замысел первых создателей Пролога - программирование в предикатах. Во-вторых, этими добавками можно и не пользоваться, оставаясь в рамках ISO-Пролога, за исключением ряда предикатов, относящихся к анализу структуры термов, который в Visual Prolog просто бессмысленен, так как все термы объявляются на этапе разработки.
Цитата(Фантом)
Нет, просто довел Ваш аргумент до логического завершения.
Логическое завершение ISO-Прологов это Visual Prolog. Те же предикаты, тот же поиск с возвратом, только надёжно, быстро и легко (GUI).
Цитата(Фантом)
В конце концов, Erlang почему-то никто не пытается назвать Прологом, хотя его синтаксис, вообще говоря, ближе к Прологу, чем синтаксис VIP.
Отличие в синтаксисе между ISO-Прологами и Visual Prolog стремится к нулю. Для перевода SWI-программ в VIP-программы достаточно заменить is на знак =, а также слегка подправить предикаты ввода-вывода. Так делается уже много лет на нашем форуме progz.ru. И всё прекрасно работает.
PM MAIL   Вверх
Фантом
Дата 21.2.2010, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 6
Всего: 49



Цитата(Винитарх @  21.2.2010,  19:16 Найти цитируемый пост)
Не эти особенности являются сутью Пролога, а предикаты, поиск с возвратом и унификация (хотя по мне две последние можно исключить, но пусть они останутся).

Ладно, давайте закругляться. Признаться, этот спор слепого с глухим мне уже немного надоел, а поскольку мы придерживаемся разных представлений о том, где проходит граница между диалектом и другим языком, то спорить на эти темы мы можем бесконечно долго.
PM   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума Prolog
Void
  • Пожалуйста, создавайте темы с содержательными названиями.
  • Уважаемые учащиеся, здесь всегда рады помочь Вам, но не делать за Вас вашу работу. У вас гораздо больше шансов получить помощь, если Вы приложите усилия и поделитесь с нами проблемами и результатами. В противном случае добро пожаловать в раздел Центр Помощи.
  • Получив ответ на интересующий Вас вопрос, не забудьте пометить его как решённый.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Prolog | Следующая тема »


 




[ Время генерации скрипта: 0.1552 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.