{"id":32136882,"url":"https://github.com/armedbear/abcl","last_synced_at":"2026-02-18T20:32:47.068Z","repository":{"id":11724691,"uuid":"69327293","full_name":"armedbear/abcl","owner":"armedbear","description":"Armed Bear Common Lisp \u003cgit+https://github.com/armedbear/abcl/\u003e \u003c--\u003e \u003csvn+https://abcl.org/svn\u003e Bridge","archived":false,"fork":false,"pushed_at":"2026-02-12T14:42:43.000Z","size":68551,"stargazers_count":327,"open_issues_count":125,"forks_count":40,"subscribers_count":25,"default_branch":"master","last_synced_at":"2026-02-12T17:34:56.008Z","etag":null,"topics":["ansi-x3j13","common-lisp","implementation","j","jvm-bytecode","jvm-languages"],"latest_commit_sha":null,"homepage":"https://abcl.org#rdfs:seeAlso\u003chttps://gitlab.common-lisp.net/abcl/abcl\u003e","language":"Common Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/armedbear.png","metadata":{"files":{"readme":"README","changelog":"CHANGES","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2016-09-27T06:42:28.000Z","updated_at":"2026-02-12T14:47:50.000Z","dependencies_parsed_at":"2023-02-19T00:45:43.224Z","dependency_job_id":"cc7c62e5-b3f1-40ce-888a-d6e205354b42","html_url":"https://github.com/armedbear/abcl","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/armedbear/abcl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/armedbear%2Fabcl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/armedbear%2Fabcl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/armedbear%2Fabcl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/armedbear%2Fabcl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/armedbear","download_url":"https://codeload.github.com/armedbear/abcl/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/armedbear%2Fabcl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29594259,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-18T18:54:29.675Z","status":"ssl_error","status_checked_at":"2026-02-18T18:50:50.517Z","response_time":162,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansi-x3j13","common-lisp","implementation","j","jvm-bytecode","jvm-languages"],"created_at":"2025-10-21T04:46:59.260Z","updated_at":"2026-02-18T20:32:47.060Z","avatar_url":"https://github.com/armedbear.png","language":"Common Lisp","readme":"Armed Bear Common Lisp (ABCL)\n=============================\n\nArmed Bear Common Lisp is a conforming implementation of ANSI X3J13\nCommon Lisp that runs in a Java virtual machine.  It compiles Lisp\ncode directly to Java byte code for execution.\n\n\nLICENSE\n-------\n\nArmed Bear Common Lisp is distributed under the GNU General Public\nLicense with a classpath exception (see \"Classpath Exception\" below).\n\nA copy of GNU General Public License (GPLv2) is included in this\ndistribution, in \u003cfile:COPYING\u003e.\n\nWe have modified our GPLv2 license section 13 to read:\n\n     13. Linking this library statically or dynamically with other\n     modules is making a combined work based on this library. Thus, the\n     terms and conditions of the GNU General Public License cover the\n     whole combination.\n\n     The following paragraph details the \"classpath exception\" which ABCL\n     allows as an exception to the statement about linking libraries.\n\n     As a special exception, the copyright holders of this software give\n     you permission to link this software with independent modules to\n     produce an executable, regardless of the license terms of these\n     independent modules, and to copy and distribute the resulting\n     executable under terms of your choice, provided that you also meet,\n     for each linked independent module, the terms and conditions of the\n     license of that module. An independent module is a module which is\n     not derived from or based on this software. If you modify this\n     software, you may extend this exception to your version of the\n     software, but you are not obligated to do so. If you do not wish to\n     do so, delete this exception statement from your version.\n\nCONTAINERIZATION\n----------------\n\nWe recommend using podman over docker for political reasons, but the\nsurface syntax is identical so if you must, just substitute `docker`\nfor `podman` in the following examples.\n\nWith [podman][] installed, one may execute:\n\n    podman build -t YOURID/abcl .\n    podman run -it YOURID/abcl \n\nto get something like\n\n    illin:~/work/abcl$ podman run -it YOURID/abcl\n    VM settings:\n        Max. Heap Size (Estimated): 3.89G\n        Using VM: OpenJDK 64-Bit Server VM\n\n    Armed Bear Common Lisp 1.9.2\n    Java 17.0.2 Oracle Corporation\n    OpenJDK 64-Bit Server VM\n    Low-level initialization completed in 0.432 seconds.\n    Startup completed in 2.246 seconds.\n    Type \":help\" for a list of available commands.\n    CL-USER(1):\n\nTo install Quicklisp for ABCL in the container run:\n\n    podman run -t YOURID/abcl abcl \\\n      --batch --load /home/abcl/work/abcl/ci/install-quicklisp.lisp\n\nSee \u003cfile:Dockerfile\u003e for the build instructions.\n\n[podman]:             \u003chttps://podman.io/releases/\u003e\n[Docker Engine]:      \u003chttps://www.docker.com/products/docker-engine\u003e\n\n\nRUNNING FROM BINARY RELEASE\n---------------------------\n\nAfter you have downloaded a binary release from either [the\ndistributed Maven POM graph][maven-abcl] or from\n[abcl.org][abcl.org-release] archive unpack it into its own\ndirectory. To run ABCL directly from this directory, make sure the\nJava executable (`java`) is in your shell's path.  Java 8, 11, 17 are\nstrongly supported by ABCL, but others may work with a little elbow\ngrease.\n\n[maven-abcl]:          \u003chttps://mvnrepository.com/artifact/org.abcl/abcl/1.9.2\u003e\n[maven-abcl-contrib]:  \u003chttps://mvnrepository.com/artifact/org.abcl/abcl-contrib/1.9.2\u003e\n[abcl.org-release]:    \u003chttp://abcl.org/releases/1.9.2/\u003e\n\nTo start ABCL, simply issue the following command:\n\n    cmd$ java -jar abcl.jar\n\nwhich should result in output like the following\n\n    Armed Bear Common Lisp 1.9.2\n    Java 17.0.7 OpenJDK Porters Group\n    OpenJDK 64-Bit Server VM\n    Low-level initialization completed in 0.107 seconds.\n    Startup completed in 0.493 seconds.\n    CL-USER(1):\n\nYer now at the interactive ABCL \"Read Eval Print Loop\" (REPL): hacks\n'n glory await.\n\nSee the section headed \"SLIME\" for instructions to connect to this\nrepl from Emacs.\n\n\nBUILDING FROM SOURCE RELEASE\n----------------------------\n\nABCL may be built from its source code by executing the build\ninstructions \u003cfile:build.xml\u003e expressed by the venerable Apache Ant\ntool.  Alternately, one may use the Apache Maven tool as a facade to\nAnt.\n\nTo build, one must have a Java 8, 11, or 17 openjdk installed\nlocally. Just the Java Runtime Environment (JRE) isn't enough, as you\nneed the Java compiler ('javac') to compile the Java source of the\nABCL implementation.\n\nDownload a binary distribution [Ant version 1.7.1 or greater][ant].\nUnpack the files somewhere convenient, ensuring that the 'ant' (or\n'ant.bat' under Windows) executable is in your path and executable.\n\n[ant]:    \u003chttps://ant.apache.org/bindownload.cgi\u003e\n\nThen simply executing \n\n    cmd$ ant\n\nTo use [Maven][], download it, ensure the `mvn` executable is in your\nPATH and then\n\n    cmd$ mvn -Dmaven.test.skip=true install \n\n[Maven]:     \u003chttps://maven.apache.org/download.cgi\u003e\n\nfrom the directory containing the \u003cfile:build.xml\u003e instructions will\ncreate an executable wrapper ('abcl' under UNIX, 'abcl.bat' under\nWindows).  Use this wrapper to start ABCL.\n\nThe build may be customized by copying \u003cfile:abcl.properties.in\u003e to\n\u003cfile:abcl.properties\u003e, which will cause Ant to attempt to build\nincrementally as well as optimizing the runtime for a contemporary\n64bit desktop/server machine running Java 8, 11, and/or 17.  The file\ncontains incomplete documentation on how it may be edited for\nsubsequent customization.  As an alternative to copying the prototype,\nif one has a version of bash locally, one may issue via Ant\n\n    ant abcl.properties.autoconfigure.openjdk.17\n\nor from the shell as\n\n    bash ci/create-abcl-properties.bash openjdk17\n\nCurrently supported platforms are 'openjdk8', 'openjdk11',\n'openjdk13', 'openjdk14', 'openjdk15', 'openjd16', 'openjdk17',\n'openjdk18', and 'openjdk19'.\n\n\nUSING APACHE NETBEANS\n---------------------\n\nAlternatively, one may install the [Netbeans visual integrated\ndevelopment environment][netbeans], which contains both the Java\nDevelopment Kit as well as the Ant build tool.  The source\ndistribution contains Netbeans-specific project artifacts under\n\u003cfile:nbproject\u003e for loading ABCL as a Netbeans project.\n\nWith Netbeans, one should be able to open the ABCL directory as a\nproject whereupon the usual build, run, and debug targets as invoked\nin the GUI are available.  To launch the debugging target it is\ncurrently necessary to have the `abcl.build.incremental` Ant property\nbe set to `true`.  This can most easily be affected by running the\nautoconfigure mechanism for the underlying JVM platform as documented\nin the previous section entitlted \"BUILDING FROM SOURCE RELEASE\".\n\nTo connect to the running Netbeans process, one may use the `slime`\nNetbeans configuration connecting to \u003ctcp:4:localhost:4005\u003e when\nprompted from an invocation M-x slime-connect with Emacs.  For this to\nwork, ASDF must be configured to find a suitably linked SLIME\n`swank.asd`; the Lisp stanzas in the subsequent section entitled\n\"SLIME\" affect this in the local installation.\n\n[netbeans]:     \u003chttps://netbeans.org/downloads/\u003e\n\n\nSLIME\n-----\n\nFor usage of ABCL with the [Superior Lisp Interaction Mode for\nEmacs][slime], one may easily start a Swank listener via:\n\n    (require :asdf)\n    (require :abcl-contrib)\n    (asdf:load-system :quicklisp-abcl)\n    (or\n       (asdf:make :swank)\n       (ql:quickload :swank))\n    (swank:create-server :dont-close t)\n\n[slime]:                 \u003chttps://common-lisp.net/project/slime/\u003e\n\n\n\nBUGS\n----\n\nArmed Bear Common Lisp strives to be a conforming ANSI X3J13 Common\nLisp implementation.  Any other behavior should be reported as a bug.\n\nABCL has a [User Manual][manual] stating its conformance to the ANSI\nstandard, providing a compliant and practical Common Lisp\nimplementation.\n\n[manual]:       \u003chttps://abcl.org/releases/1.9.2/abcl-1.9.2.pdf\u003e\n\n\nTESTS\n-----\n\n    | Version | Failures | Total |\n    |---------+----------+-------|\n    |   1.9.2 |       63 | 21902 |\n    |   1.9.1 |       60 | 21870 |\n    |   1.9.0 |       61 | 21870 |\n    |   1.8.0 |       49 | 21848 |\n    |   1.5.0 |       48 | 21708 |\n\nABCL 1.9.2 currently fails ~63 out of 21902 the current ANSI test\nsuite derived from the tests originally written for GCL.\n\n[ansi-test]: \u003cgit+https://gitlab.common-lisp.net/ansi-test/ansi-test.git\u003e\n\nMaxima's test suite runs without failures.\n\nABCL comes with a test suite.  Consult the output of `ant help.test`\nfor more information.\n\n\nSUPPORT\n-------\n\nABCL has many deficiencies, both known and unknown.  Descriptions,\ntests, and even patches to address them will be gladly accepted.\n\nPlease report problems to the [development mailing list][mailing-list]\nor via opening an issue on either the [ABCL trac instance][trac] or\n[github][].\n\n[mailing-list]: \u003chttps://mailman.common-lisp.net/pipermail/armedbear-devel/\u003e\n[github]:       \u003chttps://github.com/armedbear/abcl/issues\u003e\n[trac]:         \u003chttps://abcl.org/trac/\u003e\n\n\nAUTHORS\n-------\n\nOn behalf of all ABCL development team and contributors,\n\n    Mark Evenson\n    Erik Hülsmann\n    Rudolf Schlatte\n    Alessio Stalla\n    Ville Voutilainen\n\n    alan\n    dmiles\n    Dmitry Nadezhin\n    olof ferada\n    pipping\n    slyrus\n    vibhu\n\n    Jonathan Cunningham\n    Uthar\n    alejandrozf\n    phoe\n    jackdaniel\n    Robert Munyer\n    Eric Timmons (daewok)\n    contrapunctus\n    Scott Burson\n    Samuel Hunter\n    Phil Eaton\n    jpellegrini\n\n    András Simon\n    Peter Graves\n\nHave fun!\n\nJune 2023\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farmedbear%2Fabcl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farmedbear%2Fabcl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farmedbear%2Fabcl/lists"}