Lambda the Ultimate

inactiveTopic PyLogo
started 11/21/2003; 6:32:47 AM - last post 11/25/2003; 5:58:35 AM
Ehud Lamm - PyLogo  blueArrow
11/21/2003; 6:32:47 AM (reads: 9772, responses: 15)
PyLogo
I just released PyLogo, a Logo interpreter written in, of course, Python.

Logo should be mentioned here more often.

Anyway, this looks like an interesting and useful implementation.


Posted to teaching/learning by Ehud Lamm on 11/21/03; 6:33:51 AM

Chris Rathman - Re: PyLogo  blueArrow
11/21/2003; 6:54:19 AM (reads: 742, responses: 0)
Any suggestions for online material for one to dive into Logo?

Thanks

James Hague - Re: PyLogo  blueArrow
11/21/2003; 7:01:09 AM (reads: 735, responses: 0)
Anyone looking at Logo should check out Brian Harvey's Computer Science Logo Style. Think "Structure and Intepretation of Computer Programs," but in Logo, and in three volumes. Some sample chapters are online (linked to from Brian's page). These are some of the best computer science books available.

Boxer was an attempt to design a successor to Logo. I don't know its status.

Chris Rathman - Re: PyLogo  blueArrow
11/21/2003; 7:27:06 AM (reads: 712, responses: 0)
Thanks for the recommendation. I saw the second and third volumes of an earlier edition of this series at my other hangout (used book stores). I hesitated buying it since they didn't have the first in the series (I picked up Milner's ML spec book instead). Guess I'll pick up the two and carry on the search for the first volume.

xeo_at_thermopylae - Re: PyLogo  blueArrow
11/21/2003; 9:26:29 AM (reads: 664, responses: 0)

I wrote a version of LOGO twenty years ago that made money!8-)) My company had a proprietary graphical application which was very inflexible; we could not customize our displays/drawings or symbols. We couldn't meet bid requirements on many contracts with that software. We had the application source, however, and it exposed a good base API to the display hardware.

I needed a high-level language that was flexible, could be easily understood and that had a terminology familiar to the users. I was taking psychology and computer science courses at the time and had seen LOGO and Papert's work.

I spent two days writing a language specification and the next 3 weeks writing the interpreter, working part-time. The evening before Thanksgiving I worked late and left a test drawing on my desk. Upon returning Saturday morning I found that the senior technician, excited by what I'd left, had gone through my desk, found the language specification and begun using the new interpreter on project data. Now that was user acceptance! I never had to explain the language to him.

With the new interpreter we won those contracts! That was one of my most satisfying programming gigs.

Todd Coram - Re: PyLogo  blueArrow
11/21/2003; 9:47:40 AM (reads: 674, responses: 2)
There is an interesting "PG-13 rated" Logo (suitable for the high school crowd and older) called StarLogo (http://education.mit.edu/starlogo):

StarLogo is a programmable modeling environment for exploring the workings of decentralized systems -- systems that are organized without an organizer, coordinated without a coordinator. With StarLogo, you can model (and gain insights into) many real-life phenomena, such as bird flocks, traffic jams, ant colonies, and market economies. -- from the website.

It was originally written for the Connection Machine, but the latest incarnation is written in Java.

StarLogo probably qualifies as a COP (concurrency oriented programming) language.

Matt Hellige - Re: PyLogo  blueArrow
11/21/2003; 10:04:56 AM (reads: 778, responses: 1)
There is an interesting "PG-13 rated" Logo (suitable for the high school crowd and older) called StarLogo...

Time for my mandatory plug... I currently work at Northwestern University on NetLogo, which is something of a descendant of StarLogo (via another defunct project called StarLogoT). NetLogo is also written in Java and, in addition to being used in curricular research here, has an active user community of both hobbyists and researchers interested in agent-based modeling.

My impression is that StarLogo is no longer being actively maintained, but perhaps they're just keeping a low profile lately. In either case, I believe NetLogo has significantly surpassed StarLogo in terms of functionality, and we're planning to do a final release of NetLogo 2.0 within the next couple of weeks (a beta is already available).

The documentation is a bit thin on the detailed reference material, in my opinion, but an experienced programmer should have no problem picking it up, and the distribution includes a large number of sample models.

Logo definitely isn't my favorite language, but it's a lot of fun... Hope this isn't too much of a plug...

(Also, post 10000! Go team! Hehe...)

Ian Bicking - Re: PyLogo  blueArrow
11/21/2003; 10:15:47 AM (reads: 645, responses: 0)
Boxer is a very neat language, though I'm pretty sure it's totally inactive, and has been for a couple years now. I haven't been able to run the environment on Mac OS X (classic mode) either, and it's only distributed for Macs. (A PC version is mentioned as in-development, and a SunOS version existed at one time, but Mac is all that's distributed)

Nevertheless, it has some very neat ideas, mostly related to the graphical representation of a program. It's not like some graphical languages that try to make the entire program into a drag-and-drop exercize, the graphics are limited to code blocks (Logo's [] lists) and richer literals (e.g., a color literal), without forgoing the richness of syntax and grammar using words.

Ehud Lamm - Re: PyLogo  blueArrow
11/21/2003; 12:39:05 PM (reads: 649, responses: 0)
Hope this isn't too much of a plug...

Not really. NetLogo is cool. Let us know when the release is ready!

Chris - Re: PyLogo  blueArrow
11/22/2003; 9:42:52 AM (reads: 438, responses: 0)
Last year, I started writing a Logo subset that would create Macromedia Flash movies. Sadly, my hobby project has gathered some dust.. :(

Ralph Richard Cook - Re: PyLogo  blueArrow
11/23/2003; 11:30:50 AM (reads: 353, responses: 1)
Thanks for the recommendation. I saw the second and third volumes of an earlier edition of this series at my other hangout (used book stores). I hesitated buying it since they didn't have the first in the series (I picked up Milner's ML spec book instead). Guess I'll pick up the two and carry on the search for the first volume.

Dude, where do you live? The used bookstores around here have nothing like this...

Manuel Simoni - Re: PyLogo  blueArrow
11/23/2003; 12:29:05 PM (reads: 351, responses: 0)
Heck, where I live I can't even get these books in the stores for new books.

Darius Bacon - Re: PyLogo  blueArrow
11/24/2003; 3:19:38 AM (reads: 292, responses: 0)
The Windows version of Boxer is at http://www.pyxisystems.com.

Chris Rathman - Re: PyLogo  blueArrow
11/24/2003; 5:31:52 PM (reads: 247, responses: 0)
Dude, where do you live?
Dallas. Got about six used bookstores that I check on regularly. Telecom is in the dumps in this area, so a lot of technical people have been pawning their book collections.

Managed to snag Volume 2 & 3 of the Computer Science Logo Style for $6 a piece. Now I guess I'm committed to buy Volume 1. I'm on vacation this week and I was kind of hoping to start on them for R&R. But then languages are kind of a hobby of mine, and studying new languages is what I do to relax. :-)

Patrick Logan - Re: PyLogo  blueArrow
11/24/2003; 7:11:29 PM (reads: 242, responses: 0)
The used bookstores around here have nothing like this.

Shop on-line at Powell's.

They're here in Portland, but I can't keep them all to myself anyway, so have at it. They have a huge technical department with all kinds of used books.

Luke Gorrie - Re: PyLogo  blueArrow
11/25/2003; 5:58:35 AM (reads: 227, responses: 0)
I've had very good luck with Bookfinder. It's a "portal" that searches a network of second-hand book shops. Most of the books I buy through them seem to end up coming from Alibris.

I've picked up a small library of great books from these sites. Each book cost between about $5 and $15. Possibly I should really join a library instead..