There are thousands of programming languages, all having features unique than others. There are some more readable, others more performant, some ar...
For further actions, you may consider blocking this person and/or reporting abuse
My favorite programmings languages are:
F# for functional programming.
Lua for an embedded scripting language.
Python (3.x) for general purpose scripting language. Also my recommendation for the best programming language to learn as your first programming language.
D as a "better C++ than C++" language.
My "on the horizon" languages I'm keen on are:
Elm as a web language.
Rust as a potentially "the next mainstream language".
Swift as the language for Apple platforms.
The language I use day-in and day-out is C++.
lua was the first language i ever tried and i was obsessed with it since i was 11 but was always overwhelmed with it. I learned JS and perhaps I will revisit it.
Look for luawinmulti on GitHub. It will instruct you to install mingw, then guide you in installing Lua. It supports 5.1, 5.2, and 5.3. You'll end up with a Lua environment that runs out of a standard Windows command shell.
Always wanted to learn F#! Looks nice.
The Book of F# by Dave Fancher is a great introduction and tutorial to F#. I've read many F# books, and that was the only book that I'd recommend. (I just started reading Expert F# by Don Syme this weekend, I'm on chapter 1, so I cannot recommend nor criticize.)
I'm most interested in (in no particular order):
Idris
Elixir
Elm
Haskell
Julia
Python
Wolfram Language
I have tried elixir and python.
Idris and Elm looks instresting.
Thanks Saurabh!
My addition: If you struggle with Haskell and like frontend work, try elm-lang.org/ instead. Much more approachable IMHO.
For something completely different, try an RTL hardware design language like VHDL or Verilog. Always parallel, all the time. Changes the way you think about "programming" and I think should be mandatory for any budding developer.
Yeah, it is something completely new
Java, C#, Scala, Go. My 4 favourites. Honestly I use many more and I think every GPPL is fun and you need to understand which one is the best for your goal.
When I studied OpenGL I spent more time to experiment with different programming languages than effectively learning OpenGL
Looking through the discussion —
As far as reactive web development goes, Svelte is a great tool to try if Elm is too radical of a paradigm shift from the Javascript, HTML, and CSS realm.
Definitely recommend it as an alternative to React, Angular, or Vue if you’re interested in learning any of those
I also recommed svelte to anyone intrested in web development.
I have been programming in C since 1981, though for the first 10 years or so I thought in pdp-11 assembly language while doing so.
I learned lisp in college, wrote a small lisp interpreter with the primitives in pdp-11 FORTRAN-IV and assembly and the rest in lisp in college. Have not used it much since then.
Wrote a smalltalk interpreter in C some time in the 1980s or 1990s. Switched to much better open source implementations later.
Haven't tried Haskell yet.
You missed SNOBOL, TCL, and FORTH. All of these are very different than the usual fare.
Yeah I agree I left a lot of languages. Maybe I will do a second part
Most people, myself included, probably won't find the time to literally follow the advice in the post. I think you gain some context just from reading this.
...But if your take away is that you will take this and literally make a small program in each one of these languages, you'd probably level up as a programmer that very day.
Actually picking new languages isnt that hard. 4 - 5 hours is enough to get the basics,
then you can solve project euler problems for practice.
I tried to understand smalltalk but I didn't. C syntax looks easy here, the snippet doesn't show what makes C different. Closure? It's just different from normal programming languages, I was happy when I wrote fizzbuzz with it. As for Haskell, it looks interesting.
imo the part of C is its syntax maps directly to assembly
Really want to learn Smalltalk this year. It seems to pop up a lot as a 'proper' oo language.
It's got a few things that make it intriguing: a pure object-oriented environment (literally everything is an object), OOP implemented as "message passing" (Alan Kay's vision), and an IDE with integrated tools, refactoring, debugging, and search (it's very reflective/introspective). Download Pharo Launcher & try it! It's a lot of fun to program with!
I actually wanted to give the squeak implementation a try. They also have a GraalVM support, which opens up a lot of possibilities.
Bit if there are good reasons to prefer Pharo I love to hear them.
Smalltalk is a new world in its own
To investigate Smalltalk, check out Pharo. It's the modernized descendant and quite effective as a development environment. My other languages of choice are Lua and LabVIEW.
Yeah Pharo is the recommended flavour of smalltalk. I have used pharo in smalltalk's code example
Great recommendations!
I would add one more to the list: prolog.
It’s a logic, fact based programming language that has interesting concepts beyond procedural and functional. Sure, it comes from academia and is still not used outside of it but I recommend people to try it.
We made a text based adventure using prolog in university. The whole lazy evaluation is neat. For sure different then most languages.
Pretty neat!
While in the uni I made a prolog program to rank texas holdem poker hands.
Lots of recommendations for prolog
I had to learn prolog for one of my lower div classes and at the time, I spent hours pulling my hair out over this "useless" programming language. While it's not really used for real world development, I think it's a really good tool to demonstrate something like theoretical computer science topics.
Edit: RegEx and Context free languages are concepts that can be demonstrated pretty well with prolog
Actually prolog was on my list. But since i didnt tried it yet so didnt write about it
😅
Yes, constraint satisfaction is often overlooked.
10 years and Python and finally, back to Haskell (I learned concurrency with Haskell documentation) because 99% of my time, I write Python like functional programming.
I'm looking on Elm but I still look at Swift because we can use it on cli and server-side (Vapor or Perfect or another framework) also on Linux system.
If you want a language with strong server side support, compiled and static typed
Try Golang
I tried because I need to adapt Hashicorp Vault but I still prefer Haskell or Python with functional programming way.
Now, I'm sure that I lost 10 years with object oriented programming… no wayback machine to avoid this lost of time
I think Golang is very different, not kind of oop from java
Ballerina (ballerina.io/) if you do microservices development.