#1009086 RFP: scryer-prolog - An open-Source industrial strength production prolog implementation

#1009086#5
Date:
2022-04-07 07:42:13 UTC
From:
To:
   Package name    : scryer-prolog
   Version         : 0.9.0
   Upstream Author : Mark Thom <markjordanthom@gmail.com>
   URL             : https://github.com/mthom/scryer-prolog
   License         : BSD-3-Clause License
   Programming Lang: Rust
   Description     : An open-Source industrial strength production prolog
implementation


Scryer Prolog aims to become to ISO Prolog what GHC is to Haskell: an
open source industrial strength production environment that is also a
testbed for bleeding edge research in logic and constraint programming,
which is itself written in a high-level language.

Phase 1:
Produce an implementation of the Warren Abstract Machine in Rust, done
according to the progression of languages in Warren's Abstract Machine:
A Tutorial Reconstruction.

Phase 1 has been completed in that Scryer Prolog implements in some form
all of the WAM book, including lists, cuts, Debray allocation, first
argument indexing, last call optimization and conjunctive queries.

#1009086#18
Date:
2024-11-08 13:35:06 UTC
From:
To:
Snapshot at 2024-10-29 following release 0.9.4 succesfully builds
as an unofficial draft package,
when embedding 23 crates (22 missing, 1 outdated)
which needs to be packaged before this can officially enter Debian.
The built binary runs and works fine.

Main task now is to package the remaining missing Rust crates.

Here's how you can help:

As user running Debian, you can test this draft package:
Either build it yourself from source,
or if you want to test the binary that I've built
then tell by posting to this bugreport and I will share that.

As developer (any developer: you need not be official member of Debian!)
you can join the Debian Rust team and help package these missing crates:
https://salsa.debian.org/debian/scryer-prolog/-/blob/debian/latest/debian/TODO

 - Jonas

#1009086#27
Date:
2024-11-08 17:15:31 UTC
From:
To:
Snapshot at 2024-10-29 following release 0.9.4 succesfully builds
as an unofficial draft package,
when embedding 21 crates (20 missing, 1 outdated)
which needs to be packaged before this can officially enter Debian.
The built binary runs and works fine.

Main task now is to package the remaining missing Rust crates.

Here's how you can help:

As user running Debian, you can test this draft package:
Either build it yourself from source,
or if you want to test the binary that I've built
then tell by posting to this bugreport and I will share that.

As developer (any developer: you need not be official member of Debian!)
you can join the Debian Rust team and help package these missing crates:
https://salsa.debian.org/debian/scryer-prolog/-/blob/debian/latest/debian/TODO

 - Jonas

#1009086#34
Date:
2025-09-27 09:03:14 UTC
From:
To:
Release 0.10.0 succesfully builds
as an unofficial draft package,
when embedding 24 crates (23 missing, 1 outdated)
which needs to be packaged before this can officially enter Debian.
The built binary however fails a final build check,
seemingly related to linkage against libffi.

Main task now is to solve that linking issue,
and to package the remaining missing Rust crates.

Here's how you can help:

As user running Debian, you can test this draft package:
Either build it yourself from source,
or if you want to test the binary that I've built
then tell by posting to this bugreport and I will share that.

As developer (any developer: you need not be official member of Debian!)
you can join the Debian Rust team and help package these missing crates:
https://salsa.debian.org/debian/scryer-prolog/-/blob/debian/latest/debian/TODO

 - Jonas

#1009086#43
Date:
2026-06-22 09:51:11 UTC
From:
To:
Release 0.10.0 succesfully builds
as an unofficial draft package,
when embedding 23 crates (22 missing, 1 outdated)
which needs to be packaged before this can officially enter Debian.
The built binary runs and works fine.

Main task now is to package the remaining missing Rust crates.

Here's how you can help:

As user running Debian, you can test this draft package:
Either build it yourself from source,
or if you want to test the binary that I've built
then tell by posting to this bugreport and I will share that.

As developer (any developer: you need not be official member of Debian!)
you can join the Debian Rust team and help package these missing crates:
https://salsa.debian.org/debian/scryer-prolog/-/blob/debian/latest/debian/TODO

 - Jonas

#1009086#50
Date:
2026-07-07 15:11:07 UTC
From:
To:
Release 0.10.0 succesfully builds
as an unofficial draft package,
when embedding 17 crates (16 missing, 1 incomplete)
which needs to be packaged before this can officially enter Debian.
The built binary runs and works fine.

Main task now is to package the remaining missing Rust crates.

Here's how you can help:

As user running Debian, you can test this draft package:
Either build it yourself from source,
or if you want to test the binary that I've built
then tell by posting to this bugreport and I will share that.

As developer (any developer: you need not be official member of Debian!)
you can join the Debian Rust team and help package these missing crates:
https://salsa.debian.org/debian/scryer-prolog/-/blob/debian/latest/debian/TODO

 - Jonas

#1009086#57
Date:
2026-07-08 18:30:52 UTC
From:
To:
Dear all,

thank you so much for the awesome progress on this package, especially
to you Philipp for the initiative to file this report, and to you Jonas
for all the excellent work you have already done for this package!

Scryer Prolog is one of the most promising free Prolog implementations,
and it is used for example in the Austrian public sector to reason about
grants for companies in the application G4C which is part of the
Austrian Business Service Portal (https://www.usp.gv.at). It is my hope
that the availability of a Debian package will make Scryer Prolog even
easier to install and use for everyone who is interested in it.

Thanks to swift and diligent work by Michael Schwarz, the packaging has
recently made significant additional progress.

One small detail I noticed: The latest TODO version linked at

https://salsa.debian.org/debian/scryer-prolog/-/blob/debian/latest/debian/TODO

does not yet seem to reflect the latest state of still required
packages, even though the latest state is visible in a specific tag:

https://salsa.debian.org/debian/scryer-prolog/-/blob/debian/0.10.0-0_draft4/debian/TODO?ref_type=tags

If possible, please consider synchronizing these changes to the branch
that is visible when linking to the package, so that everyone who is
interested in contributing immediately sees where help would be welcome.

In addition, please let me use this opportunity to invite everyone who
is interested in Prolog to the upcoming Scryer Prolog Meetup 2026 in
Vienna, Austria.  The meetup takes place on Oct. 24th and 25th, and I
look forward to celebrating the then latest progress on the package
there with you. Please find more information and register at:

https://www.digitalaustria.gv.at/wissenswertes/events/scryerprologmeetup2026

Please keep up the great work, and I hope to meet you in person in
October at the latest!

Thank you and all the best,
Markus

#1009086#62
Date:
2026-07-08 18:43:26 UTC
From:
To:
Quoting Markus Triska (2026-07-08 20:30:52)

Thanks,

 - Jonas

#1009086#67
Date:
2026-08-06 23:31:46 UTC
From:
To:
Release 0.10.0 succesfully builds
as an unofficial draft package,
when embedding 11 missing crates
which needs to be packaged before this can officially enter Debian.
The built binary runs and works fine.

Main task now is to package the remaining missing Rust crates.

Here's how you can help:

As user running Debian, you can test this draft package:
Either build it yourself from source,
or if you want to test the binary that I've built
then tell by posting to this bugreport and I will share that.

As developer (any developer: you need not be official member of Debian!)
you can join the Debian Rust team and help package these missing crates:
https://salsa.debian.org/debian/scryer-prolog/-/blob/debian/latest/debian/TODO

 - Jonas