[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