Embeddable Common-Lisp main repository.
Find a file
Daniel Kochmański 59ace31763 build: move HAVE_POSIX_RWLOCK to exported config
This is b ecause we use this flag to decide whether the rwlock is implemented
from posix or whether we use our own structure. That influences the size and
offsets in cl_core. Without this commit using

(defun known-signals ()
  (ffi:c-inline nil nil :object "cl_core.known_signals"
                        :one-liner t :side-effects nil))

While HAVE_POSIX_RWLOCK was true during the build returns garbage. The same
applies to other members after the processes group.
2023-09-19 11:49:20 +02:00
contrib contrib: ecl-cdb: fix invalid type declarations 2023-09-11 16:54:21 +02:00
examples Update asdf_with_dependence example readme 2023-07-09 18:04:35 +00:00
msvc release: update changelog and version number before the release 2023-09-03 13:46:23 +02:00
src build: move HAVE_POSIX_RWLOCK to exported config 2023-09-19 11:49:20 +02:00
.gitignore .gitignore: add the directory /local as ignored 2023-05-22 10:16:39 +02:00
.gitlab-ci.yml Add .gitlab-ci.yml 2017-01-11 18:30:33 +00:00
appveyor.yml Add simple appveyor msvc build 2017-05-13 00:12:13 +02:00
CHANGELOG changelog: add announcement for upcoming release 2023-09-03 15:32:42 +02:00
configure Preserve quoting when passing the arguments to the build directory 2008-08-27 09:50:44 +02:00
COPYING cosmetic: rename LGPL->COPYING 2016-10-08 14:24:31 +02:00
INSTALL install: add build instructions for emscripten 2023-06-13 22:07:12 +02:00
LICENSE copyright: add Marius to the maintainer list. 2019-02-22 18:43:37 +00:00
Makefile.in doc: set new doc as standard documentation 2019-01-03 19:14:28 +01:00
README.md update readme (typos) 2015-08-31 08:22:52 +00:00

ECL stands for Embeddable Common-Lisp. The ECL project aims to produce an implementation of the Common-Lisp language which complies to the ANSI X3J13 definition of the language.

The term embeddable refers to the fact that ECL includes a Lisp to C compiler, which produces libraries (static or dynamic) that can be called from C programs. Furthermore, ECL can produce standalone executables from Lisp code and can itself be linked to your programs as a shared library. It also features an interpreter for situations when a C compiler isn't available.

ECL supports the operating systems Linux, FreeBSD, NetBSD, DragonFly BSD, OpenBSD, Solaris (at least v. 9), Microsoft Windows (MSVC, MinGW and Cygwin) and OSX, running on top of the Intel, Sparc, Alpha, ARM and PowerPC processors. Porting to other architectures should be rather easy.