The History of Programming Languages and Personal Thoughts on them

Why did we move from punch cards to programming languages? What does that tell you about the purpose of programming languages?

To understand why we moved from punch cards to programming languages, we must first understand what punch cards did.

Punch cards were essentially pieces of card with holes in them at specific places representing instructions to a computer.

These cards were small and so could only have so many holes, limited storage space, so to give a long set of instructions, one must make

many punch cards in sequence which takes a lot of space. Furthermore, if there was one small error in the holes made, it would be

very hard to find as there would be many cards to look through, and so making it time-consuming.


To counter these many issues of transferring instructions to a computer, the first programming languages were created. These

programming languages allowed the programmer to code the instructions and data to be given to the machine relatively quickly, consuming

very little space, as well as being able to debug more effectively.


There are hundreds of different programming languages out there. Why do you think we need so many?

As programming languages were created and introduced, there was a difference between high-level programming languages and low-level

programming languages. High-level languages are similar to human language and so more problem solving, and logic based, whereas

low-level languages were closer to simple bits and machine code and so more technical. Because of these differences, as well as the

fact that each language was built with a different method of solving problems (one being mathematical, another more abstract) as well as

some being general and others being specific to one task. Many programming languages needed to be created to suit all these various

needs of the programmers.


What are some drawbacks of a programming language you use? How would you like it to be different? Think of specific examples.

I mainly use python as my main language; however I have encountered two issues with it so far. One being related to creating and

reading databases, something SQL can do quite easily. To counter this issue there is a library that can be downloaded and imported

called MySQL, now this library is nice but it’s for smaller projects and not quite as straightforward as SQL alone, so I wish

that python had a built-in database management system though I understand that can be complicated.


Another issue with Python compared to other languages such as C is that it is high-level and so it has a way higher runtime with a

lack of ability to manipulate the core of a computer as easily as other languages or even manage memory like C++. I would hope that

python rather than just implementing it as a part of itself, it’s better to create a library for these syntax with good documentation

documentation to allow it to be a universally used language in all contexts.

If you were going to create a new programming language, how would you start? What do you need to define?

The first step would be to create a plan for the new programming language. Outline what its goal will be, whether it will be high-level

or low-level and if it will be specifically catered for one task or rather a more general language. Will I make it easily readable and

debuggable or more optimized for only speed and efficiency? These are things I will have to take into consideration. Also, looking at

other languages, especially newer ones so as to gain some inspiration from them. In contrast to newer languages, it would also be a

good idea to understand how the first programming languages were written so as to understand the core idea behind them.


Next would be to begin attempting to create each part that makes up a language, its syntax, commands, comment method,

variable types and so on, and then, most importantly, a compiler to put all the written code together and allow it to run.

Go back