Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.prolog > #14003

Re: Not being a Haskell programmer is trendy!

From Mild Shock <janburse@fastmail.fm>
Newsgroups comp.lang.prolog
Subject Re: Not being a Haskell programmer is trendy!
Date 2024-03-01 21:33 +0100
Message-ID <urte2c$qgfe$1@solani.org> (permalink)
References (2 earlier) <urt0rj$qgjc$2@solani.org> <urt1dd$qh1v$1@solani.org> <urt1tr$qhcg$1@solani.org> <urt22u$qhcg$2@solani.org> <urt7ol$qkts$1@solani.org>

Show all headers | View raw


Lets not forget GNU Prolog. It lacks a little bit
behind SWI-Prolog for the first test case:

?- p(X), (between(1,1000000,_),X,fail; true).
X = (A is 1+2,_ is A+3)
(453 ms) yes

?- (between(1,1000000,_),p(X),X,fail; true).
(578 ms) yes

Also this kind of testing might be a little bit
to generous, by ommiting the time/1 call.

Mild Shock schrieb:
> A small sanity test. How does formerly Jekejeke Prolog
> and Dogelog Player perform. Dogelog Player has not yet
> call/N, I do not promote using it, since I am
> 
> still waiting for a good idea to compile it a little
> bit more statically. Formerly Jekejeke Prolog uses a
> dynamic inline cache, polymorphic in the arity.
> 
> But this test case is anyway less about call/N and
> more about call/1 and is/2. I get:
> 
> For formerly Jekejeke Prolog:
> 
> /* Jekejeke Prolog 1.6.6 */
> ?- p(X), time((between(1,1000000,_),X,fail; true)).
> % Zeit 540 ms, GC 3 ms, Uhr 01.03.2024 19:37
> X = (_0 is 1+2, _1 is _0+3).
> 
> ?- time((between(1,1000000,_),p(X),X,fail; true)).
> % Zeit 867 ms, GC 3 ms, Uhr 01.03.2024 19:37
> true.
> 
> For Dogelog Player:
> 
> /* Dogelog Player 1.1.6 */
> ?- p(X), time((between(1,1000000,_),X,fail; true)).
> % Zeit 447 ms, GC 0 ms, Lips 15660199, Uhr 01.03.2024 19:38
> X = (_16030782 is 1+2, _16030783 is _16030782+3).
> 
> ?- time((between(1,1000000,_),p(X),X,fail; true)).
> % Zeit 1780 ms, GC 0 ms, Lips 14606802, Uhr 01.03.2024 19:38
> true.
> 
> Jekejeke Prolog and Dogelog Player do not choke
> like Scryer Prolog does. The performance of Dogelog
> Player is amazing, since call/1 is implemented in
> 
> pure Prolog, not via an interpreter, but via a little
> compiler, and an intermediate form, that we anyway use
> when we generate cross compiled code or
> 
> static/dynamic clausse.
> 
> Mild Shock schrieb:
>> But I cannot retract my claim about Scryer Prolog
>> it definitively chokes:
>>
>> ?- p(X), time((between(1,1000000,_),X,fail; true)).
>>     % CPU time: 2.233s, 11_000_023 inferences
>>     X = (_A is 1+2,_B is _A+3).
>>
>> ?- time((between(1,1000000,_),p(X),X,fail; true)).
>>     % CPU time: 6.180s, 13_000_045 inferences
>>     true.
>>
>> Thats an order slower than Trealla and SWI-Prolog.
>>
> 
> 

Back to comp.lang.prolog | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-02-02 20:46 +0100
  Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-02-02 21:00 +0100
    Re: Not being a Haskell programmer is trendy! Mild Shock <bursejan@gmail.com> - 2024-02-02 12:50 -0800
      Re: Not being a Haskell programmer is trendy! Mild Shock <bursejan@gmail.com> - 2024-02-07 03:25 -0800
    Re: Not being a Haskell programmer is trendy! Mild Shock <bursejan@gmail.com> - 2024-02-11 14:34 -0800
      Re: Not being a Haskell programmer is trendy! Mild Shock <bursejan@gmail.com> - 2024-02-11 14:39 -0800
        Re: Not being a Haskell programmer is trendy! Mild Shock <bursejan@gmail.com> - 2024-02-14 06:45 -0800
          Re: Not being a Haskell programmer is trendy! Mild Shock <bursejan@gmail.com> - 2024-02-14 06:53 -0800
  Re: Not being a Haskell programmer is trendy! Mild Shock <bursejan@gmail.com> - 2024-02-14 13:29 -0800
    Re: Not being a Haskell programmer is trendy! Mild Shock <bursejan@gmail.com> - 2024-02-14 13:33 -0800
  Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-02-21 01:27 +0100
    Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-02-21 01:28 +0100
      Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-02-21 01:30 +0100
        Re: Not being a Haskell programmer is trendy! Mild Shock <bursejan@gmail.com> - 2024-02-21 03:43 -0800
  Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-03-01 17:45 +0100
    Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-03-01 17:47 +0100
      Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-03-01 17:57 +0100
        Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-03-01 18:06 +0100
          Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-03-01 18:08 +0100
            Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-03-01 19:45 +0100
              Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-03-01 21:33 +0100
  Re: Not being a Haskell programmer is trendy! Mild Shock <janburse@fastmail.fm> - 2024-03-06 01:56 +0100

csiph-web