[racket] Typed Racket - Successful Conversion
DrRacket does this automatically.
But the default settings will make .zo files with debugging on --
maybe there is some bad Typed Racket / errortrace interaction that
slows down compilation significantly?
Robby
On Tue, May 24, 2011 at 6:23 PM, Sam Tobin-Hochstadt <samth at ccs.neu.edu> wrote:
> Ray -
>
> Thanks for the happy story!
>
> As for compile times, what I typically do is use `raco make' on the
> command line to compile things, which means that typechecking doesn't
> have to happen repeatedly. For a 10k line project, I would expect
> this to make a substantial difference when changing files at the
> leaves of the hierarchy. For the root of the hierarchy, there's not
> much to be done with the current architecture of Racket other than
> making Typed Racket faster (which we're working on).
>
> On Tue, May 24, 2011 at 4:09 PM, Ray Racine <ray.racine at gmail.com> wrote:
>> This weekend I completed a 3 weekend exercise converting just short of 10K
>> wc -l lines of racket code. All told it took 3 weekends to get there. I
>> did it because it appears 10K lines is about my conceptual limit given my
>> slovenly documentation habits.
>> The old code worked just fine, however it was no longer readily apparent to
>> my why this should be the case.
>> Some observations:
>>
>> 95% of the time adding signatures was very straight forward.
>> In <2% I had some difficulties, some self inflicted, some hitting some rough
>> areas where things are not yet competed in typed Racket, I was always able
>> to come up with something that worked.
>> Was surprised by the number of sunny day assumptions in my original code
>> Typing forced me to handle all "cases". The code is now more robust then
>> before.
>> The typing syntax overall is really quite good. It did not come across as
>> an afterthought bolt-on.
>> require/typed works cleanly to "lift" untyped racket code from 3rd party
>> libs into typed land.
>> The time it takes to initially type check a high up in the module hierarchy
>> module does start to impact the development cycle however.
>>
>> Overall the doing and completing of the migration took a pile of code on the
>> verge of anarchy and put it back under control. I feel confident it could
>> double in size a number of times and remain so.
>> I think typed racket is a huge win. Controversially, (oh boy) I'd go as far
>> to say Racket should just go 100% typed from bone to guts, top to bottom.
>> Racket - The Programming Language With The (Soon To Be) Most Advanced Type
>> System In The World. *whew*
>> Who'd a thunk it.
>>
>> _________________________________________________
>> For list-related administrative tasks:
>> http://lists.racket-lang.org/listinfo/users
>>
>
>
>
> --
> sam th
> samth at ccs.neu.edu
>
> _________________________________________________
> For list-related administrative tasks:
> http://lists.racket-lang.org/listinfo/users
>