AppliedLogicSystems / ALSProlog

ALS Prolog Compiler & Development Environment
https://alsprolog.com
MIT License
16 stars 9 forks source link

Status of interval constraint/CLP(BNR) support in ALS Prolog? #199

Open dnm opened 1 year ago

dnm commented 1 year ago

While cobbling together a minimal build of ALS Prolog on Windows (using different tooling than documented in the current version of the root-level README.md), using the Spring 2019/3.5.0 release, and after getting such a build working (just alspro_b/alspro), I noticed the conditionalized interval constraint support in e.g., core\alsp_src\generic\gnu_makefile and the corresponding make option, but while searching the source tree also noticed that the mentioned files are missing:

int_net.c intaux.c intrv.c

int_cstr.pro ra_basis.pro

Similarly, intrv.h included from core\alsp_src\port\wam.c is missing.

On searching through the repository, I can find some previous mentions of e.g., removing some files in some old commits as CLP(BNR) support had been "separated out", and there's some similar residual artifacts, e.g., win32\build_dist.sh shows several lines (61-64) that delete some of the Prolog files. Some constraint/CLP documentation has also been commented out in some documentation (e.g., lines 116-138 of current_prolog_flag.md). I have not yet been able to track down a previous version or commit that actually has int_net.c, intaux.c, intrv.c, et al. still in the source tree.

What's the current status of interval constraint/full CLP(BNR) support in ALS Prolog? Can this code be added back in to the source tree to enable these builds? I have no idea if this is relevant to why the code seems not to be in the current ALS Prolog source tree or not, but the "source archive of final BNR Prolog release, V5.0.5, 1999 for Unix platform(s) of that time" has also been open sourced (under an MIT-style license) as of May 1, 2019.

kenbowen commented 1 year ago

Curious what "minimal build of ALS Prolog on Windows ... using the Spring 2019/3.5.0 release" entails, since the only Spring framework I know about is a Java framework. The files you're interested in ought to be found in the BNR repository.

On May 4, 2023, at 4:06 AM, dnm @.***> wrote:

While cobbling together a minimal build of ALS Prolog on Windows (using different tooling than documented in the current version of the root-level README.md), using the Spring 2019/3.5.0 release, and after getting such a build working (just alspro_b/alspro), I noticed that the conditionalized interval constraint support in e.g., core\alsp_src\generic\gnu_makefile and the corresponding make option, but while searching the source tree also noticed that the mentioned files are missing: int_net.c intaux.c intrv.c int_cstr.pro ra_basis.pro Similarly, intrv.h from core\alsp_src\port\wam.c is missing. On searching through the repository, I can find some previous mentions of e.g., removing some files in some old commits as CLP(BNR) support had been "separated out", and there's some similar residual artifacts, e.g., win32\build_dist.sh shows several lines (61-64) that delete some of the Prolog files. Some constraint/CLP documentation has also been commented out in some documentation (e.g., lines 116-138 of current_prolog_flag.md). I have not yet been able to track down a previous version or commit that actually has int_net.c, intaux.c, intrv.c, et al. still in the source tree. What's the current status of interval constraint/full CLP(BNR) support in ALS Prolog. Can this code be added back in to the source tree to enable these builds? I have no idea if this is relevant to why the code seems not to be in the current ALS Prolog source tree or not, but the "source archive of final BNR Prolog release, V5.0.5, 1999 for Unix platform(s) of that time" has also been open sourced (under an MIT-style license) as of May 1, 2019. — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you are subscribed to this thread.Message ID: @.***>

dnm commented 1 year ago

Hello,

Thanks for replying!

WRT "the Spring 2019/3.5.0 release", I mean that release of ALS Prolog as identified on the GitHub releases page, see this link: https://github.com/AppliedLogicSystems/ALSProlog/releases/tag/v3.5.0.

As for the files mentioned above: when you say "ought to be found in the the BNR repository", which repository are you referring to? They aren't in the repository I cited.

I just included that in case the BNR support files were e.g., removed from ALS Prolog (or at least its open source release) some time in the past due to some possible license restriction before the open sourcing of the 1999 BNR Prolog release (since it seems like it may be the case that BNR Prolog was open sourced after ALS Prolog was). That was a total guess on my part and a shot in the dark though.

(I figured if perhaps that was the issue, then at least knowing BNR Prolog was subsequently open sourced [at least in terms of it being posted and hosted in a GitHub repository] might allow any re-posting or re-inclusion of the old files that seem missing to be added; or allow porting work -- if necessary -- to happen, pulling from the open sourced BNR Prolog Unix version.)

The files mentioned aren't anywhere I can find in any of the GitHub repositories under Applied Logic Systems either, unless I and/or GitHub's search function missed something...

Thanks for your help!