Initial Programming Language, The Simplicity Of Home Computer BASICs Running On Windows

Programming For Beginners

Stylised IPL screen shot
The Initial Programming Language, is a Windows XP (or later) based product intended as an entry level programming language for use at home and in educational environments.

I know that XP is a blast from the past but it was a game changer in that it changed Windows from a presentation layer to a real operating system.

Although designed for the beginner, it can do more than you might expect.

Most programming languages for Windows are quite daunting to start out on as they require the programmer to understand the idea of the Message Queue. IPL bypasses this stage allowing programs that look very similar to 1980s BASIC.

The other big problem when learning programming is not only do you need to know what command you want to use but also exactly how the command should be structured, imagine that you want to draw some text on the screen.
DrawText 10,10,20,20,"Some Text",Left,Opaque
I think the most people will recognise the purpose of the above command, but are the values for the area to draw the text in; top,left,bottom,right or top,bottom,left,right, or is the correct layout
DrawText "Some Text",Left,Opaque,10,10,20,20
Learning the exact order is necessary but also sort of pointless and is a big stumbling block especially if you are working by yourself with no one to ask.

Which Programming Language Should I Learn First - Initial Programming Language?

The dialog for drawing text Unlike traditional programming languages which allow you to type whatever you want and then complain about it later, Initial Programming Language uses Dialogs for every instruction allowing you to quickly achieve results.

Despite the use of dialogs it is not a drag and drop type language with limited capabilities, one of the example programs is a space invaders type of game.

The Windows Message Queue, What Is This?

Icons representing the section If you are an experienced Windows programmer then you will know about the Message Queue and Messages such as WM_PAINT, WM_MOUSEMOVE etc.
The message queue is the biggest difference between programming under Windows and programming on a home computer in the 1980.

Instead of the program asking for input or deciding to redraw the screen Windows tells you that you a key was pressed or the mouse was moved, this means that a normal Windows program looks very different and has a lot of "plumbing".

The Initial Programming Language doesn't expose the Message Queue, instead the really important messages are handled by what we call Sections.

The messages handled are paint, mouse movement, buttons up and down, key down, char and finally timer expired, these turn out to pretty much all that you need.

Things like window resized just get safely discarded, but when you get to the point of caring about them it is probably time to move onto another language.

Download And Purchasing

Item Size Release Date Link Description
IPL Interpreter 3MB 13 Nov 2020 IPL V1.26 Create, edit and run IPL programs - Released 13 Nov 2020
Visual C++ redistributables 15MB Third Party Visual C Redistributables Microsoft's files that are needed to run programmes created with Visual C++, most recent pcs will already have these. If IPL complains about them missing then you will need to download these files from Microsoft, VC_redist.x86.exe.

These are separated out to reduce the download size for most people.

  IPL is sort of free but it is copyrighted, you may download and use it with a donation requested but not required.


Downloadable IPL Programs

Item Size Release Date Link Description
Ghost Game 1MB 13 Nov 2020 Ghost Game The Ghost game shown on
Money Manager 1MB 13 Nov 2020 Money Manager A tool to help young children learn how to manage money

This program expects to be installed to the folder \ProgramFiles(x86)\IPL\samples.