Question

I'm looking for an implementation of the LOGO programming language that supports 'dynaturtles' - animated turtles that can programmatically change shape, speed and direction as well as detect collisions with each other or other objects in the environment.

Back in the mists of time when the earth was new and 8 bit micros ruled supreme, Atari LOGO did this famously well. One could create all sorts of small games and simulated environments using this technique very easily as that implementation of the language had a very well thought out, elegant syntax.

I know about LCSI's Microworlds but I'm looking for something I can use to get some friends and their kids involved in programming without breaking my budget.

Was it helpful?

Solution

Digging around a bit online, I've found OpenStarLogo. Though they don't specifically mention "dynaturtles" the docs do mention collision detection. The site has code and documentation downloads.

From this wikipedia article, under the Implementations section, there is a PDF listing known current and antique implementations. Some of these, such as StarLogo TNG and Elica have support for 3D objects. These are definitely not like the LOGO programs I wrote as a kid...

OTHER TIPS

I use microworlds for my logo... I know of kturtle for kde kturtle I also found a few links that could be interesting
python turtle
fmslogo
MSWlogo

Check out the turtle python package. It is in the standard python distribution and it supports a graphical turtle interface.

If you use win-logo (www.win-logo.de/eng/e_index.htm; you must register and then you can try for 30 days), you can practise this code (german version Nr. 2):

PR test
   ;* #####  Startdatei  ######
   SETZE "sprung.x" 0
   SETZE "sprung.y" 0
   flug
ENDE

PR flug
   sprung
   tasten
   flug
ENDE

PR sprung
   SETZE "sprung.x" :sprung.x + (SIN KURS)/2
   SETZE "sprung.y" :sprung.y + (COS KURS)/2
   AUFXY (XKO + :sprung.x) (YKO + :sprung.y)
ENDE

PR tasten
   SETZE "t" TASTE
   WENN :t = "d" DANN LI 30
   WENN :t = "e" DANN DZ "Abbruch!" AUSSTIEG
   WENN :t = "f" DANN RE 30
   WENN :t = "h" DANN sprung
   tasten
ENDE

OK? Greetings. Michael Kraus

Two additions to my post of yesterday, concerning LOGO-procedures with dynaturtle:

1.) the key "d" is NUM 4

the key "e" is NUM 5

the key "f" is NUM 6

the key "h" is NUM 8

2.) After hitting "e" = NUM 5 to stop the recursive procedures, you have also to click the exit-button. - I have tried to find out why, but I have no idea.

Michael Kraus

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top