nuutondev / jcls Goto Github PK
View Code? Open in Web Editor NEWThis project forked from mishoo/jcls
A (Common?)Lisp interpreter in JavaScript
Home Page: http://www.ymacs.org/jcls/browser/
This project forked from mishoo/jcls
A (Common?)Lisp interpreter in JavaScript
Home Page: http://www.ymacs.org/jcls/browser/
JCLS: Java-Common-Lisp-Script (c) Mihai Bazon 2011 http://mihai.bazon.net/blog ---------------------------------------------------------------------- Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp. Greenspun's Tenth Rule ---------------------------------------------------------------------- This is a toy Lisp interpreter in JavaScript. It follows the wisdom brought to us by prophets in SICP 4:1:7 to implement an analyze function that breaks the Lisp program into JavaScript closures. It's probably not usable for real programming, as the interpreter is recursive and could blow the stack quite easily. Current features: (see tmp/test.lisp for some disorganized tests) - basic Lisp stuff: CONS, LIST, C[AD]+R, QUOTE, IF, LAMBDA etc. - CL-style packages (supports private symbols, etc.) - lexical and dynamic variables - FLET, LABELS, DEFUN, DEFMACRO, MACROEXPAND-1 - CL-style lambda lists (&key, &optional, &body, DESTRUCTURING-BIND) - the quasiquote operator - CATCH, THROW, IGNORE-ERRORS, UNWIND-PROTECT - the ability to influence the reader (SET-MACRO-CHARACTER) It's not remotely close to half of Common Lisp, as you can see, but maybe we can get closer. I'm planning to change the analyze function to continuation-passing style (as in SICP 4:3:3) and use a trampoline instead of doing tail calls, which should (if the resulting interpreter won't be unbearably slow) make it useful for real-world problems. ----------------------------------------------------------------------
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.