CommunityNews

CommunityNews

50 Years of Prolog and Beyond

50 Years of Prolog and Beyond.
Both logic programming in general, and Prolog in particular, have a long and
fascinating history, intermingled with that of many disciplines they inherited
from or catalyzed. A large body of research has been gathered over the last 50
years, supported by many Prolog implementations. Many implementations are still
actively developed, while new ones keep appearing. Often, the features added by
different systems were motivated by the interdisciplinary needs of programmers
and implementors, yielding systems that, while sharing the “classic” core
language, and, in particular, the main aspects of the ISO-Prolog standard, also
depart from each other in other aspects. This obviously poses challenges for
code portability. The field has also inspired many related, but quite different
languages that have created their own communities.
This article aims at integrating and applying the main lessons learned in the
process of evolution of Prolog. It is structured into three major parts.
Firstly, we overview the evolution of Prolog systems and the community
approximately up to the ISO standard, considering both the main historic
developments and the motivations behind several Prolog implementations, as well
as other logic programming languages influenced by Prolog. Then, we discuss the
Prolog implementations that are most active after the appearance of the
standard: their visions, goals, commonalities, and incompatibilities. Finally,
we perform a SWOT analysis in order to better identify the potential of Prolog,
and propose future directions along which Prolog might continue to add useful
features, interfaces, libraries, and tools, while at the same time improving
compatibility between implementations.

Read in full here:

This thread was posted by one of our members via one of our news source trackers.

Where Next?

Popular Backend topics Top

New
First poster: bot
A conversation with Laurent Mazare about how your choice of programming language interacts with the kind of work you do, and in particula...
New
First poster: bot
Kawa is a general-purpose programming language that runs on the Java platform. It aims to combine: the benefits of dynamic scripting la...
New
CommunityNews
Algebraic effects and handlers provide a modular abstraction for expressing effectful computation, allowing the programmer to separate th...
New
First poster: bot
GitHub - cshum/imagor: Fast, Docker-ready image processing server written in Go and libvips, with Thumbor URL syntax. Fast, Docker-ready...
New
First poster: dimitarvp
Rails is not written in Ruby. I’m born and raised in Kraków, a beautiful city in Poland, maybe you’ve heard about it, maybe you’ve even ...
New
First poster: AstonJ
Ruby 3.1’s incompatible changes to its YAML module (Psych 4). Ruby made its YAML interpreter more secure by default at the cost of backw...
New
First poster: bot
GitHub - codic12/worm: A dynamic, tag-based window manager written in Nim. A dynamic, tag-based window manager written in Nim - GitHub -...
New
First poster: faust
Ruffle is a Flash Player emulator written in Rust. Ruffle runs natively on all modern operating systems as a standalone application, and ...
New
New

Other popular topics Top

Devtalk
Hello Devtalk World! Please let us know a little about who you are and where you’re from :nerd_face:
New
AstonJ
Thanks to @foxtrottwist’s and @Tomas’s posts in this thread: Poll: Which code editor do you use? I bought Onivim! :nerd_face: https://on...
New
AstonJ
I ended up cancelling my Moonlander order as I think it’s just going to be a bit too bulky for me. I think the Planck and the Preonic (o...
New
DevotionGeo
The V Programming Language Simple language for building maintainable programs V is already mentioned couple of times in the forum, but I...
New
mafinar
This is going to be a long an frequently posted thread. While talking to a friend of mine who has taken data structure and algorithm cou...
New
New
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New
AstonJ
Curious what kind of results others are getting, I think actually prefer the 7B model to the 32B model, not only is it faster but the qua...
New
PragmaticBookshelf
Fight complexity and reclaim the original spirit of agility by learning to simplify how you develop software. The result: a more humane a...
New