Sign inSign up

clfoundation/dotcl

By clfoundation

•Updated 1 day ago

dotcl, from Masatoshi Sano, is Common Lisp on .NET: Lisp compiles to CIL and runs on the .NET JIT.

Image
0

128

clfoundation/dotcl repository overview

⁠Supported Tags

⁠Simple Tags

  • 0.1.35 0.1.35-noble 0.1.35-noble-slim

⁠Shared Tags

  • latest
    • 0.1.35

⁠Quick Reference

dotcl Home Page
https://github.com/dotcl/dotcl⁠

Where to file Docker image related issues
https://gitlab.common-lisp.net/cl-docker-images/dotcl⁠

Where to file issues for dotcl itself
https://github.com/dotcl/dotcl/issues⁠

Maintained by
CL Docker Images Project⁠

Supported platforms
linux/amd64

⁠What is dotcl?

dotcl, by Masatoshi Sano, is Common Lisp on .NET. Lisp compiles to CIL and runs on the .NET JIT, and Lisp values are .NET objects, so it embeds in C# and Unity programs with no marshalling layer, or runs on its own with a REPL, ASDF and Quicklisp.

⁠How to use this image

⁠Create a Dockerfile in your dotcl project

FROM clfoundation/dotcl:latest
COPY . /usr/src/app
WORKDIR /usr/src/app
CMD [ "dotcl", "./your-daemon-or-script.lisp" ]

You can then build and run the Docker image:

\$ docker build -t my-dotcl-app .
\$ docker run -it --rm --name my-running-app my-dotcl-app

⁠Run a single Common Lisp script

For many simple, single file projects, you may find it inconvenient to write a complete `Dockerfile`. In such cases, you can run a Lisp script by using the dotcl Docker image directly:

\$ docker run -it --rm --name my-running-script -v "\$PWD":/usr/src/app -w /usr/src/app clfoundation/dotcl:latest dotcl ./your-daemon-or-script.lisp

⁠Start a REPL

\$ docker run -it --rm clfoundation/dotcl:latest

⁠What's in the image?

This image contains the dotcl .NET tool, installed from NuGet into /opt/dotcl (on the PATH), on Microsoft's .NET images. Microsoft publishes .NET 10 images on Ubuntu only, so there are no Debian variants.

⁠Image Variants

⁠clfoundation/dotcl:<version>

This is the defacto image. It is based on the .NET SDK image, so it can also build the C# programs you embed dotcl in.

⁠clfoundation/dotcl:<version>-slim

This image is based on the .NET runtime image and carries only what is needed to run dotcl.

⁠ASDF and Quicklisp

dotcl carries both. (require "asdf") loads ASDF, and (require "quicklisp") loads its Quicklisp client without touching the network; the first ql:quickload installs a dist into ~/.local/share/dotcl/quicklisp/:

(require "quicklisp")
(ql:quickload "alexandria")

Besides the stock Quicklisp dist, setup adds dotcl's own overlay dist of patched releases for the few libraries that need a change to run on dotcl. See Using libraries⁠ in the dotcl documentation.

⁠Building and Contributing

For information on building these images and contributing, please see the repository at https://gitlab.common-lisp.net/cl-docker-images/dotcl⁠.

⁠License

dotcl itself is licensed under the MIT License. The Dockerfiles and build infrastructure are licensed under the BSD 2-Clause License. See the LICENSE file in the repository for details.

Tag summary

Content type

Image

Digest

sha256:80d7192d2…

Size

392.9 MB

Last updated

1 day ago

docker pull clfoundation/dotcl