Skip to content
/ gel Public
forked from tigrux/gel

The Glib-Extension-Language (gel) is a scheme-like language completely written in GLib and C.

License

Notifications You must be signed in to change notification settings

lsandov1/gel

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Glib-Extension-Language (or just Gel) is a dynamic language
completely written in GLib and C, but inspired in Scheme and Python.

It is very easy to use, since everything is an literal, symbol or symbol.

The Code is very small, just 3 public modules, and a few more of support.

What makes Gel different is that everything is implemented in GLib:
- Symbols are GValues.
- Functions are GClosures.
- Arrays are GValueArray.
- Objects are instantiated by type name.
- Parsing is done with GScanner.
- Symbols are resolved using GHashTables.
- Arithmetic and logic are exposed as functions that take GValues.

Bindings for Vala are provided (see examples/test.vala)
Support for gobject-introspection is currently in early stage.

However, the project is not mature yet, so speed or elegance is not a
priority yet. The current goal is to prevent memory leaks and provide
an API comfortable to use from both C, Vala and Gel.

A few examples are available in examples/

About

The Glib-Extension-Language (gel) is a scheme-like language completely written in GLib and C.

Resources

License

Stars

Watchers

Forks

Packages

No packages published