The experimental java implementation of Serene aka (Serene Simple)
Перейти к файлу
Sameer Rahmani 52e2801fd2 nRepl functionality has been added 2020-01-26 11:36:38 +00:00
benchmarks Native reduce function has been added 2020-01-03 00:03:56 +00:00
gradle/wrapper Reverted gradle changes. LSP has some issues with maven 2019-12-14 22:47:56 +00:00
src nRepl functionality has been added 2020-01-26 11:36:38 +00:00
.gitignore distZip task has been added 2020-01-02 17:25:33 +00:00
LICENSE LICENSE file has been added 2019-12-28 19:52:21 +00:00
Makefile Very simple nrepl has been added 2020-01-24 17:11:56 +00:00
README.md nRepl functionality has been added 2020-01-26 11:36:38 +00:00
build.gradle Reverted gradle changes. LSP has some issues with maven 2019-12-14 22:47:56 +00:00
gradlew Reverted gradle changes. LSP has some issues with maven 2019-12-14 22:47:56 +00:00
gradlew.bat Reverted gradle changes. LSP has some issues with maven 2019-12-14 22:47:56 +00:00
settings.gradle Reverted gradle changes. LSP has some issues with maven 2019-12-14 22:47:56 +00:00
test.srns distZip task has been added 2020-01-02 17:25:33 +00:00

README.md

Serene (Simple) version

Serene simple is a lisp that is implemented in Java as a proof of concept and as an experience to collect data on some of the ideas and implementations that I have. For the full story checkout my blog.

Requirements

  • JDK >= 1.8
  • rlwrap
  • gradle

Repl

in order to run the REPL, run make repl

nRepl

Use make nrepl command to fire up a nRepl process and connect to it using netcat or something similar. If you're using Emacs, there is a serene-mode available that distributes as part of FG42.

Serene's nRepl is super simple. It waits for a newline char and then evaluates the given input. It sends back the result of the evaluation in <status-char><value> format. status-char is either 0 or 1. Zero means the evaluation was successful and the value is the result of evaluation while one means there was an error during the evaluation and the value is the traceback for the exception.