this post was submitted on 03 Aug 2023
96 points (97.1% liked)

Asklemmy

43945 readers
600 users here now

A loosely moderated place to ask open-ended questions

Search asklemmy πŸ”

If your post meets the following criteria, it's welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

~Icon~ ~by~ ~@Double_[email protected]~

founded 5 years ago
MODERATORS
(page 2) 50 comments
sorted by: hot top controversial new old
[–] [email protected] 2 points 1 year ago* (last edited 1 year ago)

Oh my favorite is Crystal. It's a statically compiled dialect of ruby.

It supports:

  • Most of the ruby goodness: custom DSLs, patching classes/mixins (monkey patching instances is not supported)
  • Compile time type checking (but it also uses duck typing)
  • Coroutines / fibers that work across multiple threads (multi-thread support is still experimental, but from my experience works well)
  • Possible to create small self-contained binaries (like go-Lang apps).

As much as I love the expressiveness of crystal, there are a few cons:

  • It's slow to compile. Due to the dynamic nature of the language, the compiler needs to parse a lot of files (think C/C++) before it creates a binary.
  • The number of libraries is very immature at the moment. Crystal is a young language and is missing support for things like aws.
  • The library management mechism (called "shards" akin to ruby gems) is not great (in my opinion). There are helpful tools to create the scaffolding, but if you're pretty much stuck with the defined structure. For example you cannot have a single git repo that provides a library and an application that uses it.

Other than that, the type checking but with ruby-like syntax is awesome!

edit: fixed formatting

[–] [email protected] 2 points 1 year ago

COBOL, because I loathe myself and don't want to be happy

[–] [email protected] 2 points 1 year ago

I'm probably the black sheep here, but I love Kotlin. It has the best parts of strong typed, object oriented languages and functional languages. Though I feel like it being designed to be bytecode compatible with Java really limits its applications. Even though they have a scripting language version of it, it really doesn't perform well as a scripting language because you need to compile it. I find myself always using Python for scripts instead.

[–] [email protected] 2 points 1 year ago (1 children)

Can't believe I scrolled all the way down and didn't find Scala. It's the only language with decent traction that beautifully and elegantly combines functional programming and object oriented programming. Scala makes it such that the language does not limit you into a certain paradigm. You can translate your algorithm in your mind into code regardless of how you thought of it. Incredibly flexible where you need it to be.

[–] [email protected] 1 points 1 year ago

Very few people use Scala. I think it's used in some data transformation pipelines and that's it....

[–] [email protected] 2 points 1 year ago

Perl. I can use it after awhile away without having to look up how to do things. It adapts to the best style for what I need to do.

[–] [email protected] 2 points 1 year ago

FORTH, but not because I actually use it regularly. A stack-based zero-operand postfix language? Every routine/word you define is like solving a puzzle.

[–] [email protected] 2 points 1 year ago (1 children)

I like typescript because it's all I've used for the last 3 years and I now think in it

[–] [email protected] 2 points 1 year ago

I like TypeScript (and Python) like I like duct tape

It isnt the best solution, it's not the most elegant, but it's the quickest to implement and can be used basically wherever

[–] [email protected] 2 points 1 year ago

No one else said it… I like Java, and more than the language all the tools available around it. They have been adding to the language to cut down on the traditional verboseness, and it can even natively compile now** some of the time.

The tools are also great, with Springboot for web services and jOOQ for databases, you can very quickly have a web app with strong typed database objects.

[–] [email protected] 1 points 1 year ago

HTML 4, cause I leaned it in 1998 when I was 10 and it's the only language I know (besides English) .

[–] [email protected] 1 points 1 year ago

R. The Rstudio ide is awesome and the data wrangling packages are unmatched. It's also pretty fast as long as your dataset fits in your RAM.

[–] [email protected] 1 points 1 year ago

I haven't programmed anything for years and it was all self learned so I'll always have a soft spot for delphi.

[–] [email protected] 1 points 1 year ago

Currently Zig. It really is "better C", and i like C.

Otherwise it would be Erlang, but it does not suit what i want to do now.

load more comments
view more: β€Ή prev next β€Ί