Build Your Own

Programming Language with JavaScript

/* author: Zach Carter */

Every program is an interpreter.

...but some interpret other programs!

(program = data)

Parser (syntax) ↓ Semantic analysis ↓ Code Generation or Interpreter

Parser (syntax) ↓ Semantic analysis ↓ Code Generation or Interpreter

Parser generators! OMeta-JS Jison PEG.js JS/CC

Parser generators! OMeta-JS Jison PEG.js JS/CC

Parser generators! OMeta

:D

Jison PEG.js JS/CC

First, we need a grammar.

ECMA-262 5th Edition 15.12.1.2

Build the Parser Live demo!!

(demo code generation)

Instead of codegen...

metacircular evaluator FTW

jsonic - a homoiconic language

Pa

the end.

@zii

Links http://azarask.in/projects/algorithm-ink/ http://processingjs.org http://coffeescript.org http://jison.org http://tinlizzie.org/ometa-js/ http://pegjs.majda.cz/ http://github.com/zaach/jsonic http://mitpress.mit.edu/sicp/full-text/book/book.html http://www.softwarepreservation.org/projects/LISP/b ook/LISP%201.5%20Programmers%20Manual.pdf

Build Your Own Programming Language with JavaScript - GitHub

Build Your Own. Programming Language ... Parser generators! OMeta-JS. Jison. PEG.js. JS/CC ... ook/LISP%201.5%20Programmers%20Manual.pdf.

325KB Sizes 7 Downloads 281 Views

Recommend Documents

Build Your Own
Page 1. PDF Online Build and Pilot Your Own Walkalong Gliders (Build. Your Own) - PDF ePub Mobi - By Philip Rossoni. PDF online, PDF new Build and Pilot ...

The Nile Programming Language - GitHub
Skia (Chrome, Android) ... if (currE->fLastY == curr_y) { .... Speedup on 40 core machine. 1. 10. 20. 30. 40. 0. 5. 10. 15. 20. 25. 30. 35. Cores. S p eed u p ...

The Ruby Programming Language - GitHub
You'll find a guide to the structure and organization of this book in Chapter 1. ..... Determine US generation name based on birth year ...... curly braces: "360 degrees=#{2*Math::PI} radians" # "360 degrees=6.28318530717959 radians" ...... of comput

Build Your Own Search String - 21cLiteracies Wiki
#1 Terms and Strings. The words that you enter in the Google basic search box are called terms. As you look for information, try to use terms that are commonly used and that are absolutely essential to your research question. A group of terms is call

Build Your Own Website.pdf
Sign in. Loading… Whoops! There was a problem loading more pages. Whoops! There was a problem previewing this document. Retrying... Download. Connect ...

Build Your Own Search String - 21cLiteracies Wiki
Sometimes the best way to find information is to search for two or more ... Build Your Own. Search ... Using a site operator as a term in your search string will give.

Build Your Own Telescope
Page 1. [PDF Online] Build Your Own Telescope - Best Seller Book - By ... Telescope, Full PDF Build Your Own Telescope, All Ebook Build Your Own Telescope, ...

Build Your Own BeLoved Meal.pdf
Classic Vinaigrette Lemon Balsamic Mediterranean Roasted Garlic. Peanut Lime Orange Honey Cilantro Lime Asian Sesame. ORG = Dirty Dozen PlusTM.

build your own codeplug
This Document will show you how to merge the individual MD380 codeplug files found at http://byrg.net. It will also show how to convert them to what model ...

IMAGI- Child Friendly Programming Language - GitHub
2. Introduction. Project Motivation. With the technology industry developing at a rapid pace, the need for more programmers increases everyday. Little options exist to introduce programming to kids successfully, this is why our team decided to attack

Parallelize JavaScript Computations with Ease - GitHub
It abstracts the messaging-based programming model for a seamless .... difference of Threads.js is its messaging-based programming model that is ...... upload/208631.pdf (visited on 11/20/2016). [16] Microsoft. ... license.php. [26] npm Inc.

Polyglot Build System With Build Artifact Repository - GitHub
Maven Repository: The build artifact repository layout introduced in Maven 2. ... (Details at: http://ant.apache.org/ivy/history/latest-milestone/resolver/url.html).

Javascript Data Exploration - GitHub
Apr 20, 2016 - Designers. I'm a sort of. « social data scientist ». Paris. Sciences Po médialab. I just received a CSV. Let me grab my laptop ... Page 9 ...

JavaScript Crash Course - GitHub
Nov 10, 2016 - 1Info on this slide from: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures ..... Google (you are smart, figure it out).

Online PDF Build Your Own Flight Sim in C++: Programming a 3d ...
Programming a 3d Flight Simulator Using Oop -. Read Unlimited eBooks and Audiobooks - By. Michael Radtke. Online PDF Build Your Own Flight Sim in C++: ...

Build Your Own Android CyanogenMod 11 From Source.pdf ...
Build Your Own Android CyanogenMod 11 From Source.pdf. Build Your Own Android CyanogenMod 11 From Source.pdf. Open. Extract. Open with. Sign In.

App Inventor for Android Build Your Own Apps - No Experience ...
App Inventor for Android Build Your Own Apps - No Experience Required.pdf. App Inventor for Android Build Your Own Apps - No Experience Required.pdf.