Комментарии 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 — хорошая теория. Просто требует адаптации под сегодняшние проблемы.
Я как-то в те же года столкнулся с проектом, емнип, что-то связанное с ппитерсим портом -- связка Пролога и Ады(!).
Жаль, все контакты утерял, было бы интересно узнать, чем закончилось
Библиотек для связки между языками Prolog и Ada довольно много. Например Simple Ada Prolog library на GitHub. Судя по публикациям подобная мода началась примерно с 1989 года.
Познакомился с прологом в 88 году, пишу на нем до сих пор.
Prolog: три портрета через 50 лет