Logo Programming Language

(media.mit.edu)

181 points | by azhenley 2 days ago

52 comments

  • yogsototh 3 hours ago
    I myself learned programming with logo, at my school when I was 8 or 10. And it was a delight, I am so grateful it existed.

    But quite surprisingly, when later during my Ph.D. part of my time was dedicated to give exercises to students. And we used logo instead of the more usual programming languages. And I think it really helped them to really internalise programming a lot better. Typically, the latest exercices introduced recursion which is immediately visible as fractals.

        HIDETURTLE
        
        PENUP
        SETXY -200 0
        RIGHT 90
        PENDOWN
        
        to dragon :degree :size
            setpensize 1
            if :size>5  [setpensize 2]
            if :size>10 [setpensize 3]
            if :size>20 [setpensize 4]
            if :size>40 [setpensize 5]
            ifelse :degree=0 [
                fd :size
            ][
                left  45 dragon (:degree-1) (size/4)
                right 90 dragon (:degree-1) (size/2)
                left  90 dragon (:degree-1) (size/4)
                right 45
            ]
        end
        
        dragon 6 3000
    
    
    if you want to give a try :)
    • gregsadetsky 7 minutes ago
      small correction - use `:size` in the three lines near the bottom (rather than `size`)

      I tried it on https://www.calormen.com/jslogo/ and saw this small typo

      cheers!

      p.s. same as you, I was introduced to Logo around the age of 8 and I remember writing programs on paper when I was home, stepping through them line by line... it was inevitable I'd gravitate towards programming, ha :-)

    • xtracto 1 hour ago
      I was also introduced to computer programming using LOGO back in 1989. I remember drawing houses and stick figures in it.

      Fast forward around 2010, I gave Agent Based Simulation workshop courses to PhD students using NetLogo , which at the time was very popular in the Social Sciences.

      It was very interesting to teach programming to non-tech very intelligent people. Some of them came up with really cool simulation ideas. I loved that part of my career.

  • vilius 18 minutes ago
    It’s 1998, I’m 10, it’s a gloomy autumn morning, in Klaipeda (pop. 200k), Lithuania, eastern Europe. I’m at school. Informatics class. Never touched a computer before.

    The computer is running windows 95. The teacher starts Logo and I see that turtle in the middle of the screen. She explains how to make it move.

    And I start typing my very first code.

    It’s lisp based. Took me 28 years to learn that. Now I think I need to finish the job and pock up lisp.

  • Bankq 4 hours ago
    I'm forever grateful for having the access to Logo programming in early 90s, as a kid from a 3rd world country, for how it leads to where I am today.

    My first ever english word that I can spell out is REPEAT.

    • mauvehaus 4 hours ago
      In the early nineties in elementary school I lived in Belgium, and went to a summer camp where we programmed with Logo in a localized French version.

      I had played with Logo on Apple IIe's in the US, and thought it made sense that in a French-speaking region[0] they'd have a French version. I relearned what little I already knew, but regrettably, this did not help greatly with my French skills.

      All I remember from this is that `hazard' was the random built-in. Dunno why that's stuck, but there's probably some more important bit of information that should be in my brain if that weren't.

      [0] Yeah, yeah, I know French, Flemish, and German are the official languages. I was in a French-speaking part.

    • yurimalheiros 4 hours ago
      Me too. It was one of my first experiences with programming languages back in elementary school in Brazil.
  • ihumanable 6 hours ago
    I still remember when we learned logo in elementary school. I had to get my mom to go out and buy a 3.5" disk so I could save my programs.

    When I realized that all of logo was actually saved on that disk and I could continue playing with the turtle at home, I was amazed.

    Drawing little things, realizing that I was repeating stuff and breaking it into little functions so I could draw them again more easily. I was learning the essentials of programming and didn't even realize it.

    • astrobe_ 3 hours ago
      Also as a child, I was amazed by the associative tables it offered; I thought "I can make intelligent programs". I think I was thinking AI but I won't trust my memory on this. But I played a lot more with the turtle.
    • Xirdus 5 hours ago
      We had it (or one of the clones) in middle school, but it was a demo version that had saving disabled. Half of each class was messing with the turtle. The other half was writing down the code with pen and paper so that we can have it graded.
    • reaperducer 4 hours ago
      I remember learning LOGO in school. There was a single 4K computer for the entire school, so we learned how to program by calling out turtle commands to the teacher who would draw the results with a marker on a sheet of plastic on an overhead projector.

      At the end of that exercise, the accumulated commands would be taken to the computer (in another part of the school) and entered into the computer, and eventually we'd get a plotter printout showing the results.

      Those early days of computing feel like we were like being on another planet.

  • briandw 4 hours ago
    Logo was created by by Seymour Papert. I highly recommend his book Mindstorms: https://en.wikipedia.org/wiki/Mindstorms_(book) It was written in 1980 but could have mostly been written today. All the same issues with teachers misunderstandings and fear of math and technology and refusal to change to meet the challenges of the age.
    • jecel 1 hour ago
      The first line of https://en.wikipedia.org/wiki/Logo_(programming_language) is "Logo is an educational programming language, designed in 1967 by Wally Feurzeig, Seymour Papert, and Cynthia Solomon." so you are correct but it is nice to mention his co-inventors. I agree about the book. I had to borrow it from a friend, read it quickly and give it back in 1983 so my memories of it are a bit fuzzy.
    • dofm 3 hours ago
      I believe it is legally available as a PDF — as far as I remember via the ACM?

      Very important book.

  • lackoftactics 6 hours ago
    I didn't win logo programming competition in polish equivalent of 7th grade and I am still salty about it
    • Tade0 5 hours ago
      I learned the Language through examples because the version provided by the school didn't have documentation and in 00s Poland internet was still relatively rare.

      I... participed in the competition, but that's all.

      • lackoftactics 5 hours ago
        same problem, it wasn't exaclty the best experience with first programming language
    • knome 4 hours ago
      ha. 4th grade for me, though I'm more amused than salty about the affair. who's ever heard of 'recursion'? honestly.
      • lackoftactics 4 hours ago
        tbh, sounds like a made-up term coined by someone who could go on and on
  • maxrev17 18 minutes ago
    I used to get in trouble for making it play various noises of increasing hilarity via the inbuilt speaker . Always in bother but learned a lot and lots of fun!
  • kdavis 3 hours ago
    Kicked off so many memories...

    Early 80's I learned Logo and Basic at a local store that sold Apple computers. It was called "The Logical Choice" and had a classroom tucked away behind a false wall and an English Sheep dog "Sir Isaac Newton" that would hang around the store!

    Nice, I just found a story on the store, page 5 of [1].

    [1] https://mirrors.apple2.org.za/ftp.apple.asimov.net/documenta...

  • turtlegeometry 4 hours ago
    This is on top of HN right now, and there is still nobody who has mentioned the fact that the tier-1 book Turtle Geometry <https://direct.mit.edu/books/oa-monograph/4663/Turtle-Geomet...> , is in open access.

    Do yourself a favor, and read it today : it is that good. Even though it is quite depressing to see that the revolution in education that the book was predicting in its preface, simply never happened.

  • msarnoff 2 hours ago
    LCSI LogoWriter for 68k Macs[0] was my shit. It was my first[1] introduction to programming in elementary school and I spent hours trying to make games with it. There were 4 turtles and you could treat them like sprites; you give them custom shapes and colours, and there were basic collision detection primitives. You could also check for collisions with the background by querying the colour under a turtle. You could play and record your own sounds... spent so much time with that little round Apple microphone[2] recording goofy sound effects.

    [0] https://www.macintoshrepository.org/6717-logo-writer-2-0

    [1] technically I had used the Apple II version a couple times first

    [2] https://applerescueofdenver.com/products-page/macintosh-to-p...

  • corysama 6 hours ago
    Logo was my introduction to programming. Working on a 1 MHz Commodore64, my masterpiece was a fireworks show that was animated by the fact that the individual drawing commands were so slow you could watch them play out.

    So, draw a curve from the ground to the sky. Draw some explosion shape. Change pen color to the sky color. Draw the curve and the explosion again to erase them. Change pen color and start the next firework.

  • consumer451 4 hours ago
    Anyone here remember a 1980's Logo-programmable robot that I once used in a TAG program? It had a pen, we would lay it on top of a giant sheet of paper.

    It was like a little futuristic tank. I searched for a minute, and I cannot find the exact model. Did I imagine this?

  • kccqzy 3 hours ago
    As a child, I really enjoyed Logo. It appeared as a sidebar on a math textbook about angles and line segments. I studied it like I studied everything else in the textbook, but I didn’t immediately realize it was a programming language, a means to control a computer. Fast forward a few years in elementary school, when the teacher actually began to teach Logo with all students in front of a computer, it was such a profound revelation for me.

    During the second Logo class, the teacher set up a competition. A prize was to be given to the student who could first plot an equilateral triangle, a square, a regular pentagon, a regular hexagon, etc, up to a regular icosagon. I won the prize because I wrote formulas to make the computer do the angle computation. I was so so proud of myself compared to my classmates who were computing angles with pen and paper. It felt like the first inkling of the power of automation.

  • dofm 2 hours ago
    Logo is a real surprise if you revisit it as a grown professional. Remarkably elegant language.
  • thought_alarm 4 hours ago
    This on-line version of Logo is pretty great: https://www.calormen.com/jslogo/
  • mschaef 5 hours ago
    Back in 1983, my elementary school was a part of a Logo pilot program. We had a lab of Commodore 64's that I had free run of (my mom was a teacher there), and it's why I do what I do all these years later.

    What I find interesting it that it's not just programming, specifically. Logo is a highly interactive and dynamic language (a relative of Lisp), and that influenced the way I think about writing code. Seymour Papert did a lot for me, albeit highly indirectly.

    https://mschaef.com/c64

    • r2ob 5 hours ago
      Logo was my first contact with computer (pc 386)
  • Havoc 2 hours ago
    Didn't notice it as a kid but Logo is an absolute masterpiece if you think about raw impact on the IT world.

    70 comments here and they're basically all positive about Logo being formative

  • nsoldiac 4 hours ago
    They taught us Logo at school in the early 90s in Lima, Peru. I'll never forget the aha moment of going from "forward 10, left 90" to "repeat 360 [forward 1 right 1]" and bam a circle! They had us bring a formatted 5in floppy disk (they were indeed floppy) to our first class; what was this sorcery?
  • Duanemclemore 5 hours ago
    When I was seven I wrote my first program. It was in Terrapin Logo and evenly tiled the monitor of my elementary school's Apple IIe with hexagons.

    It's been all downhill since.

    • jasperry 3 hours ago
      Very similar to my story. Sometimes I feel sad that I'll never know who was the enlightened administrator in my humble district who somehow got my elementary school an Apple computer lab with Logo in 1983, and that they'll never know what an impact it made on my life.
    • JSR_FDED 5 hours ago
      Turtles all the way down?
  • Angostura 1 hour ago
    There was an excellent fully featured version of Logo for the ZxSpectrum that got me hooked.

    Came for the graphics, stayed for the recursion and string handling

  • haunter 5 hours ago
    This has to be one of the most widely ported language of them all because there are countless implementations https://en.wikipedia.org/wiki/Logo_(programming_language)#Im...

    310 versions!! https://pavel.it.fmi.uni-sofia.bg/logotree/pdf/LogoTree.pdf

  • animateus 6 hours ago
    Oh my god - Logo, brings back memories of my childhood and my first "microcomputer": ZX Spectrum +. I spent countless hours trying to force the damn turtle to draw shapes I wanted it to. Unbelievable that this language is still alive.
    • fipar 5 hours ago
      Same for me but on the Spectrum's illegitimate South American cousin, the TK-90X :)

      The language is still alive but I think Scratch has mostly taken its place.

  • stusmall 5 hours ago
    Logo started my love of programming. I will always be thankful for it and that little turtle. IIRC there was a limit of 128 stamps in LogoWriter and my sister and I would fight so much about it.
  • HexDecOctBin 4 hours ago
    I learnt that I must be good at computers when in 4th grade, despite never having touched a PC before, I not only managed to ace my Logo class but was asked by my teacher to help out other struggling students (I am just realising that essentially made me a TA in our class). I still remember trying to understand the Pen Up and Pen Down commands from a book with no immediate access to a PC to try them on.
  • timbert 4 hours ago
    I have fond memories of using Logo on my dad's Apple ][ back in the 80's. Glad to see others feel the same!
  • mariasykk 2 hours ago
    Logo is in my heart forever. The first PL I was introduced to and made me love programming for life. It was MSW Logo if I’m not mistaken and that turtle was a lot of fun.
  • invader 2 hours ago
    I consider Logo an undeservedly forgotten technology that showed the world a glimpse of what computerized education really is, and Seymour Papert is a misunderstood genius ahead of his time.

    The whole point was a very visual way of learning with immediate feedback, where you build stuff in order to understand it.

    Papert based his own ideas of constructionism on children's cognitive development theories of Jean Piaget, a famous Swiss psychologist with whom he worked in the 50s - early 60s.

    Logo pioneered a whole class of tools and languages built around constructivist ideas (e.g. Ozobot, Scratch, EToy, Processing, Design by Numbers...) and I hope these ideas will not be totally forgotten in the era of slop, when people prize ignorance and no longer seem to appreciate the concept of "build to understand".

  • mococa 6 hours ago
    I learned how to program (& do CAD) with LOGO when I was 8 y'old.
  • Imzadi72 2 hours ago
    I'm not going to thrash my first programming language, but do "kids" nowadays start with Scratch or something like that?
    • tialaramex 2 hours ago
      I think a lot of children are shown Python or one of the Python-like languages.
  • derac 4 hours ago
    One of the first interesting programs I made was LOGO in flash (actionscript) :D It's a great tool for learning basic programming since it's interactive, graphical, and simple.
  • wooperville 6 hours ago
    The majority of GenX programmers I know learned logo in the 70s and early 80s. Such a great introductory language.
    • joeypickles 5 hours ago
      Yeah, somehow I owe my entire software engineering career to that flower and garden program example. There was something about being able to add new words based on primitives, and new words based on custom words, that captured me for good.
    • countrymile 4 hours ago
      I'm currently writing a history of this. What year in the 70s? I've struggled to find widespread logo use before the end of the 1970s.
  • tshapedrob 5 hours ago
    Berkeley Logo was one of my first programming languages. The idea of declaring functions with the keyword “to” still feels like a fun and good idea, even though of course it doesn’t matter. Just a different perspective.
  • juancn 4 hours ago
    Logo in Spanish in a C128 when I was in third grade started my journey in software.

    After a while I was running laps around my teachers and I knew computers were for me.

  • spike021 4 hours ago
    Logo in either elementary or middle school in the early 00's was my first experience writing any code. Good times.
  • whobre 5 hours ago
  • lormayna 4 hours ago
    I remember one of my professor that created a map of all Italian regions in logo. It was probably 1992.
  • mgkimsal 2 hours ago
    Logo unit testing supports a mock turtle.
  • dr_kiszonka 3 hours ago
    So I know a Lisp dialect? Fascinating.
  • larodi 3 hours ago
    SVG paths are basically LOGO programs.
  • unlux 4 hours ago
    this is so nostalgic. I remember going to my School's Computer Lab and trying to draw circles and then later some stars and stuff. so cool
  • cdaringe 4 hours ago
    I can’t read this website. The white text has insufficient contrast in the menus and the lightweight text is too thin!
  • agumonkey 5 hours ago
    iirc logo had lambda and recursion, which means a lot of kids in the 80s were that close to become lispers
    • Jtsummers 5 hours ago
      Logo was directly inspired by Lisp and the first implementation was even written in Lisp.
  • mezzman 5 hours ago
    It's turtles all the way down
  • arnavpraneet 2 hours ago
    my first programming language!
  • Towaway69 5 hours ago
    Not to be confused with NetLogo ;)

    https://www.netlogo.org/

    • Night_Thastus 5 hours ago
      Are they totally unrelated?
      • Jtsummers 4 hours ago
        NetLogo is its own language, but definitely inspired by and modeled on the original Logo (thus the name). But it has some differences in syntax and semantics, and is oriented toward agent based modeling (which also introduces some new syntax and semantics).
  • dbg31415 4 hours ago
    Logo was the first programming language I ever learned. I was in third grade in Seattle, Washington, around 1989, and I absolutely loved it. Looking back, not hard to see that it was responsible for sparking a lifelong love of technology and programming.

    TThe only reason we got to learn it at all was because one of the daycare workers was a graduate student at the University of Washington. She somehow got permission for any of the kids who were interested to use the school's computer lab. Which, I think, took some doing on her part.

    Back then, computers were treated like sacred objects. They made a huge deal about kids using them. The whole first week of the class was basically some grumpy old guy with a white beard telling us, "These are not toys! These are expensive machines!"

    We had to wash our hands before we were allowed into the computer room. The old guy would literally "hand check" us at the door. You had to hold out your hands and show him that they were clean before you were allowed anywhere near the computers.

    Logo was a lot of fun. We had a competition to see who could draw the coolest thing. Just like foundation for a "hackathon" really. Every day, "OK, Kids, you have 30 minutes, let's see what you can do!" Was a lot of fun.

    I had to ask my mom for a floppy disk. "Mom, I need $5 for class supplies..." And then I had to explain that it was for a computer disk... and she had to call the school to make sure I was getting the right thing... even though I told her 100 times that I needed an un-formatted 5.25" disk! Ha.

    Anyway good memories here. Logo and HyperCard were gateway drugs.

  • cmrdporcupine 4 hours ago
    We used Logo on Apple IIs quite a bit in the 80s but I don't have fond memories because Logo is one of those things that at the time when using it one had no idea (and neither did the teachers teaching it) that there was something of much more substance behind it than just drawing lines and circles on the screen. Which was frankly kind of boring. We'd get as far as simple procedures but that's it.

    There's a whole Lispy beauty behind the language that teachers didn't know how to transmit to the kids because they themselves didn't understand it. The emphasis on turtle graphics was limiting.

  • jedberg 2 hours ago
    [dead]
  • the_homeless_go 5 hours ago
    [dead]
  • spider-mario 5 hours ago
    Could we please not make text light grey on white? It’s just barely AA compliant when bolded.

    https://snook.ca/technical/colour_contrast/colour.html#fg=96...