Как стать автором
Обновить

Комментарии 28

На кой хрен столько букофф? Кому эти динозябры интересны? А Пролог фуфлом оказался, чисто академический высер - потому и сдох.

Эта статья -- дань уважения выдающимся математикам с мировым именем. Они очень много сделали для индустрии программирования.

Что сделали? Набрали грантов, наобещали чуть ли не ИИ - и пшик. Из Пролога ничего не вышло - несколько диалектов еще менее популярных чем сам. Системы перевода естественного языка заработали только с 2003 на нейронных сетях и ничего от Пролога не взяли

А кто конкретно и что именно сделал? Расскажите, пожалуйста.

Это - математика, детка. Теория логического вывода, алгоритмы унификации, автоматическое доказательство теорем и т.д. Для перекладывания JSON-ов и крудошлепства PROLOG, действительно, не нужен )

" автоматическое доказательство теорем " - дяденька, а покажите детке где оно работает?

Вы погуглите для начала :) Область специфическая, сложная. На курсах ускоренной подготовки как-бы "программистов" не преподается. Порог вхождения, как и у всякой настоящей математики, весьма высокий. Использовать не просто. Для стандартного кодинга типовых задач - не нужна. Денег не приносит.

Не заморачиаайтесь: вам оно не нужно. Живите спокойно, без всех этих доказательств теорем.

Сколько букофф потратил чтобы написать "ты тупой"

Живите спокойно, Вам с трона виднее как с людьми общаться

Вы искренне удивляетесь, что пост в Хабе "история IT" посвящён истории IT, или так уныло и неумело троллите?)

Спорить с анонимусом в интернете -- так себе затея, но статей по истории не так много, потому хочется встать на защиту.

Чтобы что-то оказалось фуфлом, это должно быть сделано.

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

И то, что позже какие-то языки "не прошли" проверку временем, не значит, что это было бессмысленно или "оказалось фуфлом". Вовсе нет. Эти исследования выполнили важную роль, подтолкнули других авторов в их движении, в их идеях.

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

Кому эти динозябры интересны?

Мне, например. Если вам что-то другое интересно, а эта тема не зашла, пройдите мимо, не топите автора.

Вот кого они подтолкнули и куда - в статье нет. Вообще нет. Есть только - такой-то поехал туда и потрындел с тем. Нам полагается умиляться

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

Этот грант позволил группе приобрести операционную систему CP‑CMS (Control Program/Cambridge Monitor System) с архитектурой виртуальных машин.

CP CMS нельзя было приобрести, как вы выражаетесь.

CMS это однопользовательская ОС для одной виртуальной машины. ОС для реальной машины называлась VM/370, или позже VM/SP.

И насколько я знаю, она как правило не продавалась. Ее сдавали в аренду вместе с машиной.

Спасибо! Вы совершенно правы! Проверил по мемуарам Алана. Исправил и изложил этот пассаж так:

"Этот грант позволил группе приобрести телетайпный терминал, способный передавать данные между Марселем и Греноблем на сумасшедшей скорости в 300 бит в секунду. Терминал подключили к вычислительной машине IBM System 360–67 c операционной системой CP‑CMS (Control Program/Cambridge Monitor System), поддерживающей архитектуру виртуальных машин."

Отлично. Так похоже на реальность - вряд ли им гранта хватило бы на реальную S/370.

Вот неполный список источников, которыми я пользовался при написании. На самом деле статей примерно в 2 раза больше. Я потом бросил записывать, т.к. библиография стала стремительно приближаться к объёму самой статьи.

1. B. Anderson & P. Hayes, “The logician’s folly”, in the (European) AISB Bull., British Comput. Soc., 1972.

2. R. Boyer & J. Moore, “The sharing of structure in theorem proving programs”, Machine Intelligence 7 (1972), p. 101-116.

3. A. Colmerauer, “Les Systèmes Q ou un Formalisme pour Analyser et Synthétiser des Phrases sur Ordinateur”, Tech. report, Mimeo, Montréal, 1969.

4. M. van Emdem & R. Kowalski, “The Semantics of Predicate Logic as a Programming Language”, Journal of the ACM 23 (1976), no. 4, p. 733-742.

5. J. M. Foster & E. W. Elcock, “Absys1: An incremental compiler for assertions: An introduction”, Machine Intelligence 4 (1969), p. 423-429.

6. C. Green, “Application of theorem-proving to problem-solving”, in Proceedings of First International Joint Conference on Artificial Intelligence, IJCAI’69, Washington D.C., 1969, p. 219-239.

7. “Theorem proving by resolution as a basis for question-answering systems”, Machine Intelligence 4 (1969), p. 183-205.

8. P. J. Hayes & R. A. Kowalski, “Lecture notes on automatic theorem-proving”, 1971, Metamathematics Unit Memo 40.

9. C. Hewitt, “PLANNER: a language for proving theorems in robots”, in Proceedings of First International Joint Conference on Artificial Intelligence, IJCAI ’69,Washington D.C., 1969, p. 295-301.

10. R. A. Kowalski, “The Predicate Calculus as a Programming Language (abstract)”, in Proceedings of the First MFCS Symposium, Jablonna, Poland, 1972.

11. R. A. Kowalski & P. J. Hayes, “Semantic trees in automated theorem-proving”, Machine Intelligence 4 (1969), p. 87-102.

12. R. A. Kowalski & D. Kuehner, “Linear resolution with selection function”, Artif. Intell. 2 (1971), no. 3, p. 227-260. [13] D. W. Loveland, “Mechanical theorem-proving by model elimination”, Journal of the ACM 15 (1968), no. 2, p. 236-251.

14. J. P. McCarthy & J. Hayes, “Some philosophical problems from the standpoint of artificial intelligence”, Machine Intelligence 4 (1969), p. 463-502.

15. F. C. Pereira & D. H. Warren, “Definite clause grammars for language analysis – a survey of the formalism and a comparison with augmented transition networks”, Artif. Intell. 13 (1980), no. 3, p. 231-278.

16. J. A. Robinson, “Automatic deduction with hyper-resolution”, International Journal of Computing and Mathematics 1 (1965), p. 227-234.

17. “A machine-oriented logic based on the resolution principle”, Journal of the ACM 12 (1965), no. 1, p. 23-41.

18. P. Roussel, “Définition et traitement de l’égalité formelle en démonstration automatique”, thèse de 3 e cycle, Groupe Intelligence Artificielle, Faculté des Sciences de Luminy, Université Aix-Marseille II, France, 1972.

19. D. Scott, “Outline of a Mathematical Theory of Computation”, in Proceedings of the Fourth Annual Princeton Conference on Information Sciences and Systems, 1970, p. 169-176.

20. T. Winograd, “PROGRAMMAR: A language for writing grammars”, in AI Memo 181, MIT, Cambridge, 1969.

21. “Understanding natural language”, Cognitive psychology 3 (1972), no. 1, p. 1-191.

22. The Marseille-Edinburgh Connection. Robert Kowalski. Revue Ouverte d’Intelligence Artificielle Volume 5, no 2-3, 2024, 31-37

Впечатляет! Спасибо за проделанный труд!

Там в зачатек статьи, что пришло РСС-ом было про анекдот про Пролог, а тут его нет. Исправляю.

-- Сколько нужно программистов Пролога, чтобы вверутьлампочку?
-- Да.



А так Пролог -- мой второй язык после Бейсика.

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

А у меня бакалаврская дипломная в 2000-м была как раз создание многопользовательской Web среды для языка Prolog (я тогда вдохновлялся LISP-машинами). И у меня вобщем-то что-то получилось, но все сгинуло за ненадобностью.

Связка LISP+Prolog+Web практична и актуальна до сих пор. Препод не понял, что вы опередили своё время на 25 лет.

Во-первых, вы повторили подход выдающегося математика Джона А. Робинсона. В 1980 году он обосновал применение LISP в логическом программировании. В следующем 1981 году появилась реализация этой идеи под названием «LogLisp».

[J. A. Robinson and E. E. Sibert. LOGLISP Implementation Notes. Technical Report, School of Computer and Information Science, Syracuse University, December 1981.]

Кстати, совсем недавно в 2010 году другой выдающийся логик Мартен ван Эмден (Maarten van Emden) в своей публикации напомнил об этой идее.

[Maarten van Emden, interviewer. Interview with Alan Robinson, inventor of resolution logic. A Programmer's Place Blog, June 8, 2010.]

Во-вторых, Semantic Web — это очередная реинкарнация Prolog. Начиная с концепции 1998 года (могу ошибаться, пишу по памяти) о применении логического программирования. Далее документа Tim Berners-Lee "The Semantic Web as a language of logic". И заканчивая стандартами RDF, OWL и т.д.

Так что я не согласен с «ненадобностью». Нет ничего практичнее хорошей теории! А связка LISP+Prolog+Web — хорошая теория. Просто требует адаптации под сегодняшние проблемы.

P.S. О! Случайно натолкнулся, что ещё LISP использовали при создании X-Prolog и WAM Prolog (Warren Abstract Machine).

Я как-то в те же года столкнулся с проектом, емнип, что-то связанное с ппитерсим портом -- связка Пролога и Ады(!).
Жаль, все контакты утерял, было бы интересно узнать, чем закончилось

Библиотек для связки между языками Prolog и Ada довольно много. Например Simple Ada Prolog library на GitHub. Судя по публикациям подобная мода началась примерно с 1989 года.

Познакомился с прологом в 88 году, пишу на нем до сих пор.

Борландовский Turbo Prolog?

Если не секрет, какую из реализаций Prolog вы используете?

Сейчас swi-prolog. Начинал с Turbo Prolog, потом пробовал Visual-Prolog но он только под винду, я с нее ушел в линуха.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории