On Monday, March 11, 2019 at 1:22:48 PM UTC-4, Matthias Felleisen wrote: > > > > > On Mar 11, 2019, at 1:18 PM, Brian Adkins <[email protected] > <javascript:>> wrote: > > > > I want let semantics, but I've been using define more because it's > preferred in the Racket style guide. I don't want the behavior of define > above, so using letrec to get a runtime error instead of compile time error > doesn't make sense. > > > > Oops - I should've used let* in my example. > > > That wouldn’t change a thing in your example.
My only point was that when using let, it fails even when ordered correctly, but with let* it succeeds when ordered correctly. > If you meant you want a let* semantics for sequences of define, I think > that’s a good idea. And as the author of the Style Guide, I wholeheartedly > agree with this desire. When I replace let-s with define-s, I have gotten > used to checking for identifier sequencing and such. But perhaps a newbie > shouldn’t have to think that way. I would argue that *nobody* should have to think that way when we can have the compiler do it for us :) Obviously, I'm happy with a dynamically typed language, as I've chosen Racket over OCaml & Haskell, but I'm still happy to delegate some things to the compiler. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.

