Slashdot Mirror


LOGO Still Lives -- New Java-Based Version Released

farrellj writes "Many people were introduced to computer programming using a virtual turtle, or if you were lucky a robotic turtle. Created in the '60s by a bunch of people at MIT, including one of the formost experts on computer aided learning Seymour Papert, it gave a good grounding in programming in a day when BASIC and PASCAL were the only other easily available languages...I use to teach LOGO at a computer lab in Ottawa, but have lost touch with LOGO for many years. Today, a email appeared in my mailbox announcing a new release of LOGO called StarLOGO from MIT...wow...it is done in JAVA, and looks pretty snazzy. It runs on just about any platform, and I think that it again may be a great way to get young kids interested in programming. It took me about 2 minutes to get it running...just untar it, and run a shell script, and I had the enivronment up and running. In a couple more minutes, I was writing programs that created graphical displays that would look great at raves. So I guess it's for kids of all ages!"

6 of 161 comments (clear)

  1. It's can be about a lot more than graphics. by jmacgill · · Score: 5, Informative

    The thing we all remember about LOGO as kids was the fun graphics. But it's also a full language and it's an exclenet way to learn programming.

    StarLogo has been around for a while now (though not in Java) and I've seen it used for some advanced things. For example, I remember being shown an agent based pedestrian model built using the thing if I remember rightly some years ago.

    --
    Spell checker (c) creative spelling inc. (aka my dyslexic brain)
  2. Turtles by whimdot · · Score: 5, Funny

    Woohoo, I just love writing shell scripts.

  3. Re:my experience w/LOGO. by p3d0 · · Score: 5, Insightful
    It depends how it's taught. Logo is a better language in some respects than PASCAL and certainly than BASIC. You can learn functional programming from it.

    But there's always going to be 12-year-olds who think they know everything and consider learning new programming languages a waste of time.

    --
    Patrick Doyle
    I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
  4. It's not just Logo by Anonymous Coward · · Score: 5, Informative

    Starlogo is not just another Logo version. It's a tool for experimenting with descentralized models. See the homepage, for more information.

    Taken from there:
    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.

    There's a book by Starlogo creator, Mitchel Resnick called Turtles, Termites, and Traffic Jams : Explorations in Massively Parallel Microworlds where he shows the use of Starlogo in education.

  5. Name for this? by pokeyburro · · Score: 5, Funny

    Based on current naming conventions, this shouldn't be called StarLOGO.

    It should be called J-Logo.

    Then you need an even shorter name, that rolls off the tongue. I think you see where I'm going with this.

    --
    Lately democracy seems to be based on the skybox, the Happy Meal box, the X-box, and the idiot box.
    1. Re:Name for this? by ctrimble · · Score: 5, Informative
      It's actually called StarLogo because the original version was written in *Lisp (star-lisp) on massively parallel computer system. At some point Resnick ported it over to Java.

      Incidentally, StarLogo has a resemblance to Logo, but it's primarily superficial. StarLogo is all about exploring emergent behaviours in decentralised systems. While you can do regular turtle graphics in StarLogo, if you do it, you're kind of missing the point.

      StarLogo uses thousands of turtles, instead of just a couple. StarLogo also allows the turtles to interact with their environment by doing things like creating pheromone trails. This makes it easy to do things like build an ant colony and watch it explore for food and create trails to the food for other ants to follow.

      Incidentally, the ant colony code only uses thirteen procedures, each one no more than five or six lines of code. Here's a sample:

      to find-food-demon
      if (not carrying-food?)
      and ask patch-here [food > 0]
      [set-carrying-food? true
      ask patch-here [set-food food - 1]
      set-drop-size 35
      right 180 forward 1]
      end
      This defines the way an ant finds food. Essentially, if it's not carrying food it checks the ground to see if there's any food there (ask patch-here). If there is, it sets itself to carry it and reduces the amount of food on the ground by one unit. The line set-drop-size sets the initial magnitude of the pheremone drop. There's another demon (return-to-nest-demon) that takes over once the ant gets food. It's responsible for following the pheremone gradient back to the nest and to mark the trail to the food by decreasing the food pheremone with each step back to the nest. That way the food pheremone will be strongest near the food, causing the hungry ants to go in that direction.

      One of the other interesting parts of the book, Turtles, Termites, and Traffic Jams is the author's descriptions of the kids that he works with. He takes StarLogo into grade schools and gives the kids problems (like the ant problem, or a traffic jam modeling problem) and watches them solve it. All in all, it's an excellent book and I highly recommend it.