LispPad
macOS / developpeurs
LispPad is a simple, lightweight, integrated development environment for developing and running Scheme code on macOS and iOS. The language supported by LispPad is based on the R7RS standard of the Scheme programming language. LispPad provides the following components:
• A fully integrated Scheme interpreter
• A console with a read-eval-print loop to interact with the interpreter
• A text editor for writing Scheme code, supporting syntax highlighting, smart indentation, parenthesis matching, text completion, page guides, etc.
• A large range of libraries, including macOS-specific libraries e.g. for networking, graphics, audio, databases, archival, text processing, etc.
The Scheme dialect supported by LispPad provides the following features:
• R7RS-compliant libraries
• Hygienic macros based on syntax-rules
• First-class environments
• call/cc, dynamic-wind and exceptions
• Dynamically-scoped parameters
• Multiple return values
• Delayed execution via promises and streams
• Threads
• Support for the full numerical tower consisting of arbitrary size integers, rationals, real numbers, and inexact complex numbers.
• Unicode strings and characters
• Vectors and bytevectors
• Text and binary ports
• R7RS-compliant records
• R6RS-compliant hashtables
• R6RS-compliant enumerations
• All R7RS libraries
LispPad focuses on simplicity and ease of use. A number of standard Scheme libraries are built into LispPad to facilitate porting existing Scheme code. LispPad is able to sync code with LispPad Go on iOS via iCloud.
Quoi de neuf dans la dernière version ?
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, thread-safe shared queues, and futures via libraries (lispkit box), (lispkit thread shared-queue), and (lispkit thread future)
• Support for drawing barcodes via 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