Friday, January 16, 2026

HCW - 3.10 - coding - HLL Logo

HCW - 3.10 - coding - HLL Logo

We have talked about machine language and assembler.  No, I haven't taught you, at least not all the way, how to program in these languages.  But these are the languages which, at its most basic level, explain how computers work.  (Computers work by doing tiny, simple things.  But they do them reliably, and very fast.  So you can do a lot of them in a short space of time.)  These are known as low level languages.  That means that you are as close to the actual workings of the computer as possible.

But, of course, you have heard about programming languages.  If you were at all interested in them, you will have heard about lots and lots and lots of different programming languages.  There are even different kinds of programming languages.  These are all high level languages.  There are interpreted languages, and compiled languages.  There are procedural languages, functional languages, fourth generation languages, object oriented languages, and many, many, many others.

And every single one of them falls into only *one* category of what computers actually do.  Database management.

All of the higher level languages, every single one of them, is just a database that takes the commands of those higher level languages, and turns it into the appropriate collection of machine language opcodes.  That's all they do.

So, how do you choose which language to use in any situation?  It really doesn't matter.  Some of these languages are better, or easier, when dealing with certain types of functions than others.  Very often a language has been specifically written because somebody got tired of the work that they had to do in writing the same type of function, over and over again, and so decided to create a new language to make it easier to address that particular type of function.  That is basically how all higher level programming languages get invented.  So, generally speaking, the best choice of programming language is the language that is being used by the people who are doing the same type of thing as you want to do.

If you want to learn how to program a computer in a higher level language, all by yourself, then simply get a language, and search for some lessons on the Internet, and start doing it.  That's all there is to it.  Try and find a language that you can download and install on your computer for free.

If you want a specific recommendation for a computer language to get you started to learn how to program a computer, then, yes, I do have one specific suggestion.

Logo.

You probably have never heard of Logo.  If you *have* heard of it, you have probably heard of it as a programming language for kids, or for use in schools.  And it is.  In fact, if you have any children in your family, or in your life, who are at all interested in learning how to program computers, then I would suggest that you help them to get started with Logo.

The thing is, Logo is not simply, or only, a programming language for kids.  Logo is a full and complete programming language.  It can do basically anything that any other programming language can do.  In fact, it is based on, and is itself, an artificial intelligence language.  That is, it is a language which you can use to program artificial intelligence programs.  It is a program which will allow you to build artificial intelligence systems.  It's easy enough for kids, but it can do way more things than kids initially want to do.

One of the things that makes it easy in terms of learning how to program is that it has some very easy graphics functions.  If you explore the graphics functions, and if you do some research on the Internet in order to find out how to program the grass graphics functions, you will probably see references to the turtle, or possibly turtle graphics.  On your computer, the turtle is a reference to the triangular pointer on the graphics screen.  But, in fact, a number of versions of Logo have connections to robotics.  Logo was also intended to be used for robotics, with a little robot, that looked very much like a Roomba, where the Logo commands could be used to write a program that would trundle the turtle around in various shapes on the floor.

So, like I said, Logo is a pretty good start in terms of learning how to program.  It's easy to start out with, with the graphics, it's fully functional, you can use it to build artificial intelligence systems, and you can even use it to build robotics systems.  Pretty advanced.

(For those of you who think that "virtual" meetings are really cutting edge technology, forty years ago I set up and managed the technical side of the world's first fully integrated hybrid conference.  It was about Logo.)

And you can even teach kids who can't read yet how to use it.  Most of the graphics commands have two letter abbreviations, which is easy enough for the kids to learn and memorize.  Using Logo to teach kids how to program the computer is probably also pretty good preparation to get them ready to learn how to read.

No, I'm not going to teach you how to program in Logo.  As I say, an awful lot of you don't want to learn how to program a computer, and I don't believe in setting exercises to program to learn how to program in Logo anyway.  Part of the point in using Logo to teach kids how to program a computer is that they learn how to program a computer simply by playing around with it.

(In terms of education, Logo is part of what is called "discovery learning."  About fifty years ago, the people who were big on Logo were annoyingly vocal about the benefits of simply letting kids fool around with it.  I didn't really believe all the hype, but I got an opportunity to try it out one time.  And it really, truly, works!)

So I will teach you how to get it and explore it.

There are a number of versions of Logo that you can buy.  I don't see anything wrong with any of them.  However, I don't really see the need to pay for something that you can get for free.  There is a free version of Logo, if you have a Windows computer available here. If you have a Mac computer, there is a version there are a couple of versions available here and here.  However, I can't really recommend them, not because I think there's anything wrong with them, but simply because I never have downloaded and installed them on my (one) Mac computer, so, you're on your own as far as taking the risk of downloading software from somewhere.

But there's another option.  Probably a safer option, and probably easier for you to try.  These two websites here and here will let you run, explore, and learn Logo regardless of what computer you have.  They are websites, and the Logo program runs on those websites.  So you are not actually downloading anything.  And, regardless of what computer you have, as long as it has a web browser, you can use these websites.  You can use these websites if you have a Windows computer, or if you have a Mac computer, or if you have a Linux machine, or if you have an iPad, or if you have a tablet, or if you just have a cell phone.  Of the two, this particular one has a reference to the logo programming language actually on screen, so that might be the choice that you might prefer initially.  However, just simply looking up "Logo programming language" in a search engine will find you lots of sets of instructions, lots of discussions, lots of videos showing you how to use the program, and lots of sites where you can get instructions on all of the commands in the language.

So, it's up to you.  If you want to learn how to program, start searching up about Logo, and just start playing around with it.  That is how people learn to program computers.  They get a programming language, and they want to do something, and they figure out how to do it.  Anybody who says anything else is trying to sell something to you.


Next: TBA

No comments:

Post a Comment