On Jan 5, 2016, at 9:51 PM, Emmanuel Oga wrote:
> On Tuesday, January 5, 2016 at 11:12:44 AM UTC-8, Matthias Felleisen wrote:
>> TR is intended for people who wish to add types retroactively.
>
> Not sure I understand this stance:
>
> * Does this mean if I want to use
On Jan 6, 2016, at 12:34 AM, JCG wrote:
> On Tuesday, January 5, 2016 at 2:12:44 PM UTC-5, Matthias Felleisen wrote:
>> Late but I want to record principles and experiences in this thread:
>>
>
>> I don't understand this bullet. Bullet 1 says your code is now completely
On Jan 6, 2016, at 2:01 PM, JCG wrote:
>
>> I will say this as the first Racketeer and Typed Racketeer: if you just want
>> to program in an explicitly-statically typed language (possibly with
>> inference), you might wish to broaden your scope of search. There are
> I will say this as the first Racketeer and Typed Racketeer: if you just want
> to program in an explicitly-statically typed language (possibly with
> inference), you might wish to broaden your scope of search. There are other
> expressively typed languages that come with good libraries. Most
On Wed, Jan 6, 2016 at 2:01 PM, JCG wrote:
>
> So, two things come to mind, Racket and SBCL because I've used them before,
> and the ML family - Haskell, OCaml, and Scala. Having tried Scala, I like
> the language but the associated environmental baggage appeared heavy
On Wednesday, January 6, 2016 at 11:01:56 AM UTC-8, JCG wrote:
> > I will say this as the first Racketeer and Typed Racketeer: if you just
> > want to program in an explicitly-statically typed language (possibly with
> > inference), you might wish to broaden your scope of search. There are other
Late but I want to record principles and experiences in this thread:
On Dec 26, 2015, at 6:52 PM, JCG wrote:
> Having just converted a server process of about 1800 lines of untyped Racket
> to 1900 lines of typed Racket, I'd like to make some comments
>
> 1) I highly
On Tuesday, January 5, 2016 at 11:12:44 AM UTC-8, Matthias Felleisen wrote:
> TR is intended for people who wish to add types retroactively.
Not sure I understand this stance:
* Does this mean if I want to use types proactively, TR is not a recommended PL?
* Or maybe it means adding types
On Tuesday, January 5, 2016 at 2:12:44 PM UTC-5, Matthias Felleisen wrote:
> Late but I want to record principles and experiences in this thread:
>
> I don't understand this bullet. Bullet 1 says your code is now completely
> typed. Our experience is that completely typed versions are about as
On Tue, Jan 05, 2016 at 06:51:33PM -0800, Emmanuel Oga wrote:
> On Tuesday, January 5, 2016 at 11:12:44 AM UTC-8, Matthias Felleisen wrote:
> > TR is intended for people who wish to add types retroactively.
>
> Not sure I understand this stance:
>
> * Does this mean if I want to use types
Is the server code online anywhere? I'd like to see what the boundary
contracts are.
Let me know if starting typed works for a future project. So far, I've had
the best experience starting untyped but keeping type annotations in
comments -- basically like no-check, but without annotations on
Sorry, there's no publicly available code involved with the project.
Seeing all the options, I believe that my favorite one is to type only at the
border of my code, leaving the implementation in untyped Racket. By dropping
the contract cost, code still goes fast, and the borders are
On Tue, Dec 29, 2015 at 7:05 PM, JCG wrote:
> If I understand this correctly, the unsafe version will perform the same
> static checks on callers of the functions published by (provide) but not
> incur contract cost.
Yep, that's right.
#lang typed/racket/base
(require
Just as a word of caution here: with a different set of type
annotations, that program could go from a runtime error to a segfault.
You probably also want to at least disable TR's optimizations when you
do this.
Robby
On Tue, Dec 29, 2015 at 6:13 PM, Benjamin Greenman
Having just converted a server process of about 1800 lines of untyped Racket to
1900 lines of typed Racket, I'd like to make some comments
1) I highly suggest starting in Typed Racket if you are going to go end up
there. I made the mistake of writing it untyped and then retrofitting which
On 2015-12-26 15:52:38 -0800, JCG wrote:
> 3) The end-product appears to be a 50%-performance hybrid due to boundary
> contracts, but ameliorated runtime-wise by utilizing the
> typed/racket/no-check language after it's all working in type checked mode.
If you're using Racket v6.3, another way
On Saturday, December 26, 2015 at 9:14:10 PM UTC-5, Asumu Takikawa wrote:
>
> That way at least your types won't bitrot as much. Note that as the name
> indicates, this is potentially less safe than untyped Racket if the TR
> optimizer is on.
>
> (you could also write a wrapper macro that
17 matches
Mail list logo