Programming Languages

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

Punch cards are pieces of paper that can be punched in specific parts to communicate a programming language with a computer. They are no longer in use now because they store very small amounts of data in huge piles of cards that take too much space. Also, if a pile of cards was dropped by accident the whole program is gone, and it would take weeks to get it back in a working state. They also are susceptible to things like that may destroy any piece of paper like fire or bending. Programming languages offer a way to communicate instructions with the computer digitally which is a lot safer, quicker and more efficient.



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

The first reason why we need so many programming languages is that technology is always evolving, and so many problems arise with the advancement of technology. Some of these problems might be so complicated that our current programming languages cannot deal with them, so we create new programming languages to solve these problems.

Also, different development tasks and jobs require different programming languages. For example, web development requires HTML, CSS and JavaScript, while Game development requires C or C++ and so on. Further, depending on the goals of the project and its requirements we would need different programming languages, so in some cases an easy programming language might be needed, while in other cases speed might be the priority, and that is why so many programming languages exist.



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

Python is an easy to learn programming language with very simple and understandable syntax, but this comes with some drawbacks. The first drawback is that it is much slower than other programming languages because of it being a high-level language, which also causes high use of memory. Another disadvantage is that Python is not a good tool for developing mobile and web applications. It would have been really nice if such an easy programming language was good enough for creating mobile and web applications.



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

I would start by determining what is the use of this programming language. This helps decide whether it is going to be an interpreted or compiled language. And also I have to know what syntax to use in this language and how to translate this syntax to machine code. I might also have to choose an existing programming language to use in developing my programming language!

References

Disadvantages of Python. (2021, July 29). GeeksforGeeks. Retrieved August 30, 2022, from https://www.geeksforgeeks.org/disadvantages-of-python/

Lagutin, V. (2021, September 14). Why Are There So Many Programming Languages? freeCodeCamp. Retrieved August 30, 2022, from https://www.freecodecamp.org/news/why-are-there-so-many-programming-languages/

Phillips, C. A. (n.d.). Punched card. Wikipedia. Retrieved August 30, 2022, from https://en.wikipedia.org/wiki/Punched_card

What is a Punch Card? (2021, February 5). Computer Hope. Retrieved August 30, 2022, from https://www.computerhope.com/jargon/p/punccard.htm

Sarissa theme designed by iozcelik

Mohamed Elzeni

Computer Science freshman at CMU-Q