Lingy

A Modern Acmeist Lisp Dialect

Synopsis

Run the Lingy REPL:

``` $ lingy Welcome to Lingy [perl]

user> (prn "Hello, world!") "Hello, world!" nil user> ```

or a Lingy one-liner:

$ lingy -e '(println "Hello, world!")' Hello, world!

or run a Lingy program file:

$ echo '(println "Hello, world!")' > hello.ly $ lingy hello.ly Hello, world!

or run an example Lingy program:

``` $ curl -sL https://raw.githubusercontent.com/ingydotnet/lingy/main/eg/99-bottles.ly | lingy - 3 3 bottles of beer on the wall 3 bottles of beer Take one down, pass it around 2 bottles of beer on the wall.

2 bottles of beer on the wall 2 bottles of beer Take one down, pass it around 1 bottles of beer on the wall.

1 bottles of beer on the wall 1 bottles of beer Take one down, pass it around 0 bottles of beer on the wall. ```

Description

Lingy is a Lisp dialect written in many languages, including: Perl.

Clojure is a Lisp dialect that compiles to run on the JVM.

ClojureScript uses the same Clojure source code but compiles to NodeJS.

Lingy is the runtime that supports the YAMLScript language.

YAMLScript is meant to be implemented in all the same languages as Lingy.

Lingy is heavily influenced by the Clojure (Lisp) language. It aspires to be largely interoperable with Clojure. Currently it supports just a tiny subset of Clojure but supports Lisp basics like function application and macros.

Lingy started as a Perl implementation of the Make a Lisp project. This provided a bare-bones Clojure-inspired Lisp interpreter.

lingy CLI Usage

The Lingy language installs a command lingy. You can use this command to run Lingy programs, start a Lingy REPL or run Lingy one-liner expressions.

lingy CLI Options

Supported Functions

Roadmap

The next major things to add are:

See Also

Status

Lingy is in ALPHA status.

Authors

Copyright and License

Copyright 2023 by Ingy döt Net

This is free software, licensed under:

The MIT (X11) License