Assignment 3: PL Research
Why did we move from punch cards to programming languages? What does that tell you about the purpose of programming languages?
The problem with punch cards was that they were too slow and demanding to use. The purpose of programming languages was to make coding easier and more user-friendly, which they successfully accomplished.
There are hundreds of different programming languages out there. Why do you think we need so many?
Different programming languages are good for different things. For example, Assembly is for the lowest possible level of programming, C++ is fast and efficient, Python is easy and user-friendly.
What are some drawbacks of a programming language you use? How would you like it to be different? Think of specific examples.
One of the languages that I use is Python. Its main drawback is that it's not very efficient compared to other languages like C++. Also, Python is primarily an interpreted and not compiled language, which means that you often don't know possible errors and mistakes until you run the code, which is often extremely annoying. Apart from that, I'm a fan of statically typed languages, and Python is dynamically typed, which sometimes can lead to unexpected behaviour.
If you were going to create a new programming language, how would you start? What do you need to define?
I believe that it is extremely difficult to make universally "the best" programming language. In my opinion, what makes a programming language powerful is that it's primarily designed for specific tasks and aims to be the best at them. Hence, I would first define its goal and primary use. I would also make a clean syntax for it and clear documentation. And I would make it a compiled language.