Clozure CL

Last updated
Clozure CL
Developer(s) Clozure Associates
Stable release
1.12.1 [1] / May 23, 2021;19 months ago (2021-05-23)
Operating system Linux, Solaris, FreeBSD, Mac OS X, Microsoft Windows
Platform Cross-platform
Available in Common Lisp
Type IDE, Compiler and runtime
License Apache 2 [2] since Jan 2016, earlier version is licensed under LGPL 2.1.
Website ccl.clozure.com

Clozure CL (CCL) is a Common Lisp implementation. It implements the full ANSI Common Lisp standard with several extensions (CLOS MOP, threads, CLOS conditions, CLOS streams, ...). It contains a command line development environment, an experimental integrated development environment (IDE) for Mac OS X using the Hemlock editor, and can also be used with SLIME (a Common Lisp development environment for GNU Emacs). Clozure CL is open source and the project is hosted by Clozure Associates.

Contents

Supported platforms

Clozure CL supports the Mac OS X, Linux, FreeBSD, Solaris and Microsoft Windows platforms. There are 32 and 64 bit x86 variants for each. Additionally, there are PowerPC ports for Mac OS X and Linux, and a 32-bit ARM port for Linux.

Applications

Clozure CL was used by ITA Software for the business logic of a new Airline Reservation System. [3]

Clozure CL is also commonly used as an underlying Common Lisp implementation for the ACL2 theorem prover. [4]

History

Formerly known as OpenMCL, Clozure CL is an evolution of Macintosh Common Lisp.

Technology

CCL contains a precise, generational, compacting garbage collector. CCL's compiler produces native instructions for Lisp expressions and files. By default every expression entered at the REPL is compiled to native code.

Lisp threads are implemented as preemptively-scheduled, native operating-system threads.

CCL implements built-in facilities to easily interface with C and Objective-C libraries (Cocoa bridge) and these are used to implement the IDE amongst other things.

The IDE (based upon the Hemlock editor) is currently labelled as experimental. An effort[ better source needed ] [5] is underway to improve this.

Related Research Articles

<span class="mw-page-title-main">Common Lisp</span> ANSI-standardized dialect of Lisp

Common Lisp (CL) is a dialect of the Lisp programming language, published in ANSI standard document ANSI INCITS 226-1994 (S20018). The Common Lisp HyperSpec, a hyperlinked HTML version, has been derived from the ANSI Common Lisp standard.

An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools and a debugger. Some IDEs, such as NetBeans and Eclipse, contain the necessary compiler, interpreter, or both; others, such as SharpDevelop and Lazarus, do not.

<span class="mw-page-title-main">Genera (operating system)</span> Symbolics operating system based on Lisp

Genera is a commercial operating system and integrated development environment for Lisp machines created by Symbolics. It is essentially a fork of an earlier operating system originating on the Massachusetts Institute of Technology (MIT) AI Lab's Lisp machines which Symbolics had used in common with Lisp Machines, Inc. (LMI), and Texas Instruments (TI). Genera was also sold by Symbolics as Open Genera, which runs Genera on computers based on a Digital Equipment Corporation (DEC) Alpha processor using Tru64 UNIX. In 2021 a new version was released as Portable Genera which runs on DEC Alpha Tru64 UNIX, x86_64 and Arm64 Linux, x86_64 and Apple M1 macOS. It is released and licensed as proprietary software.

In computing, cross-platform software is computer software that is designed to work in several computing platforms. Some cross-platform software requires a separate build for each platform, but some can be directly run on any platform without special preparation, being written in an interpreted language or compiled to portable bytecode for which the interpreters or run-time packages are common or standard components of all supported platforms.

Object Pascal is an extension to the programming language Pascal that provides object-oriented programming (OOP) features such as classes and methods.

<span class="mw-page-title-main">Free Pascal</span> Free compiler and IDE for Pascal and ObjectPascal

Free Pascal Compiler (FPC) is a compiler for the closely related programming-language dialects Pascal and Object Pascal. It is free software released under the GNU General Public License, with exception clauses that allow static linking against its runtime libraries and packages for any purpose in combination with any other software license.

CMUCL is a free Common Lisp implementation, originally developed at Carnegie Mellon University.

The Visual Component Framework (VCF) is an abandoned open source project for development under Microsoft Windows and Apple Macintosh that is distributed under the BSD license. It is an advanced C++ application framework that makes it easier to produce GUI-based C++ applications. The framework is C++ design and has built in support for rapid application development. The framework is designed to be portable over multiple platforms and compilers.

GNU Common Lisp (GCL) is the GNU Project's ANSI Common Lisp compiler, an evolutionary development of Kyoto Common Lisp. It produces native object code by first generating C code and then calling a C compiler.

Hemlock is a free Emacs text editor for most POSIX-compliant Unix systems. It follows the tradition of the Lisp Machine editor ZWEI and the ITS/TOPS-20 implementation of Emacs, but differs from XEmacs or GNU Emacs, the most popular Emacs variants, in that it is written in Common Lisp rather than Emacs Lisp and C—although it borrows features from the later editors. Hemlock was originally written by the CMU Spice project in Spice Lisp for the PERQ computer.

Dylan programming language history first introduces the history with a continuous text. The second section gives a timeline overview of the history and present several milestones and watersheds. The third section presents quotations related to the history of the Dylan programming language.

Allegro Common Lisp is a programming language with an integrated development environment (IDE), developed by Franz Inc. It is a dialect of the language Lisp, a commercial software implementation of the language Common Lisp. Allegro CL provides the full American National Standards Institute (ANSI) Common Lisp standard with many extensions, including threads, CLOS streams, CLOS MOP, Unicode, SSL streams, implementations of various Internet protocols, OpenGL interface. The first version of Allegro Common Lisp was finished at the end of 1986, originally called Extended Common Lisp. Allegro CL is available for many operating systems including Microsoft Windows (32/64-bit), and many Unix and Unix-like, 32-bit or 64-bit, including macOS, Linux (32/64-bit), FreeBSD (32-bit), Solaris, UNICOS, and UTS. Internationalization and localization support is based on Unicode. It supports various external text encodings and provides string and character types based on Universal Coded Character Set 2 (UCS-2). Allegro CL can be used with and without its integrated development environment (IDE), which is available for Windows, Linux, and on macOS in version 8.2. The IDE includes development tools including an editor and an interface designer. Allegro CL can be used to deliver applications.

LispWorks is computer software, a proprietary implementation and integrated development environment (IDE) for the programming language Common Lisp. LispWorks was developed by the UK software company Harlequin Ltd., and first published in 1989. Harlequin ultimately spun off its Lisp division as Xanalys Ltd., which took over management and rights to LispWorks. In January 2005, the Xanalys Lisp team formed LispWorks Ltd. to market, develop, and support the software.

Apple Dylan is the original implementation of the programming language Dylan. It was developed by Apple Computer from 1992 to 1995.

Macintosh Common Lisp (MCL) is an implementation and IDE for the Common Lisp programming language. Various versions of MCL run under the classic Mac OS and Mac OS X.

<span class="mw-page-title-main">PicoLisp</span>

PicoLisp is a programming language, a dialect of the language Lisp. It runs on operating systems including Linux and others that are Portable Operating System Interface (POSIX) compliant. Its most prominent features are simplicity and minimalism. It is built on one internal data type: a cell. On the language level, a programmer can use three different data types being represented by cells and differentiated by bits at the end of the cell. It is free and open-source software released under an MIT License (X11).

<span class="mw-page-title-main">Mono (software)</span> Computer software project

Mono is a free and open-source .NET Framework-compatible software framework. Originally by Ximian, it was later acquired by Novell, and is now being led by Xamarin, a subsidiary of Microsoft and the .NET Foundation. Mono can be run on many software systems.

<span class="mw-page-title-main">OpenLisp</span>

OpenLisp is a programming language in the Lisp family developed by Christian Jullien from Eligis. It conforms to the international standard for ISLISP published jointly by the International Organization for Standardization (ISO) and International Electrotechnical Commission (IEC), ISO/IEC 13816:1997(E), revised to ISO/IEC 13816:2007(E).

References

  1. Release Clozure CL 1.12.1
  2. Clozure CL now Apache 2 licensed
  3. ECLM 2009 talk by Dan Weinreb Archived 2012-07-07 at archive.today
  4. "ACL2 installation requirements".
  5. Community pledge drive for IDE improvements