Well I know some instructors who think that their beginners can handle TR and its errors :-) [But yes, for those, I'd use #:on-tick and #:to-draw anyways.]
On Mar 15, 2015, at 12:27 PM, Alexis King wrote: > Yeah, I’ve definitely noticed the amount of effort put into sending good > error messages from misuses of the htdp functions. I did attempt the bare > minimum of supplying reasonable error messages: the identifiers are the same > as the ones used in 2htdp/universe, so the “out of context” messages are > still signaled, and I’ve added some basic descriptions to the syntax-parse > fields to make the error messages give a little more context. > > At the same time, I’ve noticed that big-bang itself has some obviously very > sophisticated mechanics for detecting subtle mistakes. The “this identifier > appears to have been used as a variable” error messages are pretty advanced, > though at that point I guess I’m not sure why you didn’t just detect for the > datums instead of identifiers. > > Anyway, as for those and the stepper, the stepper obviously doesn’t work with > TR, anyway, and I’d imagine that people able to read Typed Racket’s error > messages would probably be able to handle these ones. I’m not discounting > your point—you’re right that this is probably less accessible for > students—but I guess using it would be out of their grasp, anyway, at least > for now. > >> On Mar 15, 2015, at 09:04, Matthias Felleisen <matth...@ccs.neu.edu> wrote: >> >> >> Thanks. That's awesome. FWIW, we have had several attempts at typing world, >> and I think certain instructors may wish to give this a spin. I really like >> it that you converted it all to syntax-parse and didn't sacrifice the >> faux-keyword approach. But do understand that the kind of students we >> imagine may have a hard time with the error messages signaled from >> syntax-parse. [The complications of the existing implementation are partly >> about sending good error messages and partly about making sure that the >> stepper works, which my first and second implementation of the current world >> package did not.] -- Matthias >> >> >> >> >> >> On Mar 14, 2015, at 8:39 PM, Alexis King wrote: >> >>> I’ve had the 2htdp-typed package available for a little while now, which is >>> a Typed Racket wrapper for the HtDP/2e teachpacks. It was missing big-bang, >>> since it is implemented as a macro, but I have now added support for >>> big-bang in Typed Racket. >>> >>> The syntax of big-bang is identical to its untyped equivalent except for >>> one thing: it requires an annotation that specifies what the type of the >>> WorldState parameter should be. The exact syntax for big-bang is provided >>> in the documentation. >>> >>> There are still a couple of unsupported features: >>> >>> The universe/networked worlds (“The World is Not Enough”) are not >>> supported. This actually shouldn’t be terribly difficult to add, I just >>> have absolutely no experience working with universe programs, so I haven’t >>> tried. >>> >>> The 2htdp/planetcute collection of sprites is not yet available in Typed >>> Racket. This also shouldn’t be terribly difficult to add, but my first >>> attempt ran into some complexities in how the identifiers are provided that >>> I did not anticipate, and I haven’t taken the time to look into it since. >>> (See https://github.com/racket/htdp/issues/2 for some limited information >>> about that.) >>> >>> Otherwise, I think everything should work just fine. I don’t have many >>> programs that use these libraries sitting around, but I’d love to know if >>> this wrapper works with existing world/universe programs. >>> >>> Feedback and bug reports much appreciated, pull requests welcome! >>> >>> Alexis King >>> ____________________ >>> Racket Users list: >>> http://lists.racket-lang.org/users >> >
____________________ Racket Users list: http://lists.racket-lang.org/users