./lang/newlisp, Lisp-like, general-purpose scripting language

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 10.7.5, Package name: newlisp-10.7.5, Maintainer: ryoon

newLISP is a Lisp-like, general-purpose scripting language. It is
especially well-suited for applications in AI, web search, natural
language processing, and machine learning. Because of its small
resource requirements, newLISP is also excellent for embedded
systems applications. Most of the functions you will ever need are
already built in. This includes networking functions, support for
distributed and parallel processing, and Bayesian statistics.

Required to run:
[devel/readline] [lang/openjdk8]

Required to build:

Master sites:

SHA1: 706fd8af9eb22e19a6f662a2a18fcbba083721db
RMD160: 62acd6c9fc31438689cc221cf3541de23ef0b4d3
Filesize: 1141.5 KB

Version history: (Expand)

CVS history: (Expand)

   2019-08-23 15:41:32 by Ryo ONODERA | Files touched by this commit (4) | Package updated
Log message:
Update to 10.7.5

* GUI in Java was removed in 10.7.2 release.
* Fix build error related to readline with devel/readline. PR pkg/54484

   Fixing out-of-sink of file positions when mixing 'search' and 'seek'
   with 'read-line' on IO-streams introduced a new errror making
   the newlisp-10.x.x/examples/upload.cgi script fail.

   Supress loading of startup init.lsp when -h option is present. Before
   only the -n and -x options supressed init.lsp.

   Change in modules/gsl.lsp to make it work on locales using comma separator.

   Ability to use 'open', 'rename-file', 'delete-file', 'make-dir' and
   'remove-dir' with UTF16 filenames in UTF8 versions on Windows when
   using the UTF8 version of newLISP. The functions 'file-info', 'file?',
   'change-dir' and 'dir? already worked on UTF16 filenames when using the UTF8
   version of newLISP on Windows.

   Thanks to Michael Sabin who started the work a few years back writing the
   win-path.c file with functions translating between UTF8 and UTF16.

   When using the UTF8 version of newLISP on Windows in a command shell, that
   command shell program also should be able to handle/display UTF8 (not UTF16).
   On Windows and Linux the Java based frontend newLISP-GS handles UTF8.
   On Mac OS the terminal program handles UTF8.

   Fixed a wrong 'symbol protected message' when a protected symbol is
   part of a nested espression, but not a symbol with its content to be

   New modules/postscript.lsp changes description of ps:drawto.

   Fixed flushing problem on 'print' to stdout on Mac OS and other BSDs.

   '(read-key true)' with the 'true' parameter is now non-blocking.

   (trim str) on some strings containing 0's would overrun memory and 0's
   where not trimmed from the left. All character <= 32 (space) should
   be trimmed from the left and right ends of the string buffer. When the
   entire string is valid ASCII or UTF-8 with no 0s, ‘trim’ behaves
   like in older versions.

   When starting newlisp in -http-safe server mode HTTP_PUT and HTTP_DELETE
   requests will not be served. This will cause 'write-file' and 'delete-file'
   in url syntax, 'put-url' and 'delete-url' functions issued from a newLISP
   client to return the text message "Server in safe mode".

   New file qa-specific-tests/qa-share.lsp .

   New guiserver.jar v 1.67 compiled with java 1.6
   Still problems on macOS, some unrelated to change to image/icon load change

   Added REQUEST_URI to environment variables in webserver mode.

   Removed code introduced in 10.7.2 to syncronize file poisitons of C FILE stream
   and raw file handle operations. Syncronization still seem s to work on cases
   tested, but may not work in all cases mixing 'read-line' and 'seek'.

   Changes for separately packaged Java Guiserver and elimination of installers.

   (rotate theList -offsetOfRotation) was buggy

   In getPutPostDeleteUrl(....) sock wasn't closed when returning with webError(..)

   compareLists() in nl-math.c did not take list lengths into account. Also update
   of qa-dot for relevant cases.
   2019-04-24 15:09:45 by Hauke Fath | Files touched by this commit (4)
Log message:
Upgrade lang/newlisp from 10.6 to 10.7.1

Changes too numerous to include, see
   2016-04-01 18:22:15 by Jonathan Perkin | Files touched by this commit (1)
Log message:
Pass --mandir.  Fixes PKGMANDIR.
   2015-11-03 23:50:46 by Alistair G. Crooks | Files touched by this commit (194)
Log message:
Add SHA512 digests for distfiles for lang category

Problems found with existing digests:
	Package nhc98 distfile nhc98src-1.22.tar.gz
	a8adc8f22371998ee0657bc0e01058a57d876abc [recorded]
	81975fcb5f1dda5efeaabc30ce8c6dceae55e591 [calculated]

Problems found locating distfiles:
	Package gcc-aux: missing distfile ada-bootstrap.i386.dragonfly.36A.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.i386.freebsd.84.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.x86_64.dragonfly.36A.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.x86_64.freebsd.84.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.x86_64.solaris.511.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.i386.dragonfly.36A.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.i386.freebsd.84.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.x86_64.dragonfly.36A.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.x86_64.freebsd.84.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.x86_64.solaris.511.tar.bz2
	Package ghc7: missing distfile ghc-7.6.3-boot-i386-unknown-freebsd.tar.xz
	Package icc11: missing distfile l_cproc_p_11.1.080.tgz
	Package jini: missing distfile jini-1_2_1_001-src.zip
	Package oo2c: missing distfile oo2c_32-2.0.11.tar.bz2
	Package openjdk7: missing distfile \ 
	Package openjdk7: missing distfile \ 
	Package openjdk7: missing distfile \ 
	Package openjdk7: missing distfile \ 
	Package openjdk7: missing distfile \ 
	Package openjdk7: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package oracle-jdk8: missing distfile jdk-8u60-linux-i586.tar.gz
	Package oracle-jdk8: missing distfile jdk-8u60-solaris-x64.tar.gz
	Package oracle-jre8: missing distfile jre-8u60-linux-i586.tar.gz
	Package oracle-jre8: missing distfile jre-8u60-solaris-x64.tar.gz
	Package sun-jdk6: missing distfile jdk-6u45-linux-i586.bin
	Package sun-jdk6: missing distfile jdk-6u45-solaris-i586.sh
	Package sun-jdk7: missing distfile jdk-7u72-linux-i586.tar.gz
	Package sun-jdk7: missing distfile jdk-7u72-solaris-i586.tar.gz
	Package sun-jre6: missing distfile jce_policy-6.zip
	Package sun-jre6: missing distfile jre-6u45-linux-x64.bin
	Package sun-jre6: missing distfile jre-6u45-solaris-x64.sh
	Package sun-jre7: missing distfile jre-7u72-linux-i586.tar.gz
	Package sun-jre7: missing distfile jre-7u72-solaris-i586.tar.gz

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
   2015-06-10 16:59:43 by Joerg Sonnenberger | Files touched by this commit (3)
Log message:
Fix readline detection and use.
   2014-07-07 16:41:09 by Ryo ONODERA | Files touched by this commit (1)
Log message:
The symlink to java is not needed anymore.
   2014-07-07 16:25:32 by Ryo ONODERA | Files touched by this commit (4) | Package updated
Log message:
Update to 10.6.0 from 10.5.4

* Add Java dependency, it is used with GUI server.

10.5.5 2013 November 20th, development release
   Allow trailing , (comma) in JSON arrays. The new JSON ECMA-404 seems not
   to allow it but the JavaScript standard ECMA-262 and many browsers do.

   Added makefile_linux_openwrt for for TP-link TL-WR703N travel router
   contributed by Dexter.

   In arithmetik big integer operations + - * / % more than two operands
   are allowed as in normal precision integer operations.

   On Windows support UNIX conventions for formatting 64-bit integers.
   I.e.: %lld %llu %llx %llX additionally to %I64d %I64u %I64x %I64X

   Added ++, -- to qa-bigint. Fixed sign change on second operand of
   bigint -- when second operand was negative.

   Some cleanup in Cilk API when releasing resources.

   The 'gcd' function now also works on big integers and > 2 operands.

   On UBUNTU Linux decimal numbers can be formatted using a GNU extension
   in libc, e.g: (format "%'d" 12345) => 12,345
   The optional ' (single quote) after the % character causes thousands
   to be separated with the appropiate character for the current locale.

   Fixed a cell leak introduced in 10.5.5 when deleting contexts.

   The default pretty-print float setting has been changed to "%1.15g".

   'reset' now also cancels command line parameter processing.

   A fix in 'round' when number is exacty 0.5.

   'map', 'apply', 'stats', 'corr', 't-test' now also can take arrays

   'bayes-query' with Fisher's Chi2 method calculated wrong probabilities
   when training in more than two categories. When training in two
   categories the result probabilities were swapped - reporting the
   probability for the second category first. 'bayes-query' calculating
   probabilities with the Chain Bayesian method - using the true flag -
   was not affected.

   Many documentation changes and corrections.

10.5.6 December 10th, 2013, development release
   Since OSX 10.9 Maverick (format "%'d" 12345) => 12,345 will work too.
   Will not work on any locale but works on en_US.UTF-8.

   Fixed 'apply' for arrays introduced in 10.5.5 for a cell/memory leak.

   When making hash trees using the predefined context 'Tree',
   the default symbol in the new context is protected as is 'Tree:Tree'.
   Default symbols in hash trees must be 'nil' in order for the hash
   statement syntax for namespaces to work.

   When copying symbols from a source context to a target contest using 'new'
   or 'def-new', the 'protected?' property is copied too.

   An empty list as index vector for a list or array yields the original
   list or array as return value:
       (set 'L '(1 2 (3 4)))
       (L '())    => (1 2 (3 4))
       (nth '() L) => (1 2 (3 4))

   Many document changes, additions and corrections.

   'int' can convert binarys numbers like (int "0b11111") => 31
   This format is recognized by the code reader/loader since v.10.4.4.

   Integers are accepted as hash keys. This allows creating sparse vectors:
       (new Tree 'V)
       (V 123 "hello")
       (V 123) => "hello"

   'reverse' can be used on arrays.

   Anaphoric system variable $it is now set to the value of the conditional
   expression in 'if'.

   Speed improvements in evaluateExpression().  For this The -pendatic option
   has been turned off in Linux to avoid ISO C90 mixed declaration warnings.

   'length' on integers will return the number of digits, just like it already
   does on bigint numbers, on floats returns the number of decimal digits before
   the decimal separator.

   Fixes for deprecated CYGWIN compile. See also makefile_cygwin for more info.

   Clear potential error condition when doing 'import'.

   In guiserver.jar: When adding columns with empty string headers, this will not
   any more put the column number as header. This allows to add columns to
   headerless tables, as possible when supplying empty string headers in the
   initial gs:table statement.

   Debugger will now always highlight the correct expression, not highlight
   the first one if multiple instances exist.

   Eliminated strncat() for BSD and better speed with memcpy() in most places.

   Delay signal-behavior change in spawn after getting parameters. Makes better
   error recovery.

   In guiserver.jar: New table functions. Thanks to Ferry de Bruin.
     gs:table-remove-row, gs:table-set-column-name and gs:table-set-row-count.
   To avoid API naming confusions, the naming of old gs:table-set-row-number
   is deprecated and should be called as gs:table-show-row-number.
   The old naming will continue to work. Three new optional parameters for
   'gs:scroll-pane' can specify colun header, row headers and a widget
   for the top left corner of a table used in the scroll pane.

   'find-all' should return an empty list as documented when nothing is found
   on strings too.

   Some renaming of functions and constants for better code readability and
   some small refactoring in several files.

   qa-bench has been redone with changes for Emscripten compiled newLISP.
   Now calibrates for comparison with Mac OSX 9.1 on 2.3GHz Intel Core i5.

   Fixed a crash bug when colon operator has missing or wrong-type args
   on 64-bit compiles.

   newLISP compiled to JavaSript with Emscripten
   Added makefile_emscripten_lib_utf8. For this
   Must download and install the Emscripten-SDK from here:
       https://github.com/kripken/emscripten/w … ripten-SDK
   Tested on OSX 10.9 installing emsdk-portable.tar.gz v.1.7.8

   The newlisp-js-lib.js is made using makefile_emscripten_lib_utf8.

   The new function 'eval-string-js' takes a JavaSript string.
   New 'display-html' can either replace the current page or display
   a page in a new tab of the host browser. 'display-html' must be
   defined in Emscripten appplication .html

   Some functions (filter, index, clean, exists, forl-all) will not show
   error messages under certain circumstanmces in the monitor, although
   newLISP behaves correctly throwing the exception (setjmp/longjmp), they
   just don't reach the Emscripten console (log). In this case, if the error
   is not 'catch'ed newLISP exits without advising why. This problem goes away
   when compiling with Emscriptem without any optimizations, but slows
   everything down by a factor of 40 to 50. Normal performance is around
   1.5 of native on Mac OSX when excluding all time/date related functions
   and a few other outliers. Including outliers about 2.65.
   See also here: https://github.com/kripken/emscripten/issues/810
   (volatile declaration did not help)

   All file and directory functions work (almost all did all the time),
   but changes are lost after leaving the page or reloading the page.
   Storage is 'session storage' only. No URLs are in allowed in file
   functions as is on native compiled newLISP.

   As editor, CodeMirror from codemirror.net is used and mode/newlisp.js
   was created for syntax high-lighting.

   'macro' is now a built-in primitive function working exactly as described
   in the macro.lsp module, which is now obsolete. Macros cannot be redefined
   using 'macro'. Macros can be nested. A symbol used as a macro can only be
   used as a macro, even if changing the definition of it.

   Another speed improvement for 'read-line' on file handles (the first speed
   improvement happend in 10.3.10).

   Eliminated emscripten-lib.c, gets handled by unix-lib.c.

   A fix for 'file?' and 'directory?' predicates when applied to root
   directories on Windows.

   Updated examples/udp-server.lsp to nmake it work on Windows.
   2013-10-12 12:30:40 by Ryo ONODERA | Files touched by this commit (3) | Package updated
Log message:
Update to 10.5.4

   3.7 newlispdoc cleanup ";; *" regex

   New FFI ffi.h include directory in makefile_linux* when installing libffi

   Fix for last list element optimization in push, pop and pop-assoc when
   popping and inserting last element

   Accessing a deleted context will never hang but give an error message

   Some changes in nl-filesys.c for AIX and new makefile for AIX ILP32

   On Windows: a fix for correctly closing logfiles initiated by newlisp -l or
   newlisp -L and for closing files created by the HTTP PUT operation.

   Two sample 't-test' when variances are different (independent samples) with
   new syntax:
        (t-test <list-vector-A> <list-vector-B> <float-probabilty>)
   When <float-probabilty> is specified, an internal F-test for variance
   equality in data A and B is performed. If the probablity of F is
   smaller than <float-probabilty>, then Welch's variant of the t-test for
   independent samples is performed. Using 1.0 <float-probabilty>, Welch
   can be forced even when variances are not significantly different.

   One sample 't-test' using new syntax pattern:
        (t-test <list-vector-data> <float-value>)
   Gives the two-tailed probability that observed mean is differs from \ 
   Instead of sdev for second list-vector the standard error for the observed mean
   is reported.

   Some cleanup and changes in scripts (makefiles) for binary installers