On this page
prolog
Explore " prolog" with insightful episodes like "The Stories of Christmas – Johannes: Damit du glaubst – Silke Wagner", "What is The Best Programming Language", "Revenge of the Shape Rotators", "Craic and Code #1" and "11.3.1 Die ersten vier Sätze des Johannesevangeliums" from podcasts like ""ICF Herrenberg | Audio-Podcast", "Code and Craic", "Code and Craic", "Code and Craic" and "Worthaus Podcast"" and more!
Episodes (14)
What is The Best Programming Language
Twitch channel with the full show: https://www.twitch.tv/terminusdb
Also check out Matthijs' coding sessions on twitch - they are a delight, you won't regret.
Prolog at 50: http://www.prolog-heritage.org/doc/Announcement_Prolog50.pdf
Boo: https://en.wikipedia.org/wiki/Boo_(programming_language)
Octoverse: https://octoverse.github.com/
Stack Overflow Developer Survey
The Birth and Death of JavaScript: https://www.destroyallsoftware.com/talks/the-birth-and-death-of-javascript
BCPL: https://en.wikipedia.org/wiki/BCPL
Oz (programming language): https://en.wikipedia.org/wiki/Oz_(programming_language)
Revenge of the Shape Rotators
Twitch channel with the full show: https://www.twitch.tv/terminusdb
Pluggable Auth in TerminusDB: https://gist.github.com/GavinMendelGleason/b4f0c32e893549a9633e1e5a8a87b889
Check it out in action: dashboard.terminusdb.com
Vice piece on Wordcels and Shape Rotators: https://www.vice.com/en/article/pkpqzb/ok-wtf-are-wordcels-and-shape-rotators
The inventor of the concept: https://twitter.com/tszzl
And his blog telling us what it is all about: https://roonscape.substack.com/p/a-song-of-shapes-and-words
The game we were playing ('play zig zag'): https://vladimirslepnev.itch.io/zigzag
Craic and Code #1
Twitch channel with the full show: https://www.twitch.tv/terminusdb
Data mesh intro: https://martinfowler.com/articles/data-mesh-principles.html
Formal methods (from CMU, Gavin went to Uni here): https://users.ece.cmu.edu/~koopman/des_s99/formal_methods/
World https://en.unesco.org/commemorations/worldlogicday
More about TerminusDB: https://terminusdb.com/
Or GitHub: https://github.com/terminusdb/terminusdb
11.3.1 Die ersten vier Sätze des Johannesevangeliums
Worthaus Pop-Up – Tübingen: 18. Januar 2021 von Prof. Dr. Siegfried Zimmer.
#4 - Markus Triska on constraints and the power of Prolog
Visit the show's web page: thesearch.space
Show notes
The Power of Prolog, Markus' ongoing book project
"It says, 'Find your way from darkness to light,' which is one of the quotes that occurs in The Knight of Cups, which is a recent movie by Terrence Malick."Declarative program development in Prolog with GUPU (paper)
SEND + MORE = MONEY
"People have ... in different languages, explored multi-dispatch, multi-methods, and all kinds of stuff."(is)/2 is not actually a keyword or a special syntax. Markus describes the issues involved very well here:
https://github.com/triska/clpz#an-impure-alternative-low-level-integer-arithmetic
and here:
https://www.metalevel.at/prolog/clpz
"It is abbreviated as CSP: Constraint Satisfaction Problem."
Eugene C Freuder. “In pursuit of the holy grail”. In:Constraints 2.1 (1997), pp. 57–61. (not freely available)
There is an ongoing series of workshops following up on the ideas in the original paper:
https://freuder.wordpress.com/pthg-20-the-fourth-workshop-on-progress-towards-the-holy-grail/
> "rusty-wam, implemented in Rust"
(hence renamed Scryer Prolog, with Markus being an active contributor)
> "There is O-Prolog, which is implemented by Kenichi Sasagawa from Japan."
> "..in the case of Tau Prolog, it's implemented in JavaScript and they can embed Prolog in a web browser"
The Power of Prolog YouTube channel
#3 - Chris Martens on narrative generation
Visit the show's web page: thesearch.space
Show notes
Chris Martens' academic website
https://www.csc.ncsu.edu/people/crmarten
04:30
"Programming Interactive Worlds with Linear Logic", Chris' Ph.D. thesis
06:10
James Meehan’s, Tale-Spin thesis
"The Metanovel: Writing Stories by Computer"
A great post about the story of Tale-Spin's creation:
https://grandtextauto.soe.ucsc.edu/2006/09/13/the-story-of-meehans-tale-spin/
18:40
The Twelf Project
The dependently typed logif LF
20:50
Linear logic
The original paper
(The first sentence begins: "Linear logic is a logic behind logic...")
22:00
"A form of logical implication pronounced A lolly B" ... I wish I had a screen to draw on"
Looks like this: A -o B (a modified arrow from A to B)
25:10
The frame problem
25:20
Temporal logic
Event calculus
26:50
Pandemic board game
44:40
Interactive fiction
47:30
Behavior trees
56:00
R. Michael Young
57:30
https://twitter.com/chrisamaphone
github.com/chrisamaphone
#1 - The Poet of Logic Programming
Show notes
08:10
John Alan Robinson
https://en.wikipedia.org/wiki/John_Alan_Robinson
Computational Logic: Memories of the Past and Challenges for the Future
http://www.computational-logic.org/iccl/downloads/Robinson-CL2000.pdf
Maarten van Emden has great material about Robinson, including two interviews:
- https://vanemden.wordpress.com/2016/09/16/alan-robinson/
- https://vanemden.wordpress.com/2010/06/08/interview-with-alan-robinson-inventor-of-resolution-logic/
- http://aarinc.org/Newsletters/089-2010-10.html#robinson
08:55
The Early Years of Logic Programming (Kowalski)
https://www.doc.ic.ac.uk/~rak/papers/the%20early%20years.pdf
12:05
The British Nationality Act as a Logic Program
https://www.doc.ic.ac.uk/~rak/papers/British%20Nationality%20Act.pdf
12:45
Horn clause logic
https://en.wikipedia.org/wiki/Horn_clause
14:32
Dual process theory
https://en.wikipedia.org/wiki/Dual_process_theory
https://en.wikipedia.org/wiki/Thinking,_Fast_and_Slow
16:30
Alternatives to logic representations of knowledge
- https://en.wikipedia.org/wiki/Semantic_network
- https://en.wikipedia.org/wiki/And%E2%80%93or_tree
- https://www.doc.ic.ac.uk/~rak/papers/History.pdf
17:10
Minsky’s frames
https://en.wikipedia.org/wiki/Frame_(artificial_intelligence)
17:30
Non-monotonic logic
https://en.wikipedia.org/wiki/Non-monotonic_logic
18:10
First-order logic
https://en.wikipedia.org/wiki/First-order_logic
20:45
List concatenation (the append/3 predicate)
http://www.learnprolognow.org/lpnpage.php?pagetype=html&pageid=lpn-htmlse24
23:55
Datalog
https://en.wikipedia.org/wiki/Datalog
Answer Set Programming
https://en.wikipedia.org/wiki/Answer_set_programming
25:50
Cordell Green
https://en.wikipedia.org/wiki/Cordell_Green
26:50
"it was Cordell who was interested in knowledge representation"
STANFORD ARTIFICIAL INTELLIGENCE PROJECT, MEMO Al-96
The Application of Theorem Proving to Question-Answering Systems
https://www.kestrel.edu/home/people/green/publications/green-thesis.pdf
Theorem-Proving by Resolution as a Basis for Question-Answering Systems
https://www.kestrel.edu/home/people/green/publications/theorem-proving.pdf
29:50
Planner, Hewitt, Winograd
https://en.wikipedia.org/wiki/Planner_(programming_language)
https://en.wikipedia.org/wiki/Terry_Winograd
35:00
Monads
https://en.wikipedia.org/wiki/Monad_(functional_programming)
40:10
Alain Colmerauer
https://en.wikipedia.org/wiki/Alain_Colmerauer
Un Systeme de Communication Homme-Machine en Francais
http://alain.colmerauer.free.fr/alcol/ArchivesPublications/HommeMachineFr/HoMa.pdf
42:00
Pat Hayes
https://en.wikipedia.org/wiki/Pat_Hayes
https://www.ihmc.us/groups/phayes/
43:15
The Birth of Prolog (Alain Colmerauer and Philippe Roussel)
http://alain.colmerauer.free.fr/alcol/ArchivesPublications/PrologHistory/19november92.pdf
46:00
Computational Logic and Human Thinking: How to be Artificially Intelligent
https://www.doc.ic.ac.uk/~rak/papers/newbook.pdf
49:00
The Pyramid Principle: Logic in Writing and Thinking (Barbara Minto)
https://www.goodreads.com/book/show/1990595.The_Pyramid_Principle
51:00
Unification
https://en.wikipedia.org/wiki/Unification_(computer_science)
52:20
Backtracking
https://en.wikipedia.org/wiki/Backtracking
56:10
Production rules
https://en.wikipedia.org/wiki/Production_system_(computer_science)
57:10
Expert systems
https://en.wikipedia.org/wiki/Expert_systems
01:08:30
The Fifth Generation Computer Systems project
https://en.wikipedia.org/wiki/Fifth_generation_computer
1:09:50
MapReduce
https://en.wikipedia.org/wiki/MapReduce
1:17:00
Event calculus
https://en.wikipedia.org/wiki/Event_calculus
1:18:20
Logic Production Systems
http://lps.doc.ic.ac.uk/
1:19:40
Logical Contracts (company)
http://logicalcontracts.com/
1:29:45
Minsky's attack on the perceptron
https://en.wikipedia.org/wiki/Perceptron
Terminators on Tech - Ep.3 - TerminusDB Internals
Follow us on Twitter (@TerminusDB) for news and updates. Full Webinar can be access on YouTube.
Trailer
Logic Programming, you say? That might sound like either an oxymoron or a tautology to you, depending on who you are. If you have heard about Logic Programming before, you are probably thinking about Prolog - a programming language that is almost 50 years old, and which many find fascinating but also frustratingly limited.
What is logic? Many people consider it synonymous with dry intellect, humorless bureaucracy, the opposite of creativity. But in my understanding, logic is an attempt to capture the essence of thought, which is to say the essence of what we humans find reasonable, persuasive, and possible. The study of logic goes straight to some of our fundamental intuitions about the world and ourselves, and it's really not clear at all what they are rooted in. People have lots of different opinions about this. Logic looks very clear-cut on the surface, but when you dig you bump into some of the deepest perennial questions in philosophy. And this doesn't change when we arrive at modern, formalized logic, which sort of looks like mathematics - you are still dealing with deep questions about human psychology and cognition, and how we perceive the physical world.
Now, it turns out formal logic can be used as a programming language. If you are careful about which parts of logic you use, and in which form you write things down, formal logic fits very well with how programming languages are executed. So you can write down some logical formulas, and you get two interpretations: the logical interpretation, and the procedural interpretation which is how you run it on a computer. And these two are, let's say, in sync - you get the deductions you would expect from both interpretations.
As a programming paradigm, this has some really unusual and fun features, and since logic in the first place is, again, an attempt to capture the essence of human though, Logic Programming is in many respects very intuitive. To me, it's the closest to what I imagined programming would be like when I was 10 and had just started to understand that there was a way to tell computers what to do.
★ Support this podcast ★354: A Life of Learning
Prolog
This show covers Prolog (Programmable Logic), a rule based language based on deductive inferencing. The episode talks about the Zynga IPO, Google+, and types of coders (Computer Scientist, Programmer, and Developer). The tools of the biweek are FreeNX, a remote desktop server and client, and Evernote, a note taking application that stores notes in the cloud.
★ Support this podcast on Patreon ★