It's down to Scheme or Logo

Don Box's Spoutlet

Syndication

 
DrScheme is in fact an excellent environment and was part of making Scheme the leading candidate.  Of course, rediscovering SICP helped a lot (and no I don't intend on having my kids read SICP).
 
I need to go grab a Logo environment before I involve my kids in the experiment.  Honestly I haven't had time to chase down the references and have zero experience with Logo - it was an obvious choice that I should have considered earlier.
 
Of my original four candidate languages, I had ruled out ML shortly after my original post.
 
As I dug around, Scheme seemed more appropriate than Common Lisp or CLOS, although for what I'm trying to accomplish it's no big deal. DrScheme was the closer on this one.
 
On the Smalltalk and Ruby front, the more I thought about it, the less I wanted to use an OO language.  Simple expression evaluation is all I really am looking for, and Scheme seems to be closest to the mark.
 
For me personally, I really enjoyed the Pickaxe book and really like Ruby a lot. For a super-pragmatic language, it's pretty damn close to perfect.  It would be my first choice if I wanted my kids to learn to program as opposed to learning about math and logic.

Posted Feb 26 2005, 07:31 PM by don-box

Comments

Chris Hanson wrote re: It's down to Scheme or Logo
on 02-26-2005 3:33 PM
I don't know what current Logo environments are like, but I think you'd be very happy with it. Logo is, after all, a Lisp-family language designed to be easy for children to learn and use. It doesn't have a low ceiling like other "teaching languages" and, because it's in the Lisp family, has a lot of the same advantages Scheme does.

But, given that it's typically integrated with turtle graphics, it lets kids see results from what they're doing very quickly and in a way that's relevant to them.
Duncan Mak wrote What's so nice about Ruby?
on 02-26-2005 10:30 PM
What are the things about Ruby that made you find it so compelling? Which of these features be introduced into a language to be used on the CLR? Which can't?
Claudio Brotto wrote re: It's down to Scheme or Logo
on 02-26-2005 11:13 PM
I can share my (little) experience with LOGO as a 10/12 years old child (I cannot exactly remember my age then).
In the late 80s / early 90s, here in Italy, a few educational projects were started, aiming to introduce children to computer science.
LOGO was chosen.
I was just a little boy, and I was not involved into this projects (it was intended for 6 to 8 years old boys), but my mom had to teach it and took home a copy of the LOGO environment (DOS, of course).
I really liked it.
I think the main purpose was about teaching some geometry and some logic, and it was fun to learn these subjects by "moving a turtle".
I cannot say this for granted, but I think the first time I have written a loop was with LOGO, drawing a square by repeating 4 times FORWARD 100 RIGHT 90.
I recently read something more about LOGO (http://en.wikipedia.org/wiki/Logo_programming_language) and I noticed there's much more than turtle graphics in it.
So ... I'm not expert enough about the LOGO language to give you a good advice, but I can only say that I enjoyed learnign LOGO.
Which, IMHO, is the most important feature you should consider when choosing a teaching language for your children: they have to enjoy learning !
Good Luck !
Bernard Notarianni wrote re: It's down to Scheme or Logo
on 02-26-2005 11:55 PM
Lisp was my 2nd langage, after basic, when I was about 13. I really enjoyed very much this langage as a newbie.

Somehow, it probably helped me to succeed in my computer class I was going to take during the following years.

I think you made the good choice for your kids :-)
JP Morgenthal wrote re: It's down to Scheme or Logo
on 02-27-2005 6:49 AM
When I first read your post on teaching your kids programming, it seemed like OO was an important part of the lesson. Now that OO is not advantageous, why not the old standby--BASIC? The first programming language I learned was BASIC, which was interpreted for immediate feedback and had enough power to start developing complex applications.
Jimmy Cerra wrote re: It's down to Scheme or Logo
on 02-27-2005 1:46 PM
I'd pick LOGO. It gives instant gratification, i.e. 'look at my pretty picture,' verses the 'boring math/english homework' initial experience with LISP. LOGO immediately stimulates a child's (and adult's!) creativity. The programming aspect just makes it easier when they want to make more complex shapes. As they learn new concepts (loops, macros, ectetera) they'll use programming as a tool instead of "homework." Then when they graduate onto more advanced applications and general-purpose languages, they will want to learn. At least that was my experience growing up. (Then again my entire family is computer illiterate, so I taught myself everything. YRMV)
matthias felleisen wrote re: It's down to Scheme or Logo
on 02-28-2005 7:47 AM
[Disclosure: I am a drscheme guy. I also the first author on "How to Design Programs" @ http://www.htdp.org/ ]

If you choose DrScheme and the teaching languages to introduce your kids to programming, let me suggest that you tie it in with math and that you use an exploratory (aka "instant gratification") style of work. With my younger son (age 11 at the time), I recently worked through a bunch of his pre-algebra exercises (how many tiles in a garden patch etc) and then I changed it to things that boys like (how far did the rocket fly, let's shoot the UFO).

I used the world teachpack for this purposes and wrote up an HtDP-style introduction so his teacher would see what we were doing. I'll share a URL if you care.
Gia wrote Please keep us posted
on 02-28-2005 10:17 AM
Lots of folks want to know what you will decide :) Last year I got terrapin logo for my kid, but after initial fun factor (he spent like 100 hours doing turtle graphics) the interest seems to be gone.
Kurt Mudford wrote re: It's down to Scheme or Logo
on 02-28-2005 11:05 AM
Check out http://www.softronix.com/logo.html , it's a logo environment, haven't tried it but looks promising.

Or you could go retro and buy an acorn :)
Shriram Krishnamurthi wrote re: It's down to Scheme or Logo
on 02-28-2005 12:06 PM
[Full disclosure: I'm a DrScheme co-author.]

Let me just point out that you can do lots of graphical
things with DrScheme, too. But hopefully that isn't
the point. If you really wanted to do graphics, I
assume you would buy your kids a palette and a paintbox
(and, hopefully, you've done that too).
Richard Norman wrote re: It's down to Scheme or Logo
on 02-28-2005 4:25 PM
I remember Logo... After BASIC, that was the next language I learned.

I learned it on the Apple IIe. I have not used it since like 1987 or 1988. So I don't know what has changed since then, but it would be great to find out. There are supposed to be implementations for .NET and I know there are some for Java.

http://el.media.mit.edu/logo-foundation/
http://blogs.sqlxml.org/vinodkumar/archive/2004/08/30/953.aspx
http://monologo.sourceforge.net/
Paul Steckler wrote re: It's down to Scheme or Logo
on 03-01-2005 6:08 AM
Side benefit of using DrScheme: you can use
it to script your favorite COM applications
using the MysterX extension :-)

-- Paul (MysterX author)
M McClellan wrote re: It's down to Scheme or Logo
on 03-01-2005 12:36 PM

Long story short. Upon starting my professional career, armed with business degree, I began to appreciate using technology to solve business problems. Excel led to Access, Access led to SQL Server. VBA led to VB. Boom happened. Easy curve to HTML and ASP.

By now I was a fairly strong database developer and I had some good frontend work, but to really leverage my background I would have to mount an assault on the middle tier. COM and CORBA seemed intimidating. I had a suspicion that there must be a better way. Now seeking, the paths eventually converged on python and xml.

Moving on to early 2000, I'm in a COM developer interview and the guy asked me about Python and Zope (from my resume). He'd never heard of either and seemed interested and so my enthusiasm overcame me and I went into a long dissertation about dynamic languages and shooting xml messages around the web and... Anyway, the interview ended something like him telling me I really needed to study Box and Sessions if I wanted to get into the middle tier (which I dutifully did).

Later on the grey-beards hrumpping about xml being s-expr redux piqued my interest. I figured I better figure out what this archaic eval and lambda stuff was. As you might imagine, I was pretty shocked at how flimsy my understanding of logic had really been. Learning the functional style made me a programmer with business skills instead of a business man with some programming skills.

So yes, I did things completely backwards. And yes it gives me a smile to see Don Box writing about teaching Scheme.

P.S. I still feed my family on .NET.
Shakeel Mahate wrote Mathematica or Power Toy Calculator
on 03-02-2005 11:23 AM
If the focus is pure mathematics why not consider Mathematica or the Power Toy Calculator from Powertoys for WindowsXP?

Whatever you select, please do post your teaching notes, so that I could use them for my kids.
Faisal Waris wrote re: It's down to Scheme or Logo
on 03-08-2005 7:30 AM
There are three basic programming paradigms epitomized by these 3 languages:

Lisp: Functional, Symbolic, Closures
Smalltalk: OO (with closures)
Prolog: Declarative

I think the concepts in each of these are important for any beginner to grasp.

As an ex-Smalltalker (still having pangs of withdrawal) I would have picked Smalltalk.

Faisal

P.S. I feed my family on Web Services
Hank Fay wrote re: It's down to Scheme or Logo
on 03-08-2005 3:27 PM
The RPN of Scheme revives my withdrawal pangs from Forth, and that was over 20 years ago. There's something about verb-first that clarifies my thinking, although I can well imagine this is idiosyncratic. I hope you'll keep us informed on how your children take to it.
Diego Vega wrote re: It's down to Scheme or Logo
on 03-09-2005 7:25 PM
I never programmed in Logo because I had no suitable hardware for it at the time, but being 13 years old I was able to read a 333 pages Logo book. Even on paper it was very stimulating to learn a serious language after having my first steps with programmable calculators and BASIC.

If you are interested in trying a graphical programming tool, a choice would be SoftWIRE for Visual Studio (@ http://www.softwire.com/). It is a VS.NET add-in that allows you to program by wiring controls in graphs. You can mix and match SoftWIRE with C# and VB, and it ultimately compiles to IL. I learned today that the product is now available for free, and it comes with Lego Mindstorm controls for “immediate gratification”.

Whatever you choose, please post about your progress. I have myself a 4 years old kid with a very hungry mind.
sandeep puri wrote re: It's down to Scheme or Logo
on 04-06-2005 5:02 PM
Smalltalk itself (on most implementations) may be too OO as you stated. Squeak (http://www.squeak.og/ ), smalltalk-80 implementation was built from with teaching as one of the major requirements. Take a look at http://www.squeakland.org/ .
Wesner Moise wrote re: It's down to Scheme or Logo
on 04-11-2005 10:36 AM
I wonder why you haven't considered Squeak. Squeak and Logo (which is essentially Lisp) are the two first programming languages I would teach my children.
mobile info wrote re: It's down to Scheme or Logo
on 06-09-2005 7:22 PM
Lisp was my 2nd langage, after basic, when I was about 13. I really enjoyed very much this langage as a newbie.
Doug Spears wrote re: It's down to Scheme or Logo
on 08-09-2005 11:08 AM
I hope this is ok to post this here, running out of options! I am a recruiter in Atlanta, and we have a client that has an immediate need for a MIT Scheme or LISP developer. You must have at least two years experience with full life cycle development in LISP or MIT Scheme. You will be providing support and debugging of a financial application. Any experience with ASP and SQL Server would be a huge plus

If interested, please contact me, thanks!

Best regards,
Doug Spears
Matrix Resources
http://www.MatrixResources.com
Doug_Spears@MatrixResources.com
770.677.2433
800.627.3533 x2433
saret wrote re: It's down to Scheme or Logo
on 07-14-2006 3:24 PM
Not sure what you really looking to teach your kids but if you want them to have quick gratification and fun while learning to program, then http://www.kidsprogramminglanguage.com/
(http://en.wikipedia.org/wiki/Kids_Programming_Language)

Might be what you're looking for - being .net and all.

Logo would be a nice introduction to programming, there is a logo implementation of logo if you wanted to go that route: http://www.dotnetlanguages.net/DNL/Resources.aspx
- it uses Gtk#, haven't look at it though .

I've tried KPL, it's a nice toy to play around with, certainly better than the drudges of dao objects i'm buried in at work.....
saret wrote re: It's down to Scheme or Logo
on 07-14-2006 3:28 PM
sorry meant:
".net implementation of logo"

Add a Comment

(required)  
(optional)
(required)  
Remember Me?