Regardless of usability, which programming language is the most elegant?
For further actions, you may consider blocking this person and/or reporting abuse
Regardless of usability, which programming language is the most elegant?
For further actions, you may consider blocking this person and/or reporting abuse
Latest comments (28)
Python without def, C++ without header file, java without boilerplate, PHP without $, js with typescript syntax without typescript compiler, go with class, ruby without def
Elegant and beautiful are two different words that have two different meanings. You are effectively asking two different questions. I'll attempt to answer both.
Assembly language is always, technically-speaking, "the most elegant." It is one step removed from raw opcodes processed by the CPU but, unlike raw opcodes, is still technically "readable" by humans.
The downside is that assembly language is somewhat painful to write real software in. There is no concept of functions, classes, etc. at the hardware level. The resulting code is also tied to a single CPU architecture. For embedded development, that might not be a problem but it is a problem for general-purpose computing, especially cross-architecture development. And is also a problem if you ever want to accomplish anything useful in a reasonable amount of time. C is the next best thing to writing assembly but does add a bunch of software layers to abstract away the hardware to some degree.
Spoken languages have the most beautiful syntaxes. Entire professions exist just to analyze the syntax of spoken and written languages. However, programming languages that aspire to be like spoken languages (e.g. COBOL) tend to be too wordy to program in. Programming languages that produce "symbol soup" just to save a few bytes tend to be incomprehensible to the casual reader - even for other seasoned programmers who know the language and are reading a codebase for the first time. Symbols also have the downside of being unsearchable on various search engines. The best programming languages therefore strike a balance between the two by being neither too symbol-heavy nor too word-heavy.
Here's another possible perspective: The most beautiful syntax in software development is the one that naturally emits no errors, warnings, or notices from a compiler/interpreter. The greatest challenge then is to keep the code that way for a decade or longer even as the language changes, new versions are released, and half of the codebase is declared deprecated.
Definitely Smalltalk.
C# (version 9 and especially 10)
I like Python, Rust and...... well, Haskell? (I am totally Haskell newbie, but it looks really good).
Even in JS, there is something looks pretty.
Python's readability is unparalleled, even non-programmers can have an idea of what's going on. Straightforward but can it be called beautiful just because it's readable? English is readable but it's certainly not a "beautiful" language.
Ruby certainly emphasizes elegance. It's like poetry...but not all poetry is good.
Lisp has a timeless minimalism in its absolute lack of syntax beyond (this).
Yeah, looks really tight and neat! ^.^
Beauty lies in the eyes . . . and all of that, so as per me, the following languages are very pretty: Lisp (Clojure, etc.), Elm, Scala, F#, Racket, Haskell, and maybe even Julia, Ruby, Nim, D, etc.
Among the ones I have used, I think Python has very minimal and beautiful syntax.
F#
Yup! I'm not into the .NET ecosystem at all, but F# syntax feels perfect to me.