User loginNavigation |
JavascriptMechanized λ<sub>JS</sub>Mechanized λJS
More work on mechanizing the actual, implemented semantics of a real language, rather than a toy. By Paul Snively at 2012-06-27 15:28 | Functional | Javascript | Lambda Calculus | Semantics | 6 comments | other blogs | 19286 reads
Interactive Tutorial of the Sequent CalculusInteractive Tutorial of the Sequent Calculus by Edward Z. Yang.
The tool behind this nice tutorial is Logitext. By Manuel J. Simoni at 2012-05-31 14:48 | Fun | Javascript | Logic/Declarative | Teaching & Learning | Theory | 28 comments | other blogs | 19737 reads
Google's "The Future of JavaScript" internal memo leakedNote: Saw this on Sunday (9/11), but waited for it to go viral before posting it here. A leaked Google memo, The Future of JavaScript, from November 2010 is being circulated around the Internet, outlining Google's supposed technical strategy for Web programming languages. Google plans to improve JavaScript, while also creating a competitor to JavaScript, Dart (ex-Dash), that it hopes will be the new lingua franca of the Web. Ironically, I saw this leak via a Google Alert keyword search. It has propagated to at least Github, the Dzone social network, The Register and Information Week since Sunday. Developer Guided Code SplittingGoogle Web Toolkit, which compiles Java to JavaScript for running code in the browser, now includes Code Splitting, for reducing application download time:
By Manuel J. Simoni at 2009-12-09 11:27 | Javascript | Parallel/Distributed | 25 comments | other blogs | 16985 reads
No more tail calls in Javascript?In very disappointing news proper tail calls are out of ES4. It seems that a justification for tail calls could not be found. For example, here is Adobe's position on tail calls:
This seems misguided. The user can implement functional data structures but not tail calls (without whole program transformation), so the later are much more valuable than the former. Furthermore, as a functional programmer I'm quite happy to use mutable data structures but I would certainly miss tail calls. Finally, every JS implementation is already shifting to code generation because straightforward implementation techniques are too slow for the existing idioms used in JS code. The ES4 Wiki still indicates that tail calls are in, so perhaps they'll yet make it. For laughs you might want to look at the Ecmascript progress spreadsheet. Apple sure don't like change. Google V8 JavaScript EngineYou can read the docs and download the C++ source here. V8 is supposedly the main added value of Chrome, the newly announced Google browser. Our discussion of the Chrome announcement enumerates some of the features of V8. By Ehud Lamm at 2008-09-03 01:25 | Cross language runtimes | Implementation | Javascript | 44 comments | other blogs | 27420 reads
JavaScript harmonyI guess we should note the attempts to smooth over the split amongst implementers that is going down in the JavaScript community with the Oslo Summit and Harmony trying to bring back peace. All programming languages are politics. The attempt to do the right things runs into competing interests and debates over what is the right thing to do. The split in the JavaScript community has been apparent now for a while, with the incrementalists wrapped up in version 3.1 and the more ambitious wrapped up in 4.0. Here's hoping that the wheels don't fall off. From a programming language standpoint, the particulars aren't as interesting as observing how language evolution takes place. Back to the futureTileStack is an attempt to resurrect HyperCard and bring it to the web. Running online there are going to be limitations about which stacks can be ported, which may reduce the usefulness and impact of this project, but maybe a standalone version will come later. The system compiles Speak (the TileStack version of HyperTalk) to Javascript. If the result is not obfuscated, something I haven't verified, it may be possible to augment the output from TileStack with additional capabilities not supported or not yet implemented. From the compatibility angle it is interesting to note that they renamed the language and seem to imply they are going to extend it beyond HyperTalk, without giving any specific guarantee about future compatibility. I'd suggest releasing the compiler that's as close to full HyperTalk compatibility as a separate product (or even, if they can bring themselves to do it, releasing it as open source). By Ehud Lamm at 2008-06-08 18:27 | DSL | History | Javascript | 6 comments | other blogs | 19544 reads
Processing.jsJohn Resig (of jQuery fame) has ported the Processing visualization language to JavaScript. The examples are remarkable, check them out (but check the browser issues John discusses).
John has a little confession:
Actually that's quite cool in itself (even if angels weep at this parsing code, I think we on LtU shouldn't cast the first stone). DSLs should be easily built and played with. Cleaning up the implementation comes later, if at all. Purists may not only object to the regular expression parsing, but also to the central line of code which ties things together, namely: eval(parse(code, p)). But then, DSL lovers are not the sort of people to object to eval... In the old days of LtU we regularly posted links to cool small interpreters that people could play with. Some of the more amusing ones were javascript based, and the page contained a REPL form (Luke, I am talking to you!). It is a shame we don't post more stuff like this, in between the more highbrow discussions... Evolutionary Programming and Gradual Typing in ECMAScript 4Evolutionary Programming and Gradual Typing in ECMAScript 4, by Lars T Hansen, Adobe Systems, is an 18 page tutorial detailing features of ECMAScript 4, and how they can be applied to existing ECMAScript code to improve it.
|
Browse archives
Active forum topics |
Recent comments
24 weeks 2 days ago
24 weeks 2 days ago
24 weeks 2 days ago
46 weeks 3 days ago
50 weeks 5 days ago
1 year 1 day ago
1 year 1 day ago
1 year 2 weeks ago
1 year 7 weeks ago
1 year 7 weeks ago