[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Savannah-register-public] [task #6355] Submission of The L language
From: |
Sylvain Beucler |
Subject: |
[Savannah-register-public] [task #6355] Submission of The L language |
Date: |
Thu, 04 Jan 2007 21:50:33 +0000 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.7) Gecko/20060830 Firefox/1.5.0.7 (Debian-1.5.dfsg+1.5.0.7-2) |
URL:
<http://savannah.nongnu.org/task/?6355>
Summary: Submission of The L language
Project: Savannah Administration
Submitted by: Beuc
Submitted on: Thursday 01/04/2007 at 22:50
Should Start On: Thursday 01/04/2007 at 00:00
Should be Finished on: Sunday 01/14/2007 at 00:00
Category: Project Approval
Priority: 5 - Normal
Status: None
Privacy: Public
Percent Complete: 0%
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Effort: 0.00
_______________________________________________________
Details:
A new project has been registered at Savannah
This project account will remain inactive until a site admin approves or
discards the registration.
= Registration Administration =
While this item will be useful to track the registration process, *approving
or discarding the registration must be done using the specific Group
Administration
<https://savannah.nongnu.org/siteadmin/groupedit.php?group_id=9038> page*,
accessible only to site administrators, effectively *logged as site
administrators* (superuser):
* Group Administration
<https://savannah.nongnu.org/siteadmin/groupedit.php?group_id=9038>
= Registration Details =
* Name: *The L language*
* System Name: *l-lang*
* Type: non-GNU software & documentation
* License: GNU General Public License V2 or later
----
==== Description: ====
My project is the implementation of a novel language, L.
L takes features from C and Lisp: it has low-level capabilities (like
pointer
handling) like C, and high-level macros like Lisp.
However, unlike Lisp, L is statically and strongly typed (and the macros
can take advantage of type information).
L uses a conventional syntax, like C, but is an extensible language, like
Lisp. Even the syntax can be redefined dynamically; this allows
to write code that mixes different syntaxes like:
XML_Node test(void) {
let node = XML(<foo>bar baz ${3 + 4}</foo>); print(node); node}
For examples, see the regression_test/ directory.
The current implementation is written in C, but L should be self-hosting.
The compiler is dynamic and outputs x86 code in memory;
I'm also writing a L->C converter. It also features a dynamic lexer
generator, that compiles a list of regexpes into assembly.
L is now mature enough to accept contributions; I'm in the process of
cleaning up the code for helping people to contribute. The following
URL (http://racin.free.fr/L.tgz) points to a not-yet-cleaned implementation,
but I give it to you now so that it will be cleaned when you have finished
the review process.
L is licensed under the Lesser GPL, version 2 or later.
==== Other Software Required: ====
GNU lightning
Judy (judy.sf.net)
In the near future: boehm-gc
GNU autotools & texinfo
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/task/?6355>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/
- [Savannah-register-public] [task #6355] Submission of The L language,
Sylvain Beucler <=