> There are two arts to collision detection: figuring out whether two
> images collide (which gets trickier when they're in motion) and
> organising all your objects so you don't have to test very many
> combinations of them.
Back in the summer holiday I played with 2d-range trees for the latter purpose.
I combined it with a partial port of chipmunk.
The code with a very small example is here:
https://github.com/soegaard/this-and-that/blob/master/snoopy/racket-chipmunk.rkt
The code isn't done. Writing code for the math library turned out to be
more interesting.
--
Jens Axel Søgaard
I do think that a good design goal for Racket's kid-oriented libraries
would be to be feature compatible with Scratch. It would be great if
there were good ways of doing everything that Scratch can do, from
playing sounds to detecting collisions, to (more aggressively) on-line
hosting of the final result. I'd love it if Racket were strictly
better than Scratch for someone who really can figure out how to
program, but it's just not true now.
Yaron, this summer my students, Kathi Fisler, and I built a block-based, functional language with types (expressed as colors) and testing. It runs in the browser, uses the WeScheme runtime and can express most Bootstrap programs.
It needs more polish before we can release it to the world. We would be happy to give previews to anyone who wants to see them.
--
Sent from phone. Please pardon terseness and mistakes.
This sounds ideal. I'll check it out.
This sounds great. I'm curious how it compared to snap, which is scratch like, but with more abstraction capabilities and more FP mixed in.
One key thing to aim for I believe is the online component. This is where scratch really shines. They manage to male coding a highly social activity, which makes it much more engaging.
I'd love to beta test with my kids and report back.
y