On Feb 22, 2011, at 11:01 AM, Danny Yoo wrote:
>> -- I wrote a compiler
>> -- I benefited from TR because ...
>> -- And I need X Y and Z from R because pedestrian languages
>> such as ML and Haskell don't support it
>> I should add that I'm using other parts of Racket, like the web-server
> package, to let me write automated tests on the prototype. A problem
> that I need to deal with is: once I've generated some JavaScript, how
> do I test it automatically with a real web browser's evaluator? I
> want all my tests to be expressed in Racket, and I don't want to
> depend on any external packages, such as Selenium. So I'm using
> web-server to feed JavaScript and get back evaluated results back into
> Racket. See:
>>https://github.com/dyoo/js-sicp-5-5/blob/master/browser-evaluate.rkt>> and:
>>https://github.com/dyoo/js-sicp-5-5/blob/master/test-browser-evaluate.rkt>> for a preliminary sketch.
Danny,
1. Thanks for playing along. Keep this response handy just in case you
get ever asked why you did't just develop this compiler in a plain old,
well-established statically typed language. The mix-and-match approach
-- a good scriptable web-server that can be used from within the
language -- and types when you need them is a nice sophisticated example
of what we imagined. (I still want to see ML people do much better with
Xexprs than strings.)
2. I am sorry for carrying out this dialog on 'users' I thought we were
on 'dev' and wanted to take this as an opportunity to explain the
rationale once again.
Perhaps others have learned something anyway. -- Matthias