Programmers of Mastodon
What is your favourite programming language?
And I mean the one that when you use it, you tell yourself "this is why I love coding"?
@Duskhorn C# is my main language for work and it's the closest thing I know that's close to pseudocode.
@Duskhorn C++ for compiled low level languages (because I hate myself and I like suffering), and Python for interpreted high level languages
@Duskhorn C and Python
- ubiquitous (tools, compilers, platforms, etc)
- compiled code reflects source code well (close to the metal)
- easy to optimise
- my first "serious" language, used to it
- unpopular with the Cool Kids, causes toxic people to announce themselves
- very quick and easy to hack random things, or to prototype
- good for AI and data science
- well supported
i rarely use anything beside those two, but might try replacing C with Zig soon...
- Compiler that's made to be really friendly for entry-level programmers.
- Designed to have no runtime errors in practice, it creates a restrictive environment where coding becomes more of a logistical puzzle, and when it compiles, you know you've solved it!
- Really wants people to heavily consider the design of their packages before publishing.
Strong typing, because it helps me express the relations between concepts.
Memory safety without garbage collector through lifetimes and ownership, because it helps me be less messy with my datatypes
Helpful compiler messages, because I can do compiler-driven-programming, and when it compiles, I'm pretty sure it does something in the right direction - the rest is tweaking.
Aaaand just enough functional programming to throw around lambda functions and make it pleasant.
Despite its runtime issues and its association with Rails, it's the language where, when I'm writing it, I feel the most like "yeah, this code really expresses what I intend to do here"
@Duskhorn Haskell, no doubt! Coding in Haskell just leads so naturally to nice, readable code, it matches the way I structure programs in my head really nicely, and the type system is so solid, it's very very rare for a program that compiles to not do what I want.
There is something weird in getting a bunch of complains from the compiler, only to finally fix them all and suddenly your application simply works -- and I mean it: It's like "hey, my initial idea was correct, the compiler got the problems in the little details that I didn't think of, and now it just works."
In a way, it feels like what Niko Matsakis say in his keynote on Rust Latam 2018: Rust gives a sense of craftmanship.
@Duskhorn Python, because there are so many good libs and frameworks that, most of the time I just need to write glue to get a fancy new application.
@Duskhorn C#. The IDE letting me freely explore so easily is just kinda relaxing in a way. I know a number of languages, and frankly do most of my work work in Adobe JS or a proprietary language, maybe a little SQL, but when I program for myself, it's in C#.
Java is my #2. Just because the JVM sucks doesn't mean Java isn't a great language. It can handle a lot of operations other languages take more effort for. If they'd just add unsigned types...
@Duskhorn common lisp
so much fun to write, and coupled with Emacs+sly/slime makes it incredibly fun to play with new ideas :3