newLISP

Software Screenshot:
newLISP
Software Details:
Version: 10.6.0
Upload Date: 17 Feb 15
Developer: Nuevatec
Distribution Type: Freeware
Downloads: 67

Rating: 2.3/5 (Total Votes: 3)

newLISP is an open source, cross-platform and freely distributed software project designed from the offset to be used for various applications in AI (Artificial Intelligence), big data, machine learning, natural language processing, simulation, and so on. It is described by its developers as a Lisp-like, general-purpose scripting language.

Features at a glance

Key features include Perl Compatible Regular Expressions (PCRE), support for JSON and XML text processing functions, date and time functions, multi-processing support, pattern matching, support for several networking functions, including ICMP (Internet Control Message Protocol), TCP/IP, HTTP and UDP, financial functions, classic statistics functions, advanced math functions, nested associations, FOOP (Functional Object Oriented Programming), name spaces for programming modules, unlimited and fast precision integer arithmetic, as well as support for distributed computing.

It’s small, fast, friendly and documented

newLISP is friendly, fast, small, documented, include a modern, documented and complete API, it's expandable with shared C-libraries and modules, includes server modes for distributed computing built-in, built-in parallel and distributed processing, a powerful plugin architecture that extends its default functionality through shared C libraries and modules, as well as built-in server modes that can be used for distributed computing.

It’s low on resources

It needs very small resource requirements, so it can be easily used for embedded systems applications. newLISP comes with important functions, such as networking, support for multicore and distributed processing, and Bayesian statistics functions. Its IDE (Integrated Development Environment) is written using newLISP-GS GUI Server, and provides modules for MySQL, Zlib, PostScript, Crypto and SQLite.

Supported operating systems and 64-bit platforms

At the moment, the newLISP is available for the GNU/Linux, UNIX, Mac OS X and Microsoft Windows operating systems. It comes as binary installers and a universal source archive, which have been successfully tested on both 64-bit (x86_64) and 32-bit (x86) hardware platforms.

What is new in this release:

  • Development release v.10.6.1 makes additions and improvements in several areas and fixes bugs.

What is new in version 10.6.0:

  • Stable release 10.6.0 now has a native expansion macro function and adds many other improvements in several areas.

What is new in version 10.5.7:

  • Additions and changes:
  • In json-parse the last element in JSON arrays may inow have a trailing comma.
  • In arithmetic big integer operators: + - * / %, now more than two operands are allowed as in normal precision integer operations.
  • The gcd function now supports big integer operations.
  • On Windows format now supports UNIX format characters for 64-bit integers, i.e.: %lld %llu %llx %llX, additionally to: %I64d %I64u %I64x %I64X.
  • The pretty-print default float setting has been changed to "%1.15g".
  • On Linux and MacOS X 10.9+ the % format character can be followed by a single quote ' when using the format function. This causes thousand's separators to be inserted in decimal integer and floating point number formats, e.g.: (format "%'d" 12345) ;=> 12,345. Not working on all locale settings.
  • reset now also cancels command line parameter processing.
  • apply, corr, map, reverse, stats and t-test can now be used on arrays.
  • 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 always be nil for the hash statement syntax for namespaces to work.
  • When copying symbols with 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))
  • The int function handles binary numbers in strings as in "0b101010" for the number 42. This number format was introduced in v.10.4.4.
  • Integers are accepted as hash keys. This allows creating sparse vectors:
  • (new Tree 'V)
  • (V 123 "hello")
  • (V 123) => "hello"
  • Anaphoric system variable $it is now also set to the value of the conditional expression in if.
  • length now returns the number of digits when used on integers as it does already on big integers. On floats the number of digits before the decimal separator is returned.
  • newLISP can now be compiled to JavaScript and run in a web browser. The compile is done using the Emscripten tool set. A complete package to run newLISP in a web browser will be released.
  • Changes and additions in Guiserver:
  • New table functions: gs:table-remove-row, gs:table-set-column-name and gs:table-set-row-count. To avoid API naming confusion, 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. Thanks to Ferry de Bruin for implementing the new functions.
  • When creating a table using gs:table, a headerless table can be created by specifying empty strings "" for all column headers. The function gs:table-add-column will work accordingly.
  • Three new optional parameters for gs:scroll-pane can specify column headers, row headers and a widget for the top left corner of a table used in the scroll pane.
  • Bug fixes:
  • The big integer version of the -- (decrement) operator left the sign of the second operand changed.
  • bayes-query with Fisher's inverse Chi² 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. When using the Chain Bayesian method, results were always correct.
  • Fixed a cell leak introduced in version 10.5.4 when deleting contexts.
  • A fix in round when the value is 0.5.
  • The debugger will now always highlight the correct expression, not highlight the first of multiple instances.
  • find-all in string mode now returns the empty list () instead of nil when nothing is found and as described in the manual.
  • Fixed a crash bug when the colon operator has missing or wrong-type args on 64-bit compiles.
  • Other changes:
  • Documentarion changes.
  • Additions and changes to qa scripts.

What is new in version 10.5.6:

  • This development release has small improvements and bugfixes in several areas.

What is new in version 10.5.5:

  • This development release has small improvements and bug fixes in several areas.

What is new in version 10.5.4:

  • This stable release fixes bugs and adds two new call patterns to the t-test function.

What is new in version 10.5.3:

  • This version fixes bugs and adds functions for KMEANS cluster analysis.

What is new in version 10.5.2:

  • This development release fixes bugs and introduces functions for kmeans cluster analysis.

What is new in version 10.5.1:

  • This version fixes division for unlimited precision integers.
  • Normal 64-bit arithmetic was not affected.

Similar Software

MDR
MDR

11 May 15

COBE
COBE

14 Apr 15

URBI SDK
URBI SDK

14 Apr 15

Comments to newLISP

Comments not found
Add Comment
Turn on images!