Skip to content

Examples from John Harrison's "Handbook of Practical Logic and Automated Reasoning", ported to Scala

License

Notifications You must be signed in to change notification settings

newca12/scala-atp

Repository files navigation

scala-atp Build Status Coverage Status Ohloh

About

Port of the Objective Caml code supporting John Harrison's logic textbook Handbook of Practical Logic and Automated Reasoning to Scala.

scala-atp is an EDLA project.

The purpose of edla.org is to promote the state of the art in various domains.

Other ports

F# : complete and 'official'
SML: almost complete and 'official'
Haskell : complete and published
OCaml : original code for Ocam 3 adapted to fit OCaml 4
Haskell : complete, original code for GHC 6.10.4 adapted to fit GHC 8.x
Haskell : almost complete
JavaScript : almost complete (generated with GHCJS compiler)
scala : uncomplete (chap 1 & 2)
Haskell : uncomplete (chap 1)
Haskell : uncomplete
Rust : uncomplete
Swift : uncomplete

Running examples with Jupyter notebook

All examples will be available in the notebooks directory
This is a very convenient way to play with Scala
You need first to publish scala-atp locally :

git clone https://github.com/newca12/scala-atp.git
cd scala-atp
sbt publishLocal

Follow instructions here to install a scala kernel for Jupyter.
To run the notebook, run the following command at the Terminal

jupyter-notebook

Notes

We kept the file names of the original mostly intact, though use Scala naming conventions.
This project contain also a study about parsers and some code from :

License

© 2003-2007, John Harrison.
© 2012-2019, Olivier ROLAND.
(See "LICENSE.txt" for details.)

About

Examples from John Harrison's "Handbook of Practical Logic and Automated Reasoning", ported to Scala

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published