История

На дизайн newLISP повлияли два основных диалекта Lisp, Common Lisp и Scheme, а также другие языки, такие как Pascal и C. newLISP возник в 1991 году и первоначально был разработан на рабочей станции Sun 4. Позже он перешел на Windows 3.0, где версия 1.3 была выпущена на CompuServe около 1993 года, а затем стал доступен как графическое приложение Windows (GUI) и консольное приложение DOS (оба 16-битные). В 1995 году, с выпуском Windows 95, newLISP перешел на 32-битную версию. В апреле 1999 года newLISP был портирован на Linux; некоторые из его основных алгоритмов были переписаны, и весь код, специфичный для Windows, был удален. newLISP был выпущен как проект с открытым исходным кодом под лицензией GPL, и разработка для Windows прекратилась после версии 6.0.25. В первой половине 2001 года newLISP был портирован обратно на Windows на платформе Cygwin без графических возможностей. Во второй половине 2001 года был выпущен кроссплатформенный интерфейс Tcl/Tk под названием newLISP tk, примерно версии 6.3.0. В 2006 году была введена 64-битная точность для целочисленной арифметики и для некоторых операций с файлами в версии 9.0. С момента выхода версии 6.5 в середине 2002 года разработка ведется очень активно, и было добавлено множество новых функций.

Философия

newLISP стремится предоставить быструю, мощную, кроссплатформенную и полнофункциональную версию языка Lisp для скриптинга, используя при этом лишь умеренные системные ресурсы, такие как хранилище данных (например, дисковое пространство) и память. Он предоставляет возможности Lisp, такие как списки, обработка символов, сопоставление функций, анонимные функции (лямбда-выражения), S-выражения (за исключением несобственных списков) и макросы. Он также предоставляет функции, ожидаемые от современного языка скриптов, включая поддержку регулярных выражений, XML, Unicode (UTF-8), сетевое взаимодействие через протокол управления передачей (TCP), Интернет-протокол (IP) и протокол пользовательских дейтаграмм (UDP), обработку матриц и массивов, продвинутую математику, статистику и байесовский статистический анализ, математические финансы и распределенные вычисления. newLISP работает на операционных системах Berkeley Software Distribution (BSD), Linux, macOS, Solaris, Windows и Rockets.