I came across this site a year or so ago and really enjoyed using it to discover and draw various well-known fractals.
Here are a few programs I made with it. For some reason I tried to write them in a pure-ish functional style, accepting that the turtle has to move and turn but avoiding the "cheat" commands like setxy (placing the turtle at an absolute position) or make (setting a variable). Note that the default is to 'run normally'. You might want to click 'stop program' and then 'run fast'.
Wow. Just wow. Brought back memories from elementary school! I totally despised my computer class where we were taught logo. During the exam I walked in completely clueless. Not knowing anything and having tonnes of time in front of the screen, I started typing some commonsense words and numbers and BOOM! stuff started showing up on my screen. I passed the exam--thanks for the geniuses who made a truly simple language an idiot kid could figure out!
Brought back memories to me as well but I loved my computer class! It wasn't really a computer class, it was more like sit in front of computers and here are some books. This was in grade 2 for me, using Comterm MAX computers.
I used it before I knew it was a programming language. I got it in a game disk and it came with a "cheatsheet". I learned the combinations in a few minutes and had it drawing things. Pretty soon, 2-3 days, I grabbed a math book to lookup formulas :-)
I think it'd be a lot of fun to do webapp for creating and sharing artwork made in Logo -- with a bunch of github-like social features. Or, maybe Facebook integration?
Hey Thomas, I was gonna volunteer to add a few mathematical routines, I needed ABS and RANDOM to play with it, but I got the sources and found out they're in there, just not documented :-)
Interested parties can read logo.js; search the file for addCommand, addTurtleCommand, addPrimitive, addInfix, etc.
I see you have s-exp parsing in your TODO list, perhaps I can take that for a task. Along with some documentation. Otherwise it looks great :-)
Logo was my favorite thing about 4th and 5th grade, and I've not touched Logo code since then. Having not touched it in the 25-odd intervening years, my memories of struggling to hold a whole program design in my head are relatively clear; and it is amazing how much easier programming is now. Something to remember if my kids start wanting me to teach them to program a couple of years from now.
This is depressing. I spent the last 3 nights working on this same idea, except it was closer to Python's turtle module than Logo, and it used Google's Closure library.
14 comments
[ 6.1 ms ] story [ 280 ms ] threadHere are a few programs I made with it. For some reason I tried to write them in a pure-ish functional style, accepting that the turtle has to move and turn but avoiding the "cheat" commands like setxy (placing the turtle at an absolute position) or make (setting a variable). Note that the default is to 'run normally'. You might want to click 'stop program' and then 'run fast'.
* Sierpinski triangle: http://logo.twentygototen.org/83EGZPPC
* Sierpinski carpet: http://logo.twentygototen.org/4c5iy9iU
* Sierpinski arrowhead curve: http://logo.twentygototen.org/hYDSZt8h
* Hilbert curve: http://logo.twentygototen.org/CFyUSzqG
* Hexaflake: http://logo.twentygototen.org/AJeuVkKc
http://logo.twentygototen.org/HxD0BYNH
And this is rather surprising
http://logo.twentygototen.org/PQD5ksVB
http://www.calormen.com/Logo/
And, here's one that uses svg instead of canvas:
http://www.amberfrog.com/logo/
I think it'd be a lot of fun to do webapp for creating and sharing artwork made in Logo -- with a bunch of github-like social features. Or, maybe Facebook integration?
It is also in some serious need of attention after being plagued by spambots.
If anyone fancies hacking on it I will happily add them to the svn repository/google app engine.
Interested parties can read logo.js; search the file for addCommand, addTurtleCommand, addPrimitive, addInfix, etc.
I see you have s-exp parsing in your TODO list, perhaps I can take that for a task. Along with some documentation. Otherwise it looks great :-)
Oh well, I'll continue on.