History of Logo (2020) [pdf]
escholarship.org
escholarship.org
Here's an example of it in action: https://www.youtube.com/watch?v=NdpTVAx6AU0
You can even move the box around to see things from any arbitrary direction and distance.
It's mentioned in the document, but it doesn't get into what makes NetLogo as interesting as it is.
Also, I love this story:
"A story Paul Goldenberg recounts from the early days of Logo is that one day a child typed the command love and got the response
love has no meaning.
The child tearfully reported this to Paul. The next day that error message was changed to
I don’t know how to love"
$ python
from turtle import *
color('red', 'yellow')
begin_fill()
while True:
forward(200)
left(170)
if abs(pos()) < 1:
break
end_fill()
done()
In case, like me for years, you didn't know it was there...LOGO itself makes a lot more sense than Python as an introduction to computer programming. (It has some real misfeatures, but the paper discusses at least one of them at length - namely dynamic scope, which basically endows each program binding with its own independent "stack", instead of featuring a single stack of activation records as in most programming languages - and concludes that it may make the language somewhat friendlier to newcomers.)
- BBN's PDP-10 Logo
- CLOGO
- PDP-11 Logo
- Lisp Logo
- Apple II Logo (cross assembled on ITS)
Here's the closest I got, but it's not pretty
!pip install ColabTurtle
from functools import partial as f
from ColabTurtle.Turtle import *
initializeTurtle()
def repeat(n, *commands):
for _ in range(n):
for command in commands:
command()
repeat(5, f(fd, 80), f(rt, 144)) !pip install ColabTurtle
from ColabTurtle.Turtle import *
initializeTurtle()
def repeat(n, *commands):
for _ in range(n):
for command in commands:
fn, *args = command
fn(*args)
repeat(5, (fd, 80), (rt, 144))