💾 Archived View for bbs.geminispace.org › s › programming › 3632 captured on 2023-11-14 at 09:00:29. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-11-04)
-=-=-=-=-=-=-
Mine is currently Elixir and has been for a while. Elixir makes it easy to build complex apps and has so much built into it that I don't often need to reach for external dependencies.
Jul 29 · 4 months ago · 👍 Addison, ttocsneb, Ruby_Witch, eggboycolor, pitl · 🤘 1
Rust, for now. It's one of very few languages that has felt like it's actively simplified solving some commonly-encountered problems, to me at least. That bring said, I tend to change my mind on what my favorite language is every year or two, to be honest, haha.
Nim, it is the perfect programming lang but the docs and libraries are lacking
Rust right now. However, Zig has been catching my eye recently. It seems to have all of the features that I wanted out of C. Once it matures a bit more and I get to play with it a bit more, then I feel that my favorite language will change.
Depends on what I want to do. For general and shell programming Lisp.
For low-level programming Forth, althoght I haven't us'd it.
If there were good implementations for GUI it would be Smalltalk. For now Lisp.
C and other ALGOL-like languages are ugly. The holy trinity: Lisp, Forth, Smalltalk are so powerful, that I don't need any other programming languages. I do need them if a program is written in them.
I need to do some serious C coding as I feel it's a good lang to have under your belt. I was torn between Zig and Vlang recently and have fallen in the Zig camp; Zig is missing a package/module management system but I believe it is being worked on. On the server-side I'd say Go for now just due to its maturity and how productive you can be in it. Once Zig is more mature I'd say that for server-side too.
🔭 TheSpoonCarver · Jul 29 at 14:13:
Roc. It's still very much in beta, but I like that it's taken all the best bits of functional programming, but made them so much more pragmatic
🔭 DocEdelgas · Jul 29 at 15:45:
Currently, my programming languages of choice are C, Go and Python. I like C, because I can get stuff done with it. Python is used in my field a lot, and additionally, it provides good APIs and a workable syntax. Go is a little like Python, but with a stronger type system.
That being said, I would like to use a more matured Vlang, which obviously borrows from Go, but also Rust.
🚀 ahappydeath · Jul 29 at 16:27:
I've tried Rust a couple of times and it just hasn't sparked joy yet. I need to just sit down and build something with it I think.
I'm into Dart. It's "write once, run anywhere", or close enough (web, mobile, server), and has lots of object oriented goodness. It's also a nice scripting language--no reason for an OO language to be painful/verbose.
Oh, and since 2.12 it's the first language I've used to have nullability expressed in the type system ... lots of ! and ? later, it's a feature I would really miss :)
Of course some language never added null to start with. Of those, I like ML.
🚀 ahappydeath · Jul 29 at 16:37:
@TheSpoonCarver I hadn't heard of Roc yet, but it looks very promising! I'm gonna go try it out now
🚀 ahappydeath · Jul 29 at 16:46:
@Mirari I've been meaning to try Nim for a while
🍄 Ruby_Witch · Jul 30 at 05:23:
Rust is my favorite flavor, but I used to be a big C/C++/C# person and it isn't a huge stretch to move from there to Rust.
When I was in high school I used to write my graphics routines in inline assembly to improve "efficiency", like I knew better than the compiler did. Now I know to trust the compiler and let Rust do what it needs to do to make me smarter.
🐉 gyaradong · Jul 30 at 05:29:
I must say I sort of envy the lisp guys who have had a great language and programming environment for decades now. I'm also pretty fond of Erlang-likes but I think they are situational. For my money and mental model, I think the "lightly functional" approach of Rust works well. The big issue with Rust remains how it will evolve over time. Will it bloat or find a feature set it is happy with?
i would have to say Python, but I am trying to learn to like Haskell. But it's kind of a mess, really.
C# is my go-to. I use it every day at work, I use it for personal projects, it's fast, and has a huge ecosystem. I'll fiddle with C and Rust if I feel bored but most of the time I'm choosing .NET.
It's nice to have a toolset that you've been using for so long that it feels like your "default".
IMHO Haskell is a mistake.
🚀 ahappydeath · Aug 02 at 01:40:
IMHO Haskell is very fun to write and extremelly hard to read
🌝 eggboycolor · Aug 04 at 07:53:
My favorite language has changed a lot over the years, and lately I can't really say I have a "favorite" that I truly like the most. I try to learn and use lots of languages and programming paradigms, and vary things depending on the task at hand.
Cross-Platform: C++14, C89 (depending on target)
Modern Systems Programming: Rust, want to try Zig.
Scripting: Python, Lua.
Functional: Haskell, want to try OCaml 5.
Assembly: Wiz (my WIP high-level assembler project on backburner; usable enough for homebrew), CA65 (6502 family), RGBDS (Game Boy), WLA DX (cross-assembler)
At my gamedev dayjob I mostly use C# which is not my favorite, but has some nice features.
Lua, for some non-technical, almost _sociological_ reasons: https://akkartik.name/freewheeling
— https://akkartik.name/freewheeling
🦀 jeang3nie · Aug 05 at 23:10:
I use Rust more than anything else for a while now, but I don't think I'd call it my favorite. If anything, I've used it enough now for the mystique to have faded away a bit, and I can see the parts that I don't particularly care for in better focus now.
I've actively tried to be at least somewhat proficient in a wide variety of languages, although I can pretty clearly state an affinity for compiled languages. They mostly all have good reasons for existing. Nim is wonderfully concise. Zig I think is going to be huge in a few more years because it really does mostly solve the issues with C. Fortran is a hidden gem. Hare manages to be an improvement on C in a significantly smaller specification.
I still like plain C, too. So many things are simple to express in C because of the language's simplicity and lack of "safety". Want to make a Rustacean cry? Want to see how an integer is represented in memory on your machine?
#include <stdint.h> #include <stdio.h> typedef union { uint32_t val; uint8_t bytes[4]; } u32; int main() { u32 i; i.val = 420; printf("Integer as bytes: %i, %i, %i, %i\n", i.bytes[0], i.bytes[1], i.bytes[2], i.bytes[3] ); }
About the only language family I have yet to explore at all is the lisp family. But, it's on my -list-
Lisp user and an active s/Lisp user.
If you are going to learn Lisp I recommend you to start from MIT opencourse https://yt.artemislena.eu/playlist?list=PLE18841CABEA24090 or if you prefer to read the book, the course is bas'd upon https://mitp-content-server.mit.edu/books/content/sectbyfn/books_pres_0/6515/sicp.zip/index.html
Mine is Julia, very natural and fast.
🍩 wholesomedonut · Aug 19 at 04:13:
spoken honestly? Powershell. It's what I've written professionally and as a hobby for like 10 years, and I've had codebases sprawling into the thousands of lines. It's the one I can pull out of my head on demand and get a small POC working in the CLI, and then refine it down to modules with proper structure later.
I've written and delivered a handful of projects with Python. I enjoy how dumb simple and flexible it can be, and the database drivers are sane.
I did a small program in Rust for batch-processing OCR requests. Fastest, snappiest program I ever wrote. Accurate too, with Tesseract.
Clojure is my only real voyage into lisp and most "functional-focused" languages. I like it somewhat.
My current fav for private projects is Go. The language fulfills several top requirements of mine:
On the downside, I don't like how the Go code profiler works: it takes regular snapshots of the execution stack; recording method entry and exit time stamps would be more accurate. I am also not very happy with new features (the new package management and generics) that increase complexity but are neither indispensable nor significantly increasing productivity: for what I do.