From 02896ff849fae7e2c21cc9a624ddaf4ef697b067 Mon Sep 17 00:00:00 2001 From: nisstyre56 Date: Sat, 26 Apr 2014 04:14:11 -0400 Subject: [PATCH] update README to actually explain the current status of this --- README.md | 19 +++++++++++++------ tokenize.js | 15 --------------- 2 files changed, 13 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index 1bb6994..69e5928 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,13 @@ -This is the beginnings of a little language based on a typed LC with let -and mainly inspired by these: - * http://cs.brown.edu/~sk/Publications/Books/ProgLangs/ - * http://www.cs.indiana.edu/hyplan/dfried/ts.ps (I plan on generating code in - trampolined style) - * http://lucacardelli.name/papers/basictypechecking.a4.pdf +JLambda is a functional language in the spirit of languages such as Scheme, +SML, or Clean. It aims to have a very flexible syntax and a clean and easy to +understand type system. Another goal is to generate very efficient JavaScript +code and possibly native code as well. Currently the type system is still being +conceived, and the various parts that conspire to generate actual code are +being written and will likely change quite a bit. It is possible to parse code +and generate a pretty printed version of it (see example.jl for what the syntax +looks like at the moment). + +JLambda also aims to support concurrency which will be built on a +continuation-passing style intermediate language. I have not figured out how +scheduling threads will work, or whether I will provide any programmer directed +way of scheduling (i.e. yield). diff --git a/tokenize.js b/tokenize.js index 3789446..3e7459e 100755 --- a/tokenize.js +++ b/tokenize.js @@ -255,21 +255,6 @@ function tokenize(tokstream, matchop) { tokstream = tokstream.substr(i); break; - /* falls through */ - /*case 45: // '-' - lambda = peek(tokstream, "arrow", "->"); - if (false) { - tokens.push($.extend(lambda, [charnum, linenum])); - tokstream = tokstream.substr(2); - break; - } - else { - tokens.push(["identifier", "-", charnum, linenum]); - charnum++; - tokstream = tokstream.substr(1); - break; - } - /* falls through */ case 46: // '.' if (isDigit(tokstream[1])) {