Skip to content

amir-bio/elps

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Amirhossein AndohkoshAmirhossein Andohkosh
Amirhossein Andohkosh
and
Amirhossein Andohkosh
Sep 3, 2020
301ee4e · Sep 3, 2020

History

57 Commits
Dec 26, 2019
Jun 18, 2019
Nov 22, 2018
Jun 9, 2020
Nov 22, 2018
Mar 9, 2020
Sep 3, 2020
Jun 19, 2019
Nov 22, 2018
Nov 22, 2018
Nov 22, 2018
Nov 22, 2018
Nov 22, 2018
Nov 22, 2018
Jun 18, 2019
Feb 25, 2020
Apr 25, 2020
Apr 25, 2020
Nov 22, 2018

Repository files navigation

ELPS (Ellipse)

An embedded lisp system for Go programs.

CircleCI

Build

go get -d ./...
make

Try it out

An example WASM build is available on github pages (source).

Usage

Launch an interactive REPL

$ elps repl
> (+ 3 1)
4
>^D
done
$

Run a program in a file

$ elps run prog.lisp

Embedded execution in a Go program

env := lisp.NewEnv(nil)
env.Reader = parser.NewReader()
lerr := lisp.InitializeUserEnv(env)
if !lerr.IsNil() {
   log.Panicf("initialization error: %v", lerr)
}
lerr = lisplib.LoadLibrary(env)
if !lerr.IsNil() {
    log.Panicf("stdlib error: %v", lerr)
}
env.LoadString(`(debug-print "hello-world")`)

Reference

See the docs/ directory for more documentation:

See the _examples/ directory for examples:

About

An embedded lisp interpreter

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 89.3%
  • Common Lisp 8.3%
  • NewLisp 1.5%
  • Other 0.9%