[PRL] interesting web DSL
Dave Herman
dherman at ccs.neu.edu
Mon Sep 3 20:43:40 EDT 2007
This is an interesting DSL for recording and replaying actions performed
in a web browser:
http://services.alphaworks.ibm.com/coscripter/browse/about
Some of the features:
* a "macro" language (in the MS Office sense, not the Scheme sense)
for the web browser
* fuzzy natural language syntax
* imperative, sequential semantics for actions
* declarative semantics for selecting page elements -- appears to
be pretty DWIM-ish (e.g., "the thirty-fourth textbox" or "the bottom image")
* automatic publishing of scripts on the web (i.e., immediate
sharing for code reuse)
* very limited amount of abstraction
The informational video is pretty interesting:
http://services.alphaworks.ibm.com/coscripter/browse/video
At first blush, I'd say the things they got right are:
* yes, Virginia (Paul Graham), the masses can program
* providing programmatic automation for common tasks
* automatic code-sharing via Internet communities -- the web got
this right 20 years ago (View Source), Perl got this almost-kinda-right
a while back (CPAN), and only in the last few years are other
programming languages starting to catch on
* fuzzy syntax and DWIM semantics, i.e. worse is better, for
everyday tasks (but see below)
and the things they appear to have gotten wrong:
* almost no abstractions
* they're probably going to have to keep playing catch-up with the
browser capabilities to make this viable
* I don't see any way to drop down into JavaScript when their
language doesn't give you enough power, i.e., an /embedded/ DSL
* fuzzy syntax and DWIM semantics, i.e. worse is better, when
precision matters (but see above)
Dave
More information about the PRL
mailing list