summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorVinicius Monego <monego@posteo.net>2020-07-11 19:13:58 -0300
committerMarius Bakke <marius@gnu.org>2020-07-21 23:54:45 +0200
commit264070986f5c7a014b118c8768f1b937decfece8 (patch)
tree357fd0fbcccdc4c1dd8440e6a26f9d81712b939a /gnu
parent569959dd6688d6556ae8d0c569ec45cffb5461d5 (diff)
gnu: Add chaiscript.
* gnu/packages/cpp.scm (chaiscript): New variable. Signed-off-by: Marius Bakke <marius@gnu.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/cpp.scm32
1 files changed, 32 insertions, 0 deletions
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index cfbd11618e..8b4b99d495 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -10,6 +10,7 @@
;;; Copyright © 2020 Roel Janssen <roel@gnu.org>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -167,6 +168,37 @@ accelerated implementation of common mathematical functions operating on
batches.")
(license license:bsd-3)))
+(define-public chaiscript
+ (package
+ (name "chaiscript")
+ (version "6.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ChaiScript/ChaiScript")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0i1c88rn1wwz8nf3dpapcdkk4w623m3nksfy5yjai10k9irkzy3c"))))
+ (build-system cmake-build-system)
+ (home-page "https://chaiscript.com/")
+ (synopsis "Embedded scripting language designed for C++")
+ (description
+ "ChaiScript is one of the only embedded scripting language designed from
+the ground up to directly target C++ and take advantage of modern C++
+development techniques. Being a native C++ application, it has some advantages
+over existing embedded scripting languages:
+
+@enumerate
+@item Uses a header-only approach, which makes it easy to integrate with
+existing projects.
+@item Maintains type safety between your C++ application and the user scripts.
+@item Supports a variety of C++ techniques including callbacks, overloaded
+functions, class methods, and stl containers.
+@end enumerate\n")
+ (license license:bsd-3)))
+
(define-public fifo-map
(let* ((commit "0dfbf5dacbb15a32c43f912a7e66a54aae39d0f9")
(revision "0")