Hi all, its been a long time since I've interactive here. But I have spend
a month on a project implementing the elixir programming language ontop of
guile. Here is the readme:

This is an implementation of the elixir programming language ontop of
guile. In order to compile it you need

The code public repository is at
https://gitlab.com/snorgers1/elixir-on-guile#

0. fibers              https://github.com/wingo/fibers?tab=readme-ov-file
1. guile-persist       https://gitlab.com/tampe/guile-persist
2. stis-supervectors   https://gitlab.com/tampe/stis-supervectors
3. stis-parser         https://gitlab.com/tampe/stis-parser

Compile and install them in that order. Their buildscripts have bittrotted
so be prepared to know what you are doing.

To use it,

Source the modules directory in elixir and fire up guile in the elixir
directory, issue

> (load "elixir.scm")

You will now get a new shells with a fibers manager active.

The "(p string)" function parses a elixir expression into an AST
The "(c string)" function compiles the elixir expression into scheme
The "(e string)" function evaluates the elixir expression

You can also sellect the elixir language directly with

> ,language elixir
> 1+2
3
> ...

This is a first shot at an elixir language environment for guile and maybe
the most interesting aspect of it is an implementation of the erlang
processes environment using wingo's fibers.

Some things work some doesn't its in pre alpha state.

A tutorial for elixir can be found at
https://hexdocs.pm/elixir/1.18.3/enumerable-and-streams.html

Regards
Stefan

Reply via email to