... but then I think about the actual big names (current & former) in the AHK community, and I'd be curious to know their preferred development language.
Short Answer:
Scala, because it's a full jvm-based programming language that feels kinda like a scripting language.
Longer Answer:
Starting with AHK, I obviously had a background in scripting. Knowing I wanted to explore a more mainstream scripting language, I looked into python/ruby quite a bit. Between those I concluded I prefer ruby, but I'd rather troubleshoot your python code. Then I got a job working with data (back-end stuff). Once we started working with Big (term used loosely) Data, we started using Spark - which is written in Scala. Because of this, we decided to use Scala as our primary programming language. Note that we worked with several other java based open-source projects, and we work primarily on Linux servers.
What I always tell people about Scala is that it's basically halfway between java & python (ruby really). For me, it gives the best of both compiled & interpreted languages with the only real downside being increased complexity.
Java-like:
- Strong static typing
- Compiles to java byte code
- Able to use all java libraries
- most other java stuff, other than the boilerplate
- Type definitions aren't required if they can be interpreted
- Simple. Example:
Code: Select all
println("Hello World")
- Interactive Shell/REPL
- Both Functional & Object-Oriented
- Implicit conversions
- Lots of syntactic sugar (even user definable)
- Multiple ways to achieve the same thing (ruby-like)
- bash
- python
- powershell (when forced to use windows)
- java (if I really have to)
- awk (is this really a language?)
- sql (included to make the list longer)