LispPad
  • Home
  • Applications
    • 🖥️LispPad
      • Sessions
      • Editor
      • Preferences
    • 📱LispPad Go
    • 📜Language
    • 📖Libraries
  • Libraries
    • ⚙️LispKit
      • (lispkit archive tar)
      • (lispkit archive zip)
      • (lispkit base)
      • (lispkit bitset)
      • (lispkit box)
      • (lispkit bytevector)
      • (lispkit char)
      • (lispkit char-set)
      • (lispkit combinator)
      • (lispkit comparator)
      • (lispkit control)
      • (lispkit core)
      • (lispkit crypto)
      • (lispkit csv)
      • (lispkit datatype)
      • (lispkit date-time)
      • (lispkit debug)
      • (lispkit disjoint-set)
      • (lispkit draw)
      • (lispkit draw turtle)
      • (lispkit draw barcode)
      • (lispkit draw chart bar)
      • (lispkit dynamic)
      • (lispkit enum)
      • (lispkit format)
      • (lispkit graph)
      • (lispkit gvector)
      • (lispkit hashtable)
      • (lispkit heap)
      • (lispkit http)
      • (lispkit http oauth)
      • (lispkit http server)
      • (lispkit iterate)
      • (lispkit json)
      • (lispkit json schema)
      • (lispkit list)
      • (lispkit list set)
      • (lispkit log)
      • (lispkit markdown)
      • (lispkit match)
      • (lispkit math)
      • (lispkit math matrix)
      • (lispkit math stats)
      • (lispkit math util)
      • (lispkit object)
      • (lispkit port)
      • (lispkit prolog)
      • (lispkit queue)
      • (lispkit record)
      • (lispkit regexp)
      • (lispkit serialize)
      • (lispkit set)
      • (lispkit sqlite)
      • (lispkit stack)
      • (lispkit stream)
      • (lispkit string)
      • (lispkit styled-text)
      • (lispkit system)
      • (lispkit system call)
      • (lispkit system keychain)
      • (lispkit system pasteboard)
      • (lispkit test)
      • (lispkit text-table)
      • (lispkit thread)
      • (lispkit thread channel)
      • (lispkit-thread-future)
      • (lispkit thread shared-queue)
      • (lispkit type)
      • (lispkit url)
      • (lispkit vector)
    • ⚙️LispPad
      • (lisppad applescript)
      • (lisppad draw map)
      • (lisppad location)
      • (lisppad speech)
      • (lisppad system)
      • (lisppad turtle)
    • ⚙️SRFI
  • Examples
    • 📝LispKit
    • 📝LispPad
    • 📝LispPad Go
  • Releases
    • 🖥️LispPad
    • 📱LispPad Go
  • Downloads
  • Privacy Policy
  • Contact
Powered by GitBook
On this page
  1. Releases

LispPad

PreviousLispPad GoNextLispPad Go

Last updated 5 months ago

The latest version of can always be found on the Mac App Store. Below is a history of all releases, including links to the corresponding notarized versions of the binaries.

Version 2.1

Date: 2024-11-24 Download:

Bug fixes:

  • Fixed equivalence procedures for bitsets

New features:

  • Support for all major JSON standards with libraries (lispkit json) and (lispkit json schema)

  • Support for HTTP-based networking with libraries (lispkit http), (lispkit http oauth), and (lispkit http server)

  • Deeper integrations into macOS via libraries (lispkit system keychain) and (lispkit system pasteboard)

  • New concurrency features with support for atomic boxes with library (lispkit box), thread-safe shared queues with library (lispkit thread shared-queue), and futures with (lispkit thread future).

  • Support for drawing a variety of barcodes with library (lispkit draw barcode)

  • New libraries: (lispkit url), (lispkit serialize)

  • Extended libraries: (lispkit thread), (lispkit system), (lispkit bytevector), (lispkit markdown), (lispkit dynamic), and (lispkit control)

  • New sample code: OAuthDemo.scm, Keychain.scm, WebAPIs.scm, and Webserver.scm

Version 2.0.1

Date: 2024-02-29 Download:

Bug fixes:

  • Fix saving the content of graphics windows

New features:

  • Provide line-based editing features (delete and duplicate lines)

  • Support selection of lines

  • Support duplication of selected text

  • Implement smarter parenthesis matching

Version 2.0

Date: 2024-02-09 Download:

Bug fixes:

  • Enforce that imported (immutable) definitions cannot be mutated, unless it's in the read-eval-print loop; export-mutable in library definitions enable mutability

  • Improved display of OS-level exceptions and errors in read-eval-print loop

  • Bug fixes in window management API provided by (lisppad system macos)

New features:

  • Revamp of graphics windows with support for a toolbar, zoom, export of drawings, and editing of window properties

  • Ported universal formatting facility from Common Lisp and made it available via library (lispkit format)

  • Support customization of read-eval-print-loop result formatting

  • Library (lispkit records) now supports extensible records compatible with SRFI 131

  • Procedure type-of of library (lispkit type) now returns a list of type tags (from most specific to least specific type)

  • New library (lisppad turtle) supporting indicators for turtles

  • Support for currencies included in library (lispkit system)

  • Renamed library (lisppad system) to (lisppad system macos)

  • Renamed library (lispkit system os) to (lispkit system call)

  • Extended libraries: (lispkit system), (lispkit port), (lispkit bitset), (lispkit system), (lispkit draw), (lispkit draw turtle), (lispkit core), (lispkit type), (lispkit bytevector), and (lisppad location)

  • New libraries: (lisppad turtle), (lispkit format), (lispkit crypto), (lispkit archive tar), (lispkit list set), (srfi 239), and (srfi 235)

  • New sample code: Blockchain.scm

Version 1.7.3

Date: 2023-02-12 Download:

Bug fixes:

  • Improved R7RS regression tests

  • Bugfixes in library (lispkit bytevector) for procedures bytevector-copy and bytevector-copy!

New features:

  • Revamp of library (lispkit graph) with new procedures: graph-topological-sort, graph-graph-weakly-connected-components, graph-strongly-connected-components, and graph-shortest-paths

  • New libraries: (srfi 228), (srfi 233), and (srfi 236)

  • New documentation for library (lispkit graph)

Version 1.7.2

Date: 2022-12-22 Download:

Bug fixes:

  • Fixed bug leading to deadlocks when using text ports

  • Fixed bug allowing to execute empty lists

  • Fixed serious bug leading to an infinite loop when iterating through stack traces

New features:

  • New menu item "Show in Finder" to show the current document in the Finder

  • Display memory footprint in session inspector

  • Show call stack when errors are shown in sessions

  • Limit stack size to prevent application crashes

  • New settings for defining the maximum stack size and the maximum number of active calls to trace upon errors

  • New procedure in library (lispkit thread): thread-max-stack

  • Included new libraries: (lisppad draw map)

  • New sample code: DisplayMap.scm

Version 1.7.1

Bug fixes:

  • Bug fixes to indentation with spaces and semicolons

  • Bug fixes in library (lispkit draw chart bar) and (lispkit enum)

  • Fixed division by zero issues with truncate and floor procedures

  • Fixed bug preventing LispKit to correctly determine the maximum number of threads

  • Optimized display of objects of custom types

  • Removed duplicates in results of procedures available-fonts and available-font-families in library (lispkit draw)

  • Changed defaults for procedure string-insert! of library (lispkit string)

  • Made procedure open-file of library (lispkit system) work on iOS

New features:

  • Performance improvements: Optimized code generation for lambdas without captured expressions

  • Major revamp of all type-related functionality: each type is now represented by a type tag/symbol; procedure type-for from library (lispkit type) can be used to determine the type tag of a given object; breaking change for make-type, which now returns 5 values (the first is a new type tag)

  • Major revision of library (lispkit clos)

  • Support complex numbers for trigonometric and inverse trigonometric functions in library (lispkit math): sin, cos, tan, asin, acos, and atan

  • Reimplemented and extended library (lispkit enum) making it compatible with SRFI 209

  • New procedures in library (lispkit draw): bytevector->image, draw-styled-text, styled-text-size

  • New procedure in library (lispkit core): procedure-rename

  • Included new libraries: (lispkit math matrix), (lispkit bitset), (lispkit styled-text), (lispkit draw chart bar), (srfi 118), (srfi 141), (srfi 149), and (srfi 232)

  • New sample code: ObjectOrientation.scm, DrawBarCharts.scm, and StyledTextDoc.scm

Version 1.7

Bug fixes:

  • Fixed several bugs in math libraries:

    • Prevent crash on division by zero for fx/

    • Make exact also work for negative numbers

    • Improve inexact when used with rationals with a very large numerator or denominator

  • Fixed scope of <sym> in (let <sym> ...) form, making it not accessible in the bindings

New features:

  • Allow preserving window setup when LispPad quits even if the setting "Close windows when quitting an app" is enabled.

  • Multi-threaded evaluator, executing multiple virtual machines in parallel

  • Go-inspired channels for synchronizing threads

  • Revamp of math libraries, addressing incompatibilities and fixing numerous bugs:

    • Introduce consistent interface for: random, flrandom, and fxrandom

    • Support unary arguments for fx-, fl-, and fl/

    • Remove fixnum-width, least-fixnum and greatest-fixnum

    • New procedures make-flonum, flexponent, flsignificand, flnext, flprev, fx-width, fx-greatest, fx-least, fl-epsilon, fl-greatest, and fl-least

    • Support for many arguments for procedures flmin, flmax, fxmin, fxmax, fx+, fx-, fx*, fx/, fx=, fx<, fx>, fx<=, fx>=, fl+, fl-, fl*, fl/, fl=, fl<, fl>, fl<=, and fl>=

  • New procedures in library (lispkit math util): make-nan, nan-negative?, nan-quiet?, nan-payload, and nan=?

  • New procedures in library (lispkit system): physical-memory, memory-footprint, and system-uptime

  • New procedure in library (lispkit port): display*

  • New procedures in library (lispkit debug): stack-size, call-stack-procedures, call-stack-trace, and set-max-call-stack!

  • Enabled concurrency support for library (srfi sicp)

  • Included new libraries: (lispkit thread), (lispkit thread channel), (scheme flonum), (srfi 18), (srfi 144), (srfi 208), (srfi 230)

  • Exceptions now include more information about the active call stack

  • Include tutorial for channels as new example code

Version 1.6.3

Bug fixes:

  • Increased stack size of interpreter

  • Fixed file/editor loader

  • Fixed bug compiling every procedure twice

  • Fixed implementation of procedure expt

  • Fixed overflow issues in procedure approximate

  • Fixed crashes in the rounding functions when used with rational big integers

  • Moved procedure load into library (lispkit core)

New features:

  • Integrated simple bytecode optimizer

  • Implemented support for tagged procedures

  • Implemented support for procedures with optional arguments

  • Included new libraries: (lispkit math util), (lispkit math stats), (srfi 166), (srfi 227), and (srfi 229)

  • Included new documentation for libraries (lispkit prolog), (lispkit math stats), (lispkit math util), (srfi 166), (srfi 227), and (srfi 229)

  • Ported Peter Norvig's pattern matcher and algebraic simplifier from Common Lisp to Scheme and included it as new example code

  • Extended sample code Math.scm

  • Updated PDF library reference manual

Version 1.6.2

Bug fixes:

  • Fixed bug in logic to detect valid local definitions

  • Handle libraries with errors more carefully to prevent crashes

  • Fixed bit counting bug in library (srfi 143) and expt in (lispkit math)

New features:

  • Include all libraries in the library inspector, including libraries that are not loaded

  • Support filtering in the libraries inspector

  • New procedures in library (lispkit core): thunk?, procedure-of-arity?, procedure-name, procedure-arity, procedure-arity-range, procedure-arity-includes?, arity-at-least?, arity-at-least-value

  • Added procedure icloud-directory to library (lisppad system)

  • Included new libraries: (srfi sicp), (srfi 102), (srfi 217), (srfi 224)

  • Included new documentation for library (lispkit text-table)

  • New sample code: Simplifier.scm; extended sample code Math.scm

Version 1.6.1

Bug fixes:

  • Fixed behavior of "Play" button in editor windows, now setting the source directory correctly

  • Bug fixes in library (lispkit system): home-directory also supports a non-sandboxed mode, file-path handles tilde correctly

  • Bug fixes for a few procedures of library (lispkit archive zip)

  • Bug fix in procedure load (previously, load always returned no result instead of the result of the last executed expression)

New features:

  • New procedures in library (lispkit draw): bitmap->bytevector, bitmap-blur, bitmap-crop

  • Support tables and definition lists in library (lispkit markdown)

  • Support gzip and zlib container formats for deflate compression via library (lispkit bytevector)

  • Support symlink resolution via procedure file-path of library (lispkit system)

  • Included new libraries: (lisppad location), (lispkit text-table), (srfi 215), (srfi 216), (srfi 219), (srfi 221), (srfi 222), (srfi 223)

  • Included new sample code EUStats.scm; extended sample code Math.scm

  • Minor update of the LispPad and LispKit library documentation

Version 1.6

Bug fixes:

  • Allow let* and letrec* to redefine variables

  • Minor bug fixes in LispKit libraries

New features:

  • Show Markdown document structure in editor windows

  • Associate descriptions and help text with definitions (in Common Lisp style)

  • New libraries: (lisppad audio), (lispkit archive zip), (lispkit prolog), (srfi 143), (srfi 189), (srfi 214), (srfi 219), (scheme red), (scheme fixum), (scheme bitwise), (scheme division)

  • Extended library (lispkit string) with procedures string-decode-named-chars and string-encode-named-chars

  • Extended library (lispkit char) with procedure char-name

  • Extended library (lispkit core) with new environment procedures: interaction-environment?, custom-environment?, the-environment, environment-definable?, environment-define, environment-define-syntax, environment-import, environment-documentation, and environment-assign-documentation!

  • Extended library (lispkit sqlite) with procedures sqlite-database? and sqlite-statement?

  • Support custom environments for the compile procedure of (lispkit debug)

  • New sample code: PlayMusic.scm, ObliqueProjection.scm, VisualizePointSets.scm, Schelog.scm

Version 1.5.2

Bug fixes:

  • Fixed several editor-related bugs

  • Fixed crash of virtual machine when execution gets aborted while loading and executing a file

  • Minor bug fixes in LispKit libraries

New features:

  • Complete revamp of user interface optimized for macOS Big Sur

  • Introduced key equivalents for session and editor windows

  • Rewrote line number display; allow selection of line ranges

  • Introduced feature to automatically indent Scheme code

  • Updated and extended documentation (accessible via "Help > LispPad Help" and "Help > LispPad Library Reference")

  • Included new libraries: (srfi 9), (srfi 180), (srfi 209), (srfi 210)

  • Extended library (lispkit log) with syntax log-time

  • Extended library (lispkit debug) with syntax time-values

  • Extended library (lispkit math) with procedures fxodd?, fxeven?, fx-width, fx-greatest, and fx-least in library (lispkit math).; generalized procedure number->string

  • Included new documentation for library (lispkit debug)

  • Included new sample code: DrawTrees.scm, DisplayTrees.scm, and EditDistance.scm

Version 1.5.1

Bug fixes:

  • Fixed comparison of complex numbers and numbers involving NaN in library (lispkit test)

  • Fixed small bugs in (lispkit match) and included support for =.., *.., and **1

New features:

  • Improved Scheme automatic indentation algorithm

  • Redesigned Scheme definitions menu in editor windows

  • Revision of library (lispkit test) involving procedures test-group-failed-tests, test-group-passed-tests, failed-tests, passed-tests, current-test-epsilon

  • Refactored debugging functionality into library (lispkit debug)

  • New libraries: (srfi 194), (srfi 204), (lispkit sxml), (lispkit sxml html), and (lispkit sxml xml)

  • New documentation for libraries: (lispkit iterate), (lispkit comparator), (lispkit match), (lispkit csv), (lispkit log), and (lispkit test)

Version 1.5

Bug fixes:

  • Speed up output in console windows by 10x

  • Save command history in session documents

  • Add "~/Documents/LispPad" as standard search path and search in external libraries and assets always first

  • Fixed a few path creation functions in library (lispkit system) which failed for corner cases

  • define-values can now be used wherever define can be used, fixing a long-standing bug

  • Distinguish between empty response and failed request for HTTP requests in library (lispkit port)

  • Fixed bugs in PDF library documentation and extended it to cover the new libraries

New features:

  • Reorganized menus and shortcuts; improved "Help" menu

  • Support for marking up identifiers for standard Scheme procedures and special-forms when syntax-highlighting is enabled

  • Support for auto completions, including setting a custom delay both in console and editor windows

  • New libraries: (lisppad applescript), (lispkit sqlite), (lispkit combinator), (lispkit system os), (srfi 195) and (srfi 196)

  • New documentation for libraries: (lispkit combinator), (lispkit stream), (lispkit iterate), (lispkit stack), (lispkit queue), and (lispkit system os)

  • Renamed library (lispkit iteration) into (lispkit iterate)

  • Extended library (lispkit date-time) with procedures date-time-add, date-time-add-seconds, date-time-diff-seconds, date-time-in-timezone, date-time-same?, date-time=?, date-time<?, date-time>?, date-time<=?, date-time>=?, and date-time-hash.

  • Extended library (lispkit core) with procedures thunk, thunk*, and apply-with-values

  • Extended library (lispkit string) with procedures string-normalize-diacritics and string-normalize-separators

  • Extended library (lispkit dynamic) with procedures unwind-protect and try

  • Extended library (lispkit control) with procedure letrec-values

  • Extended library (lispkit system) with procedures home-directory, system-directory, path-extension, append-path-extension, remove-path-extension, file-readable?, file-writeable?, file-deletable?, directory-readable?, directory-writeable?, and directory-deletable?.

  • Extended library (lispkit draw) with procedures set-image-size!, bitmap-size, bitmap-pixels, bitmap-exif-data, and set-bitmap-exif-data!

  • Support for timeouts in procedures handling HTTP ports in library (lispkit port)

  • Small tweaks to library (lispkit csv)

  • Library (lispkit box) now supports multi-value boxes

  • New sample code Covid.scm, ComposePhotos.scm, CovidGraph.scm, and ScriptingMacOS.scm

Version 1.4.4

Bug fixes:

  • Fixed serious memory leak in the compiler and implemented several garbage collector enhancements

  • Made field access of records type safe

New features:

  • Link documentation for SRFI libraries directly from the libraries info panel of session windows

  • New example code: RenderMarkdown.scm, Polynomials.scm

  • New libraries: (srfi 6), (srfi 54), (srfi 162)

  • Extended library (lispkit dynamic) with assertion support: make-assertion-error, assertion, assert

  • New documentation for libraries (lispkit record), (lispkit regexp), (srfi 6), (srfi 54), (srfi 162)

  • Make LispPad Library Reference available in PDF form via the "Help" menu

Version 1.4.3

Bug fixes:

  • Fixed bug in library (lispkit set) which was leading to multi-set behavior

  • Fixed garbage collection issue in library (lispkit hashtable)

  • Fixed cosmetic issues in the line number viewer of the text editor

New features:

  • Library documentation now directly accessible in the "Libraries" tab of session windows

  • Support for document type-specific text completions

  • Support logging of garbage collection runs

  • New mechanism for providing/configuring assets such as images, documents, etc., enabling libraries to depend on data in an extensible fashion

  • New example code: SpellNumbers.scm, Sudoku.scm; extension of Math.scm

  • New libraries: (lisppad speech), (lispkit markdown), (lispkit disjoint-set), (srfi 175), (srfi 167), (srfi 98), (srfi 87)

  • Extended library (lispkit system) with procedures asset-file-path, path-components, parent-path, path, and source-directory

  • Extended library (lispkit bytevector) with procedures read-binary-file and write-binary-file

  • Extended library (lispkit string) with procedures write-file, read-file, string-pad-center, string-empty?; string-concatenate now supports an optional separator character

  • Extended library (lispkit port) with procedures open-input-asset, open-binary-input-asset, call-with-output-bytevector, and call-with-output-string

  • Extended library (lispkit hashtable) with procedure hashtable-empty-copy; hashtable-hash-function can now return a hash function for all hashtables

  • Extended library (lispkit math) with procedure fxsqrt

  • Extended library (lispkit core) with procedure opt

  • Extended library (lispkit draw) to support assets, color lists and drawing of HTML

  • Added character set char-set:newlines to (lispkit char-set)

  • New documentation for libraries (lisppad speech), (lispkit port), (lispkit heap), (lispkit markdown), (lispkit disjoint-set), (srfi 175), (srfi 167), (srfi 98), (srfi 87)

Version 1.4.2

Bug fixes:

  • Replaced garbage collector with a more robust implementation

  • Fixed several issues in library (lispkit math): integer->fx renamed to integer->fixnum, introduced fxlogical-shift-right and real->flonum, fixed bit-count, fixed fxmodulo to work with negative numbers

  • Fixed explanations for symbols containing "->"

New features:

  • Simplified printed representation of procedures

  • Provided a more complete set of hash functions via library (lispkit hashtable)

  • New libraries: (lispkit comparator), (srfi 174), and (srfi 177)

  • New documentation for libraries (lispkit math) and (lispkit bytevector).

Version 1.4.1

Bug fixes:

  • Fixed handling of option-clicks to show documentation popovers

  • Fixed memory leak involving recursive local functions

  • Implemented algebraic datatypes in terms of more efficient internal functions

New features:

  • Allow logging of input and output of sessions

  • Support for uninterned symbols

  • Support for custom keywords in let-keywords

  • Extension and re-implementation of library (lispkit type)

  • New libraries: (lispkit stream), (scheme mapping), (srfi 146), (srfi 165), (srfi 173)

  • Inclusion of miniAdapton in a new third-party directory

  • New example code for generating mazes

  • Included documentation for (lispkit control), (srfi 173)

Version 1.4

Bug fixes:

  • Bug fixes in library (lispkit gvector)

  • Fixed memory leak involving recursive local functions

New features:

  • Significant performance improvements in the LispKit interpreter

  • Documentation popovers in session and editor windows (use menu item "View > Explain..." or option-click on symbol)

  • Documentation viewer in environment sidebar of session windows

  • New SRFI libraries: SRFI 26, SRFI 33, SRFI 46, SRFI 55, SRFI 146, and SRFI 165

  • New libraries: (scheme mapping), (lispkit stream), (lispkit graph)

  • Included documentation for SRFI 26, SRFI 33, SRFI 46, SRFI 55, SRFI 146, SRFI 161, SRFI 165, (lispkit core), (lispkit list), (lispkit dynamic), (lispkit char), (lispkit char-set), and (lispkit string)

Version 1.3.1

Bug fixes:

  • Complete re-write of library import and export logic fixing numerous bugs and incompatibilities with R7RS

  • Improved reporting of errors in library definitions

  • Fixed output of multi-value results in the session window

  • Allow @ as initial character in identifiers

New features:

  • New libraries: (lispkit csv), (lispkit match), (lispkit regexp), (lispkit gvector), (lispkit date-time)

  • Extended (lispkit vector) and (lispkit list) libraries

  • Support for let-keywords and let*-keywords in library (lispkit control)

  • Support call tracing for individual procedures

  • Include call traces in the session log

  • Make the last three session results available via *1, *2, and *3

Version 1.3

Bug fixes:

  • Fixed font handling in session windows

  • Bug fixes affecting bytevector-copy!, fold-left, max, min, numerator, denominator, log, magnitude, gcd and lcm, as well as the escaping of symbols

  • Handle closing of ports correctly in library (lispkit port)

  • Fixed major bug in library (lispkit system) affecting the composition of file paths

  • Moved from #\dx???? syntax to #\x???? to represent character literals

New features:

  • Session log (for making all log data available via one window)

  • New libraries: (lisppad log), (lispkit log), (lispkit char-set), (scheme char)

  • Support for most Scheme libraries from R7RS large/Red edition: (scheme box), (scheme charset), (scheme comparator), (scheme generator), (scheme hash-table), (scheme ideque), (scheme list), (scheme rlist), (scheme set), (scheme sort), (scheme stream), (scheme text), (scheme vector)

  • New SRFI libraries: SRFI 14 (full + ascii), SRFI 101, SRFI 125

  • New functionality in library (lispkit test):

    • Support for nested test groups

    • Approximate tests

    • Handling of exceptions

  • More user-friendly error messages for operating system errors

  • New example code showcasing LispPad's drawing library

  • Extended Help menu

Version 1.2.3

Bug fixes:

  • The "LispPad Help" menu item still didn't work in version 1.2.2; this is fixed now

New features:

  • Support jumping to a given line number and to the beginning and end of a text document

  • Included implementation of "Tiny CLOS" as library (lispkit clos)

  • New SRFI libraries: SRFI 23, SRFI 34, SRFI 39, SRFI 95

  • Documentation for libraries (lispkit set) and (lispkit enum)

Version 1.2.2

Bug fixes:

  • The help book was missing in the last release; it's included again

Version 1.2.1

Bug fixes:

  • Revised all hash functions; fixed several hashing-related bugs

  • Bug fixes in library (lispkit draw)

  • Renamed library (lisppad app) to (lisppad system)

New features:

  • Support for dark mode

  • Markdown syntax highlighting

  • New preferences pane: colors customizable for syntax highlighting

  • Extended library documentation in LispPad's help book

  • New SRFI libraries: SRFI 11, SRFI 14, SRFI 16, SRFI 51, SRFI 161

  • New libraries: (lispkit draw turtle), (lisppad turtle)

  • New functionality in library (lispkit draw):

    • New drawing functions

    • Comprehensive font API

    • Support for multi-page PDF files

Version 1.2

Bug fixes:

  • There is now a HelpBook available within LispPad

  • Printing of all documents now works correctly

  • Bugs in SRFI 69 are fixed

  • Continuations are now correctly tagged and continuation? works as documented

  • Multiple libraries can now be imported with one import invocation, as required by R7RS

  • current-input-port, current-output-port, and current-error-port have been turned into parameter objects, as required by R7RS

  • (lispkit test) was extended to be more compatible with similar libraries

New features:

  • The menu showing currently opened windows now groups the windows by type

  • LispPad is now able to create, open and edit .txt and .md text documents

  • New SRFI libraries: SRFI 111, SRFI 112, SRFI 113

  • New example code showcases the new drawing and scripting features

Version 1.1.1

Bug fixes:

  • Prelude and libraries path preferences are now handled correctly and do not result in access issues anymore

  • Programs blocking on functions like read can now be terminated

  • Minor bugs in bitwise operations for exact integers of arbitrary size fixed

  • string-split now returns a list instead of a vector

New features:

  • Allow setting a default home directory outside of the application's sandbox (in preferences)

  • Complete rewrite of the error reporting subsystem, including support for file-error? and read-error?

  • New library: (lispkit test)

  • New SRFI libraries: SRFI 69, SRFI 129, SRFI 137, SRFI 145, SRFI 151

  • New example code for coroutines, HTTP support, and a small compiler for arithmetic expressions

Version 1.1

Bug fixes:

  • Support tail patterns in syntax-rules and fix various syntax-rules-related bugs

  • Fixed major bug in macro expansion logic

  • Fixed major bug preventing internal definitions to work in many cases

New features:

  • Complete refactoring of the default libraries to match the R7RS specification

  • New libraries: (lispkit json), (lispkit wt-tree), (lispkit object), (lispkit stack), (lispkit queue), (lispkit logic)

  • New SRFI libraries: SRFI 63, SRFI 64, SRFI 158

  • Support for features and cond-expand

  • Support include and include-library-definitions in library definitions

  • Implement missing R7RS functionality: define-values, syntax-error, scheme-report-environment and null-environment.

  • Added SRFI 112-style support for human-readable information about the hardware and operating system on which LispPad is running

  • Simple API for HTTP GET requests

  • Simple native API for date/time functions

  • Bitwise operations for exact integers of arbitrary size

  • Extension of hashtable API

  • Extension of bytevector API

  • Extension of list API

  • New lightweight type abstraction mechanism

  • Support call tracing (as a simple debugging mechanism)

  • Name new session windows differently than new editor windows

Version 1.0.2

Bug fixes:

  • Garbage collection now does not accidentally collect anymore parts of parameter objects

  • Record type creation now working also for records with fields that are not set by the constructor

  • More syntax-rules bug fixes

New features:

  • Support for algebraic datatypes

  • Added a few additional destructive string functions

  • Added pretty printer via library (lispkit prettify)

  • New library for implementing priority queues: (lispkit heap)

  • New library for creating PDF files: (lispkit pdf)

  • Support for SRFI 152

  • New example code

Version 1.0.1

Bug fixes:

  • Files can now be opened via the Finder

  • Several issues with macros have been resolved in the Scheme interpreter

  • Several issues with String functions have been fixed in the Scheme interpreter

New features:

  • Added new Open Internally… menu item to access example source code and the source code of internal libraries

  • Support R6RS-style enumerations

  • Support for SRFI 31

  • Support for SRFI 35

  • Support for SRFI 135

Version 1.0

New features:

  • First published version

Date: 2022-08-14 Download:

Date: 2022-02-19 Download:

Date: 2021-12-17 Download:

Date: 2021-10-10 Download:

Date: 2021-08-21 Download:

Date: 2021-05-28 Download:

Execute LispPad code on iOS with

Sync LispPad code via iCloud and use it with on iPhones and iPads

Date: 2020-12-26 Download:

Date: 2020-10-05 Download:

Date: 2020-07-01 Download:

Date: 2020-03-30 Download:

Date: 2020-01-24 Download:

Date: 2019-10-21 Download:

Date: 2019-09-10 Download:

Date: 2019-08-21 Download:

Date: 2019-02-27 Download:

Date: 2019-01-04 Download:

Date: 2018-11-05 Download:

Date: 2018-11-02 Download:

Date: 2018-10-30 Download:

Date: 2018-08-21 Download:

The new library provides a powerful API for creating drawings and saving them as PDF documents or image files

The new library allows users to script LispPad directly using Scheme

LispPad now supports graphics windows to display drawings created with

Date: 2018-06-19 Download:

Date: 2018-02-08 Download:

Date: 2017-09-18 Download:

Date: 2017-08-14 Download:

Date: 2017-07-17 Download:

🖥️
LispPad 1.7.1 (1361)
LispPad 1.7.0 (1344)
LispPad 1.6.3 (1329)
LispPad 1.6.2 (1300)
LispPad 1.6.1 (1241)
LispPad 1.6.0 (1226)
LispPad Go
LispPad Go
LispPad 1.5.2 (1200)
LispPad 1.5.1 (1150)
LispPad 1.5.0 (1100)
LispPad 1.4.4 (1089)
LispPad 1.4.3 (1081)
LispPad 1.4.2 (1044)
LispPad 1.4.1 (1030)
LispPad 1.4.0 (1004)
LispPad 1.3.1 (950)
LispPad 1.3.0 (930)
LispPad 1.2.3 (920)
LispPad 1.2.2 (907)
LispPad 1.2.1 (903)
LispPad 1.2.0 (850)
(lispkit draw)
(lisppad app)
(lispkit draw)
LispPad 1.1.1 (755)
LispPad 1.1.0 (700)
LispPad 1.0.2 (640)
LispPad 1.0.1 (620)
LispPad 1.0.0 (600)
LispPad for macOS
LispPad 2.1 (1699)
LispPad 2.0.1 (1633)
LispPad 2.0 (1575)
LispPad 1.7.3 (1400)
LispPad 1.7.2 (1395)