this post was submitted on 03 Aug 2023
147 points (97.4% liked)

Asklemmy

43479 readers
1509 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_A@discuss.tchncs.de~

founded 5 years ago
MODERATORS
(page 2) 50 comments
sorted by: hot top controversial new old
[–] LedgeDrop@lemm.ee 4 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

[–] cyclohexane@lemmy.ml 4 points 1 year ago (3 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.

load more comments (3 replies)
[–] yetiftw@lemmy.world 4 points 1 year ago* (last edited 1 year ago)

matlab 😈 because I love figuring out how to vectorize code! I've used it for various art projects (see below) and it manipulates images beautifully. and the documentation and error messages are easy to follow.

[–] tclement09@lemmy.world 4 points 1 year ago (2 children)

Kotlin: compatible with Java, JS, Wasm, Swift and even C++, ability to share code across all those platforms, way less verbose than Java, lots of useful functions in the standard library... I still don't understand why some people are saying it's just Java but worse

load more comments (2 replies)
[–] dandroid@dandroid.app 4 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.

[–] Jakylla@sh.itjust.works 4 points 1 year ago (1 children)

Brainfuck !

Not meant to do real things with it, it's more of a puzzle game, but a really brain hurting one

load more comments (1 replies)
[–] Bye@lemmy.world 4 points 1 year ago (1 children)

I like R because most everything is vectorized out of the box, and you can subset multiple ways. You can do stuff like

a = c(1,2,3,4)
a - 1 # 0,1,2,3
a < 3 # T,T,F,F
a + a # 2,4,6,8
a[a < 3] # 1,2

Also map (β€œapply” functions in R) is implemented very intuitively, and R discourages you from doing anything object oriented.

load more comments (1 replies)
[–] darkfiremp3@beehaw.org 3 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.

[–] De_Narm@lemmy.world 3 points 1 year ago

Clojure. I not only get to use a functional language but also get to use all the libraries written for an actually popular language (Java, or JS for ClojureScript). Altough I'd choose something else if functional programming should ever catch on.

[–] gens@programming.dev 3 points 1 year ago (1 children)

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.

[–] ryn@lemmy.ml 2 points 1 year ago

i have to try zig

Scala. Multiparadigm. A touch of OO is nice in the functional world.

[–] knobbysideup@lemm.ee 3 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.

[–] RagingRobot@lemmy.world 3 points 1 year ago

I try to stay language agnostic but if I'm honest JavaScript is my favorite because of the speed it provides. Also I like to build we based things so it's always in the stack

[–] BackendForth@lemmy.ml 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.

[–] Psythik@lemm.ee 2 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) .

[–] Teknikal@lemm.ee 2 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.

[–] baropithecus@beehaw.org 2 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.

[–] ricecake@lemmy.ml 2 points 1 year ago (2 children)

i like nix, but it hasn't clicked

load more comments (2 replies)
load more comments
view more: β€Ή prev next β€Ί