Name: symengine.hs
Owner: symengine
Description: Haskell bindings to SymEngine
Created: 2016-03-05 02:39:05.0
Updated: 2018-02-17 11:44:51.0
Pushed: 2017-07-20 06:24:11.0
Homepage: null
Size: 63
Language: Haskell
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
Haskell bindings to SymEngine
Stack is a Haskell build tool, which allows for cross-platform, reproducible builds.
The build toolchain of this project depends on stack
, so please follow the installation
instructions as outlined here
Please go through the SymEngine
installation instructions, and make sure that the header files
as well as the libraries
symengine
gmp
gmpxxx
Since these are hard dependencies for SymEngine-hs to build.
To quickly build and check everything is working, run
k build && stack test
All of the test cases should pass with SymEngine
to launch a GHCi
session, execute the interpreter with
k ghci --ghci-options " -lstdc++ -lgmpxx -lgmp -lsymengine -L/usr/local/lib/"
Make sure that you have built symengine.so
(NOTE: you _need the shared object, and not just the library), and
have installed the shared object as well.
Once you are inside GHCi
, you can execute basic functions such as basic_const_zero
, basic_const_one
, etc.
A typical interpreter session will look like this:
session with Symengine loaded
engine Symengine> basic_const_zero
engine Symengine> basic_const_zero
engine Symengine> basic_const_one
engine Symengine> basic_const_minus_one
[TODO: fill this up]
[TODO: fill this up]
All code is released under the MIT License.