Chapter 2: Semicolon Wars | The Phantom Menace.

This time´s reading was "Semicolon wars". While the title was a "little" misleading, the concept was the same; how languages that has the same goal, has huge differences between them. First notable difference are their classification branches, such as imperative; built on commands, functional; modeled on the idea of a mathematical function, object-oriented; ideal to bind together imperative commands and the data they act on, and declarative; known for stating facts or relations. However, in each classification exists disparity amongst them.



It´s incredible how, in just 50 years, 8,500 diverse programming languages were created, and until today, we still don´t know the best notation for expressing an algorithm or defining a data structure. But it doesn’t stop there, small syntax preferences are also controversy topics, such as CamelCase, snake case, and the possibility of nested comments (I personally use CamelCase).

I loved what the author stated at the end. “I write programs in Lisp for the same reason I write prose in English—not because it’s the best language, but because it’s the language I know best.”. I would say I use Java, or use C#, but it all depends on the language I have used the most before I write something.

For example, before I used Unity (Gaming engine), all I tried to code was in Java, however, Unity made me use C#. Using it for a while made me prefer programming in C# after that, because of me getting used to it and losing practice with Java. Maybe after this class I would prefer Clojure, or even Lisp. Or with my other courses I could transfer to C++, JavaScript, or who knows where I´ll end up. The thing I like (and dislike at the same time, honestly), is that I will be programming in multiple languages during the course, and as much as I hate being brought out of my comfort zone, I will expand my knowledge to different languages and paradigms all over the semester.

References:

Hayes Brian (2006-) The Semicolon Wars, available on http://webcem01.cem.itesm.mx:8005/s201713/tc2006/semicolon_wars.pdf

Comments

Popular posts from this blog

Chapter 8: More robust, more compact, and more easily parallelizable; For an unlimited time offer, we present you: Functional Programming

Chapter 10: Riding the… bear?

Chapter 7: Clojure Podcast with our beloved friend, Hickey, Rich Hickey