[-] tatterdemalion@programming.dev 6 points 1 month ago

The Dark Knight

There Will Be Blood

The Prestige

Memento

The Shining

Gangs of New York

Aliens

The Machinist

Full Metal Jacket

[-] tatterdemalion@programming.dev 5 points 1 month ago

This person is no superstar.

[-] tatterdemalion@programming.dev 5 points 3 months ago* (last edited 3 months ago)

Surely this will have a real impact instead of just making low-paid workers jobs much harder.

[-] tatterdemalion@programming.dev 6 points 4 months ago

Politicians start listening to scientists about climate change. They implement policies to reduce emissions. Humanity saves itself from itself.

[-] tatterdemalion@programming.dev 5 points 5 months ago

Awwwww there goes that plan.

[-] tatterdemalion@programming.dev 5 points 5 months ago* (last edited 5 months ago)

Gleam is cool. I wrote some services with it to see if I wanted to use it for more projects. It seemed like a good option because it would be easy to teach.

Things I like:

  • fast build times (I only tested small apps though, under 2000 LOC)
  • strong static types
  • runs on the BEAM
  • easy to learn
  • pattern matching
  • immutable + structural sharing
  • currying (with parameter holes)

Things I don't like:

  • no re-exports
  • it's possible to have name collisions between packages; authors have a gentleman's agreement to always create a top-level module with the same name as the package
  • some standard library APIs seem missing or immature (it's still pre-1.0)
  • it can be hard to get good performance out of idiomatic code for specific tasks (see immutability)
  • no format strings; best you can do is "Hello, " <> name. It starts to get cumbersome
  • parsing/serialization is all quite manual boilerplate; there's nothing quite like serde
  • no field/argument punning
  • no method syntax; you just have to scan the docs to figure out what functions can be used with a given type
  • you can't define the same variant name twice in the same module; I believe this is a limitation in how the types are translated to Erlang records
  • you can't call functions in pattern matching if guards
  • you can't have dependency cycles between modules in the same package
  • hard to write FFI correctly; you lose all the comfort of types
[-] tatterdemalion@programming.dev 5 points 5 months ago* (last edited 5 months ago)

Probably climbing up the West Ridge of Quandary Peak in CO. I was with 3 college friends. I didn't expect the altitude to affect me as much as it did, but I got pretty winded. It was a little snowy and wet, so our holds were sketchy at times. Along the ridge it's class 3 climbing, and the crux is a crack in a steep rock with a dangerous fall behind you. That was probably the biggest adrenaline rush I've ever had.

Thankfully we were greeted by some friendly mountain goats on our descent.

Here's a good video of the climb. The harder stuff starts about 9 minutes in.

https://youtu.be/CN5P4aRxnu0?si=O0MSyjB_RJTZ4fmj

[-] tatterdemalion@programming.dev 5 points 6 months ago

I literally had a high school orchestra conductor named "Dr. Pipo" and it was pronounced exactly like that.

[-] tatterdemalion@programming.dev 5 points 6 months ago

Are you kidding me? Clap has some of the best documentation of any crate.

[-] tatterdemalion@programming.dev 5 points 7 months ago

; is just a monad after all

[-] tatterdemalion@programming.dev 5 points 10 months ago

The irony is that the layout of this post is so bad on the official Lemmy website.

I had this recommended for me, but the risk of empty nose syndrome scared the shit out of me.

view more: ‹ prev next ›

tatterdemalion

joined 1 year ago