1. 30
  1.  

  2. 2

    whoa, one of their goals is to run shen performantly! i would be super interested in seeing that.

    1. 1

      Does anyone use Prolog ? Because I only know of this being taught in school, nothing in production. For Ada we know of at least one industry using it.

      1. 5

        There are few projects. For example: https://github.com/terminusdb/terminusdb

        1. 2

          Prolog is used in a log of linguistics and processing. I know of a couple of companies using it.

          Fun fact: my only paper credit ever is a piece of Prolog code ;).

          1. 2

            Erlang was originally implemented in Prolog. The paper Use of Prolog for developing a new programming language (Armstrong, Virding, and Williams, 1992) is a short and fun read.

            1. 1

              Gerrit Code Review uses Prolog rules for allowing to customize rules (e.g. “What kind of Code-Review/Verified/… flags are needed, and by to whom, to allow a change to be submitted).

              The verifier of pre-2014 SPARK (that Ada variant) was written in Prolog.

              1. 1

                I just found out about ProbLog, and this is supposedly built in ProbLog: http://bioinformatics.intec.ugent.be/phenetic/index.html#/index

                1. 1

                  Tau prolog is used by the Yarn package manager.

                  1. 1

                    I think it’ll become more and more important going forward. Mostly this is a safe bet since type systems are getting more important, but there’s a lot of other places where these ideas haven’t reached yet .. personally; I’d like to replace file systems with a logic programming engine.. and you also end up with a variant of logic programming if you only want to describe coordination free programs (which are a super important class of programs in the cloud world)

                    1. 1

                      Can you elaborate on what “coordination of free programs” means and how logic programming improves the situation there?

                      1. 1

                        The class of coordination-free distributed programs.. the programs that do not require coordination. Something like conflict free replicated datatypes for example (CRDTs).

                        Edit: Logic programming enters the picture when you start talking about propagator networks; you can look at edward kmett talk about it or the keynote from popl this year.

                    2. 1

                      I use SWI Prolog for hobby stuff & a few little things in prod. There are a few companies that I know of which use it, to the extent that they’ve sponsored development of SWI and reached out for Prolog devs; in most cases though, the fact that they use Prolog is not advertised.

                      1. 1

                        More links to practical applications via here: https://lobste.rs/s/wdftoh/practical_application_prolog_1993

                        My favourite is AusPig, an expert system for pig farming.