[m-users.] Support for vanilla prolog

Manuel Hermenegildo herme at fi.upm.es
Fri May 29 21:49:24 AEST 2020


[ Disclaimer: I am part of the Ciao development team, I answer since
  Zoltan was kind enough to mention Ciao in the discussion. ]

On Friday, May 29, 2020 at 12:58:17 (+0200), Tomas By wrote:
 > "Optional typing" sounds a bit like "partial virginity".

:-) :-)

Anyway, I think all the folks that are now doing gradual typing,
dependent types, etc. would disagree... Anyway, as mentioned by Zoltan
(thanks again Zoltan for the reference) this is one of the essential
characteristics of Ciao, and it was the first system of this type,
i.e., to fully bite the bullet of combining the static and dynamic
worlds.

With this I do not want to say one is better: I think Mercury is a
wonderful language, with a very clear goal. Just that in Ciao we chose
very consciously to straddle the line between the static and dynamic
worlds, to serve those folks that would like to do so (as us).

 > There are various Prolog typing systems but you are still going to be
 > stuck with a massive runtime system, a database you may not really
 > need, and presumably endless debugging with no assistance.

Again, I am not really sure what you are referring to...  modern
Prolog systems have source debuggers, test systems, static checkers,
compile to small executables in native code, ... etc. As does Mercury.

 > Libraries is not a strong argument. It is fairly easy to integrate
 > Mercury with C or Java (by changing the back-end).
 > 
 > It is also pretty easy to use Prolog data with Mercury, as they have
 > similar syntax.
 > 
 > Other than that, yes you have two options: forget Mercury or ditch Prolog.
 > 
 > /Tomas
 > 
 > 
 > 
 > On Fri, 29 May 2020 07:08:33 +0200, Stuart Reynolds wrote:
 > > Mercury presents a fork
 > > For me the benefits of strong typing is faster development of prolog
 > > in language that's painfully slow to write and debug.
 > > OTOH, ISO prologs have a considerable number of useful libraries
 > > (visualization, database connectors).
 > > Dynamism itself is also occasionally often useful.
 > > Optional typing would seem to make it straightforward to incorporate
 > > dynamically typed prolog, but gain
 > > the benefits of strong typing for new code.
 > _______________________________________________
 > users mailing list
 > users at lists.mercurylang.org
 > https://lists.mercurylang.org/listinfo/users

-- 
--------------------------------------------------------------------------
 Manuel Hermenegildo                           manuel.hermenegildo at upm.es
--------------------------------------------------------------------------


More information about the users mailing list