summaryrefslogtreecommitdiff
path: root/gnu/packages/lisp-xyz.scm
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2023-04-12 11:02:42 +0200
committerPierre Neidhardt <mail@ambrevar.xyz>2023-04-12 12:23:52 +0200
commit667ec4ac3285c4a74b5e5fcad411f4a221e549c5 (patch)
tree754015627b50a65a8a7bd6d3021e59445fcea42a /gnu/packages/lisp-xyz.scm
parent18584d665e9a1daa90c1404483f5255c581d1e72 (diff)
gnu: Add speechless.
* gnu/packages/lisp-xyz.scm (cl-speechless, ecl-speechless, sbcl-speechless): New variables.
Diffstat (limited to 'gnu/packages/lisp-xyz.scm')
-rw-r--r--gnu/packages/lisp-xyz.scm49
1 files changed, 49 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 6080b2d8e2..b5c9c7f3fa 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -29087,6 +29087,55 @@ that should make it much easier to write a client for a new chat protocol.")
(define-public maiden
(sbcl-package->cl-source-package sbcl-maiden))
+(define-public sbcl-speechless
+ (let ((commit "50e9b03bdfc8a3bc0836a650d92de47b51c39834")
+ (revision "1"))
+ (package
+ (name "sbcl-speechless")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shirakumo/speechless/")
+ (commit commit)))
+ (sha256
+ (base32 "1k0kc2l98jyv04l48xnj38qwpddan80c7m41srjld64jkna0fhas"))
+ (file-name (git-file-name "speechless" version))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-cl-markless
+ sbcl-documentation-utils))
+ (synopsis "Dialogue system language implementation")
+ (description "This is a system implementing an advanced dialogue system
+that is capable of complex dialogue flow including choice trees and
+conditional branching. Speechless was first developed for the
+\"Kandria\" (@url{https://kandria.com}) game, and has since been separated and
+made public in the hopes that it may find use elsewhere or inspire other
+developers to build similar systems.
+
+Speechless is based on the
+\"Markless\" (@url{https://shirakumo.github.io/markless}) document standard
+for its syntax and makes use of Markless' ability to be extended to add
+additional constructs useful for dialogue systems.
+
+Speechless can compile dialogue from its base textual form into an efficient
+instruction set, which is then executed when the game is run. Execution of the
+dialogue is completely engine-agnostic, and only requires some simple
+integration with a client protocol to run.
+
+Thanks to Markless' extensibility, Speechless can also be further extended to
+include additional syntax and constructs that may be useful for your
+particular game.")
+ (home-page "http://shirakumo.github.io/speechless/")
+ (license license:zlib))))
+
+(define-public speechless
+ (sbcl-package->cl-source-package sbcl-speechless))
+
+(define-public ecl-speechless
+ (sbcl-package->ecl-package sbcl-speechless))
+
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar