[racket-dev] My experience with Typed Racket

From: Ray Racine (ray.racine at gmail.com)
Date: Tue Nov 6 12:00:09 EST 2012

Nice summary.

Yes, in my experience so far, there is higher than anticipated pain when
attempting to re-use pre-existing libraries written in R by lifting them to

When writing green-field code in TR mostly things are a joy
(more aggressive inferencing would be a nice improvement).  One tends to
work with TR accepting what it offers and steering clear of the usual
standard static typing constraint pot-holes.  When writing R code one tends
to adopt the Lisp'ish way, which can be at odds with the ML'ish way.

In my experience lifting R -> TR is harder than TR -> R.  Yet getting
people to write TR first with a transform to R will be a huge shift for the
community, maybe a non-starter.  Forking core collections libraries into
two code bases doesn't make sense.

If the path is to baseline the current collections/... in R and also write
new collection libraries in R with a finishing polish of a R -> TR wrapping
I'm not sure it will work out smoothly.  Ultimately I expect a
non-insignificant amount of R code in collects/... would best be re-written
with a TR lifting in mind.   And the development of new collections done
with TR in mind a priori, dual written in tandem or written in TR initially
with a TR -> R finishing step.

I'm biased but personally I think collects/... should be rewritten in toto
 to TR with a standard TR -> R `require' option or transformation on
setup/install.  Huge effort there to say the least.   Wrapping existing R
code in TR 'in situ' will probably not work.   That doesn't mean it can't
be done, but there will always be an impedance mismatch at the performance
level and an accompanying awkwardness at the API level.

On Tue, Nov 6, 2012 at 9:56 AM, Dan Burton <danburton.email at gmail.com>wrote:

> Good idea; I've modified the post title as you recommended.
> -- Dan Burton
> On Tue, Nov 6, 2012 at 7:34 AM, Matthias Felleisen <matthias at ccs.neu.edu>wrote:
>> Thanks for the feedback.
>> You labeled the blog "my experience with typed racket" but you focus
>> on the negative points. Perhaps you want to add ", the Negative Parts"
>> to the title because your introduction makes it clear that you find
>> a few good things.
>> -- Matthias
>> On Nov 5, 2012, at 5:46 PM, Dan Burton wrote:
>> > I've published a blog post about Typed Racket that I've been holding on
>> to for a while.
>> > Mainly I intended it as feedback for Sam about what areas of TR I think
>> can be improved,
>> > though it does provide a sort of tour through lots of Typed Racket
>> features,
>> > so it should be readable by anyone with familiarity with Racket.
>> >
>> >
>> http://unknownparallel.wordpress.com/2012/11/05/my-experience-with-typed-racket/
>> >
>> > If I've made any errors, please let me know and I will correct them
>> posthaste.
>> >
>> > -- Dan Burton
>> > _________________________
>> >  Racket Developers list:
>> >  http://lists.racket-lang.org/dev
> _________________________
>   Racket Developers list:
>   http://lists.racket-lang.org/dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/dev/archive/attachments/20121106/12e95d36/attachment.html>

Posted on the dev mailing list.