Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

"Stupidity, like virtue, is its own reward" -- William E. Davidsen


devel / comp.lang.prolog / Re: Request for comments, Novacore the sequel to ISO modules

SubjectAuthor
* Request for comments, Novacore the sequel to ISO modulesMostowski Collapse
`- Request for comments, Novacore the sequel to ISO modulesMostowski Collapse

1
Re: Request for comments, Novacore the sequel to ISO modules

<47c1a406-0a80-4f55-89d5-9e1c62c3c0c3n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=9980&group=comp.lang.prolog#9980

  copy link   Newsgroups: comp.lang.prolog
X-Received: by 2002:a05:620a:3715:b0:746:9016:1eb0 with SMTP id de21-20020a05620a371500b0074690161eb0mr9111580qkb.2.1683984963780;
Sat, 13 May 2023 06:36:03 -0700 (PDT)
X-Received: by 2002:a25:d18a:0:b0:ba7:29a9:a471 with SMTP id
i132-20020a25d18a000000b00ba729a9a471mr2514456ybg.0.1683984963404; Sat, 13
May 2023 06:36:03 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border-2.nntp.ord.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.prolog
Date: Sat, 13 May 2023 06:36:03 -0700 (PDT)
In-Reply-To: <db8a6771-3e54-485b-b391-310658dd6f52n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=77.57.53.44; posting-account=UjEXBwoAAAAOk5fiB8WdHvZddFg9nJ9r
NNTP-Posting-Host: 77.57.53.44
References: <db8a6771-3e54-485b-b391-310658dd6f52n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <47c1a406-0a80-4f55-89d5-9e1c62c3c0c3n@googlegroups.com>
Subject: Re: Request for comments, Novacore the sequel to ISO modules
From: burse...@gmail.com (Mostowski Collapse)
Injection-Date: Sat, 13 May 2023 13:36:03 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 26
 by: Mostowski Collapse - Sat, 13 May 2023 13:36 UTC

Now I have already removed the following predicates from
Novacore, they landed in library(compat):

- numbervars/2
- subsumes/2
- subsumes_term/2

Now wonder where variant/2 would land? SWI-Prolog wants to tell me
that variant/2 might need library(compat), because of numbervars/2.
Assuming A and B have already distinct variables I get the following solution:

A =@= B :-
\+ \+ (numbervars(Ac, 0, N),
numbervars(Bc, 0, N),
Ac == Bc).
https://www.swi-prolog.org/pldoc/doc_for?object=%28%3D@%3D%29/2

On the other hand this solution gives me also a library(compat)
dependency, since its based on subsumes_term/2. Again assuming A and
B have already distinct variables I get the following solution:

A =@= B :-
subsumes_term(A, B),
subsumes_term(B, A).
https://www.complang.tuwien.ac.at/ulrich/iso-prolog/built-in_predicates

Isn't there something simpler?

Re: Request for comments, Novacore the sequel to ISO modules

<15c0b31a-b1fe-4d42-93a0-04a4d71d35aan@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=9981&group=comp.lang.prolog#9981

  copy link   Newsgroups: comp.lang.prolog
X-Received: by 2002:a05:620a:1a11:b0:759:3687:e259 with SMTP id bk17-20020a05620a1a1100b007593687e259mr302066qkb.13.1683985269878;
Sat, 13 May 2023 06:41:09 -0700 (PDT)
X-Received: by 2002:a81:a9ca:0:b0:55d:d860:7247 with SMTP id
g193-20020a81a9ca000000b0055dd8607247mr14471219ywh.1.1683985269611; Sat, 13
May 2023 06:41:09 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.prolog
Date: Sat, 13 May 2023 06:41:09 -0700 (PDT)
In-Reply-To: <47c1a406-0a80-4f55-89d5-9e1c62c3c0c3n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=77.57.53.44; posting-account=UjEXBwoAAAAOk5fiB8WdHvZddFg9nJ9r
NNTP-Posting-Host: 77.57.53.44
References: <db8a6771-3e54-485b-b391-310658dd6f52n@googlegroups.com> <47c1a406-0a80-4f55-89d5-9e1c62c3c0c3n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <15c0b31a-b1fe-4d42-93a0-04a4d71d35aan@googlegroups.com>
Subject: Re: Request for comments, Novacore the sequel to ISO modules
From: burse...@gmail.com (Mostowski Collapse)
Injection-Date: Sat, 13 May 2023 13:41:09 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 2551
 by: Mostowski Collapse - Sat, 13 May 2023 13:41 UTC

This is cute, has quite some different dependencies,
inspired by the use of term_variables/3 in bagof/3,
again assuming that A and B have already disjoint variables:

A =@= B :-
term_variables(A, L),
term_variables(B, R),
\+ \+ (L=R, A==B).

Can be bootstrapped from a much smaler Novacore.

Mostowski Collapse schrieb am Samstag, 13. Mai 2023 um 15:36:04 UTC+2:
> Now I have already removed the following predicates from
> Novacore, they landed in library(compat):
>
> - numbervars/2
> - subsumes/2
> - subsumes_term/2
>
> Now wonder where variant/2 would land? SWI-Prolog wants to tell me
> that variant/2 might need library(compat), because of numbervars/2.
> Assuming A and B have already distinct variables I get the following solution:
>
> A =@= B :-
> \+ \+ (numbervars(A, 0, N),
> numbervars(B, 0, N),
> A == B).
> https://www.swi-prolog.org/pldoc/doc_for?object=%28%3D@%3D%29/2
>
> On the other hand this solution gives me also a library(compat)
> dependency, since its based on subsumes_term/2. Again assuming A and
> B have already distinct variables I get the following solution:
>
> A =@= B :-
> subsumes_term(A, B),
> subsumes_term(B, A).
> https://www.complang.tuwien.ac.at/ulrich/iso-prolog/built-in_predicates
>
> Isn't there something simpler?

1
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor