
On Tue, Oct 2, 2012 at 3:23 PM, Conrad Parker
Nice, it builds and runs fine for me. Perhaps you could include a few more example commandlines to get started? Running without arguments (as the README.mkd suggests) just prints the help text.
Thanks for pointing that out! I've added an examples page at https://github.com/lfairy/sylvia/wiki/Examples
This is still in very early alpha, but it renders a fair number of combinators correctly. I plan to add animated reduction (once I figure out how to do it), and eventually develop this into a sandbox game of some sort. I'm hoping to get some comments and ideas on how I can take it from here.
I'd love to see a game which incrementally teaches reduction and expansion steps in the way that DragonBox [http://dragonboxapp.com/] teaches algebra. That would be a learning mode like Angry Birds, where new combinator birds are introduced every few levels and a small selection of useful birds are provided to help solve each level.
Interesting! I'll have a closer look at it when I have the time.
(Lambda calculus really should be a kids' game, grown-ups always make it seem more complex than it is).
That's exactly the point I'm trying to make :) Heck, lambda calculus is just as simple as natural numbers (if not simpler), yet people learn the former at university and the latter a few months after they're born. I think the difference is in the way they are taught. Want to teach someone about numbers? Here's one orange. Here's two oranges. And look -- put them together, and you get three. Want to teach someone lambda calculus? Give 'em a textbook, and an hour-long lecture about programming language theory. The result doesn't surprise me one bit.
Conrad.
On Tue, Oct 2, 2012 at 4:16 PM, Alistair Bayley
Not sure if it's what you're after, but I was reminded of this (models untyped lambda calculus): http://worrydream.com/AlligatorEggs/
Thanks -- I've tried that before, and unfortunately it suffers the same problem I've had with many other visualizations. Because it uses colors to refer to variables, we end up with two problems: 1. Color blind people can't play it. 2. More subtly: colors -> absolute variable names -> lots of alpha conversion. Alligators eating each other is fun. Swapping alligators frantically to stop accidental capture is not. Chris