]> git.eshelyaron.com Git - esy-publish.git/commitdiff
Add Projects entry about `eshellisp`
authorEshel Yaron <eshel@areionsec.com>
Sat, 23 Apr 2022 16:01:53 +0000 (19:01 +0300)
committerEshel Yaron <eshel@areionsec.com>
Sat, 23 Apr 2022 16:01:53 +0000 (19:01 +0300)
org/index.org

index 2fd120530faedea6234dbdc5bbf9de295860a4ea..2129a4838fdd154d6653abd0f4fa117feb9c4d16 100644 (file)
@@ -30,6 +30,27 @@ An implementation of the [[https://microsoft.github.io/debug-adapter-protocol/][
 facilitating an advanced debugging experience for Prolog from the
 comfort of GNU Emacs (and other editors, as well).
 
+** [[https://git.sr.ht/~eshel/eshellisp][eshellisp]]
+:PROPERTIES:
+:CUSTOM_ID: eshellisp
+:END:
+
+A simple [[https://git.sr.ht/~eshel/eshellisp][Lisp interpreter implemented in SWI-Prolog]].
+
+#+begin_src sh
+  $ cat fib.eshellisp
+  (define fib (n)
+       (if (<= n 1) 0 (fib1 0 1 1 n)))
+
+  (define fib1 (f1 f2 i to)
+       (if (<= to i) f2 (fib1 f2 (+ f1 f2) (+ i 1) to)))
+
+  (fib 250)
+  $ time eshellisp fib.eshellisp
+  % 7896325826131730509282738943634332893686268675876375
+  eshellisp fib.eshellisp  0.05s user 0.01s system 92% cpu 0.066 total
+#+end_src
+
 ** [[https://git.sr.ht/~eshel/flymake-swi-prolog][flymake-swi-prolog.el]] and [[https://git.sr.ht/~eshel/diagnostics.pl][diagnostics.pl]]
 :PROPERTIES:
 :CUSTOM_ID: flymake-swi-prolog