summaryrefslogtreecommitdiff
path: root/lang/ksi
diff options
context:
space:
mode:
authorasau <asau@pkgsrc.org>2010-08-12 09:27:54 +0000
committerasau <asau@pkgsrc.org>2010-08-12 09:27:54 +0000
commit1e0c82cbf03f19623366d26dd5cc531da322178e (patch)
treeb8008e8a17df616ee424c5a1f265370261a34ea2 /lang/ksi
parent7c589559d4b1e3dfa1bd589afdb4d6a544dd92cc (diff)
downloadpkgsrc-1e0c82cbf03f19623366d26dd5cc531da322178e.tar.gz
Update to KSi 3.9.0
3.9.0 ===== * Prerelease of the 4.0.0 that will be R6RS compliant. * The doc directory temporary removed from distrib. The old docs obsolete and new is not ready. * Simple R6RS-like library manager implemented. "load" function removed (use "import" syntax instead). * the ksi module system removed in a favour of new R6RS library system. * `psyntax.ss' that implemented 'syntax-case' in older revisions of the ksi, was removed. As a result, only core syntax evaluated by ksi. And ksi core is not a R6RS core :-( * '(gensym)' generate (almost) unique symbol names. As a part of generated symbol name used a 'session_id' that is initialized at startup. So, each ksi invocation has its own 'session_id'. This can help (in a future) to hardly optimize the scheme code evaluation Now the 'session_id' is initialized with random bits converted to readable string. * the "do" syntax, "delay" syntax and "force" function was removed from the ksi core. * the 'struct Ksi_Environ' and companions was rewriten almost completly. Now the environment has the name, the export list and the hashtab that maps the symbol to the value A value can be a plain value (the symbol is a variable) or a syntax value. If a symbol is bound to a syntax value, it can not be defined, assigned or used in any other case except in a intented syntax form As a special case, if a symbol is bound to a syntax value and the value is a procedure, the procedure is applyed to the form before evaluating it. (Look at 'ksi_defsyntax()' and 'ksi_compile()' for details). This mechanics is intended for low-level macros (as "define-macro!") and derived forms such as 'cond', 'case', etc. The normal sanitary macro system planned ;-). * All packed-in-the-pointer objects was removed. Such objects as 'ksi_nil', 'ksi_false' and so on, are implemented as a pointers to a memory location that allocated when initializing the ksi library. Do not be suprized the error if you use its before calling `ksi_init()'. * The 'struct Ksi_Char' (added) is internal representation of a character now. (first step to unicode). * the GMP library used for exact arithmetics now. As a result, the ksi supports the exact rational numbers now. * The short integers was removed. Bignums are the only exact numbers now. And predefined constans 'ksi_zero', 'ksi_one', etc was removed too. (Use 'ksi_long2num()' in C code) * A flonum has real and imag part always, and so, a flonum is a complex number now. But 'real?' returns #t if imaginary part is zero and 'number->string' do not print "+0.0i" if imaginary part is zero. (This is not what R6RS requires but alas, it is the ksi) * balanced comments are writen within "#| |#" construct now (not with "#! !#" as in the previous revisions of the ksi). The sequence "#!<identifier>" used for the reader directives now. In addition, to support the scheme scripts, the sequence "#! " (note whitespace) and "#!/" in the very begin of a file supposed as a one-line comment. * Reader now case-sensitive by default, as required R6RS. Use the "#!fold-case" directive to switch the reader to the case-insensitive mode, and "#!no-fold-case" to switch to the case-sensitive mode back. * By default, the reader parses postfix keyword notation, such as "key:". "#!keyword-prefix" switches the reader to prefix mode, such as ":key", and "#!keyword-postfix" switches the reader back to postfix mode. * By default, the reader do not parses the old ksi keyword notation, such as "#:key". Use the "#!keyword-sharp" directive to switch the old mode on, and "#!no-keyword-sharp" to switch off. * "#!r6rs" directive switches the reader to the R6RS mode, and "#!ksi" directive switches the reader to the default mode back. In the r6rs mode: -- the keywords are not parsed at all; -- any sequence that starts with digit, '+', '-', '.', tried to be parsed as a number and, if cannot, exception raised. Otherwice the sequence is parsed as a symbol. In the ksi mode: -- the keywords are parsed; -- any sequence, that starts with digit, or '+', '-', '.' folowed by digit, tried to be parsed as a number and, if cannot, exception raised. Otherwice the sequence is parsed as a symbol. So, the sequence like '+x' is parsed as symbol in the ksi mode, but raise exception in the r6rs mode. Note that in the previous revisions of the ksi, any sequence, that cannot be parsed as a number, was considered as a symbol (never exception raised). 3.5.1 ===== * bugfixes * (Windows) ksi dll name has version info now. 3.5.0 ===== * code refactoring
Diffstat (limited to 'lang/ksi')
-rw-r--r--lang/ksi/Makefile6
-rw-r--r--lang/ksi/PLIST66
-rw-r--r--lang/ksi/distinfo8
3 files changed, 37 insertions, 43 deletions
diff --git a/lang/ksi/Makefile b/lang/ksi/Makefile
index e7ac3164a2b..baf9f4e0d51 100644
--- a/lang/ksi/Makefile
+++ b/lang/ksi/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.18 2009/05/20 00:58:19 wiz Exp $
+# $NetBSD: Makefile,v 1.19 2010/08/12 09:27:54 asau Exp $
-DISTNAME= ksi-3.4.3
-PKGREVISION= 1
+DISTNAME= ksi-3.9.0
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=ksi/}
@@ -25,4 +24,5 @@ USE_PKGLOCALEDIR= yes
.include "../../devel/boehm-gc/buildlink3.mk"
.include "../../devel/readline/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
+.include "../../devel/gmp/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/lang/ksi/PLIST b/lang/ksi/PLIST
index a5182e2fa57..34b8fd3dafc 100644
--- a/lang/ksi/PLIST
+++ b/lang/ksi/PLIST
@@ -1,45 +1,39 @@
-@comment $NetBSD: PLIST,v 1.5 2009/06/14 18:03:35 joerg Exp $
+@comment $NetBSD: PLIST,v 1.6 2010/08/12 09:27:54 asau Exp $
bin/ksi
-bin/ksi-compile
bin/ksi-config
include/ksi/ksi.h
+include/ksi/ksi_buf.h
+include/ksi/ksi_comp.h
include/ksi/ksi_conf.h
-include/ksi/ksi_ext.h
+include/ksi/ksi_env.h
+include/ksi/ksi_evt.h
+include/ksi/ksi_gc.h
+include/ksi/ksi_hash.h
+include/ksi/ksi_int.h
include/ksi/ksi_jump.h
-include/ksi/ksi_path.h
-include/ksi/ksi_prim.h
-include/ksi/ksi_regexp.h
+include/ksi/ksi_klos.h
+include/ksi/ksi_port.h
+include/ksi/ksi_printf.h
+include/ksi/ksi_proc.h
include/ksi/ksi_type.h
+include/ksi/ksi_util.h
include/ksi/ksi_ver.h
include/ksi/ksi_vtab.h
-include/ksi/ksi_z.h
-info/ksi-lang.info
-info/ksi-lib.info
-info/ksi.info
lib/ksi/libksi.la
-lib/ksi/libregexp.la
-lib/ksi/libzip.la
-share/ksi/3.4/Boot.ko
-share/ksi/3.4/Init.ko
-share/ksi/3.4/comparse.ko
-share/ksi/3.4/compiler.ko
-share/ksi/3.4/cpage.ko
-share/ksi/3.4/getopt.ko
-share/ksi/3.4/html.ko
-share/ksi/3.4/klos.ko
-share/ksi/3.4/ksi-init.ko
-share/ksi/3.4/list.ko
-share/ksi/3.4/match.ko
-share/ksi/3.4/modules.ko
-share/ksi/3.4/pp.ko
-share/ksi/3.4/psyntax.ko
-share/ksi/3.4/record.ko
-share/ksi/3.4/regexp.so
-share/ksi/3.4/regexp1.ko
-share/ksi/3.4/srfi.ko
-share/ksi/3.4/struct.ko
-share/ksi/3.4/symprop.ko
-share/ksi/3.4/syncase.ko
-share/ksi/3.4/zip.so
-share/ksi/app/ksi/Main.ko
-share/ksi/site/SiteInit.scm
+share/ksi/${PKGVERSION}/Boot.scm
+share/ksi/${PKGVERSION}/ksi/getopt.scm
+share/ksi/${PKGVERSION}/ksi/init.scm
+share/ksi/${PKGVERSION}/ksi/io.scm
+share/ksi/${PKGVERSION}/ksi/klos.scm
+share/ksi/${PKGVERSION}/ksi/list.scm
+share/ksi/${PKGVERSION}/ksi/number.scm
+share/ksi/${PKGVERSION}/ksi/sort.scm
+share/ksi/${PKGVERSION}/ksi/struct.scm
+share/ksi/${PKGVERSION}/rnrs/base.scm
+share/ksi/${PKGVERSION}/rnrs/eval.scm
+share/ksi/${PKGVERSION}/rnrs/hashtables.scm
+share/ksi/${PKGVERSION}/rnrs/list.scm
+share/ksi/${PKGVERSION}/rnrs/mutable-pairs.scm
+share/ksi/${PKGVERSION}/rnrs/mutable-strings.scm
+share/ksi/${PKGVERSION}/rnrs/programs.scm
+share/ksi/${PKGVERSION}/rnrs/sorting.scm
diff --git a/lang/ksi/distinfo b/lang/ksi/distinfo
index 164443dc777..17c969899d7 100644
--- a/lang/ksi/distinfo
+++ b/lang/ksi/distinfo
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.6 2009/04/20 22:43:01 asau Exp $
+$NetBSD: distinfo,v 1.7 2010/08/12 09:27:54 asau Exp $
-SHA1 (ksi-3.4.3.tar.gz) = ce5f0af66b8ff998c5ea1434bea73715a547a4f2
-RMD160 (ksi-3.4.3.tar.gz) = f1a6f7ee278fc2fcbbb340bac49438152d2fe683
-Size (ksi-3.4.3.tar.gz) = 1127832 bytes
+SHA1 (ksi-3.9.0.tar.gz) = ee24486793f23f48f4a2e848db4ab58282e3a39c
+RMD160 (ksi-3.9.0.tar.gz) = c8edf574c42448ed50887322a5fd7d1d13e94803
+Size (ksi-3.9.0.tar.gz) = 489597 bytes
SHA1 (patch-aa) = b361c1dd64726cac15f3c0aea469f45cb433a044