summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2020-11-20 09:48:33 +0100
committerPierre Neidhardt <mail@ambrevar.xyz>2020-11-20 10:13:25 +0100
commit7a858c0c0aae2504ca17ab721088f998a54e0e9c (patch)
tree3c15fbb5a5eb3328aa6000563de3148f6e9715be /gnu
parent3d7917f04229fe533ee7dadfd64257b474dead86 (diff)
gnu: Add janet.
* gnu/packages/lisp.scm (janet): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/lisp.scm37
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index e1c8bbb5e3..4727b486e9 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -1001,3 +1001,40 @@ including a built-in database engine and a GUI system.")
(package
(inherit picolisp32)
(name "picolisp")))))
+
+(define-public janet
+ (package
+ (name "janet")
+ (version "1.12.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/janet-lang/janet")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0if514zdmbjvvrsa9x5yfvg2b14sz53yaka12g3yhwkq8ls3qk0c"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags (list
+ (string-append "DESTDIR=" (assoc-ref %outputs "out"))
+ (string-append "PREFIX=")
+ (string-append "CC=" (assoc-ref %build-inputs "gcc")
+ "/bin/gcc"))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'check
+ (lambda _
+ (invoke "make" "test"))))))
+ (home-page "https://janet-lang.org/")
+ (synopsis "Functional, imperative and embeddable programming language")
+ (description
+ "Janet is a functional and imperative programming language. It can be
+used for rapid prototyping, dynamic systems, and other domains where dynamic
+languages shine. You can also add Janet scripting to an application by
+embedding a single C file and two headers. It can be easily ported to new
+platforms. The entire language (core library, interpreter, compiler,
+assembler, PEG) is less than 1MB.")
+ (license license:expat)))