diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 720ac070c..ad8d16d4a 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2017, 2018 Efraim Flashner ;;; Copyright © 2017 Tobias Geerinckx-Rice +;;; Copyright © 2018 Benjamin Slade ;;; ;;; This file is part of GNU Guix. ;;; @@ -62,6 +63,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages version-control) #:use-module (gnu packages xorg) + #:use-module (gnu packages perl) #:use-module (ice-9 match) #:use-module (srfi srfi-1)) @@ -1442,3 +1444,46 @@ compressor. It works on data produced by @code{parse-js} to generate a `(("sbcl" ,sbcl) ("sbcl-cl-uglify-js" ,sbcl-cl-uglify-js))) (synopsis "JavaScript compressor"))) + +(define-public confusion-mdl + (let* ((commit "12a055581fc262225272df43287dae48281900f5")) + (package + (name "confusion-mdl") + (version "0.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url (string-append "https://gitlab.com/emacsomancer/" name )) + (commit commit))) + (sha256 + (base32 + "1zi8kflzvwqg97ha1sa5xjisbjs5z1mvbpa772vfxiv5ksnpxp0d")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; there are no tests + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda* (#:key (make-flags '()) #:allow-other-keys) + (apply invoke "make" "CC=gcc" make-flags))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (install-file "mdli" bin) + #t)))))) + (native-inputs + `(("libgc" ,libgc) + ("perl" ,perl))) + (synopsis "Interpreter for MDL") + (description "MDL (the MIT Design Language) is a descendant of Lisp. It +was originally developed in 1971 on the PDP-10 computer under the Incompatible +Timesharing System to provide high level language support for the +Dynamic Modeling Group at MIT's Project MAC. Infocom build the original +PDP-10 Zork in MDL and their later ZIL (Zork Implementation Language) was based +on a subset of MDL. Confusion is a MDL interpreter that works just well enough +to play the original mainframe Zork all the way through.") + (home-page "http://www.russotto.net/git/mrussotto/confusion/src/master/src/README") + (license license:gpl3+))))