mmisamore, to programming
@mmisamore@sigmoid.social avatar

The unfortunate thing about the downfall of corporate was that was actually pretty good. By the time it finally arrived companies didn't want to migrate.

alexelcu, to programming
@alexelcu@social.alexn.org avatar

"Reasons to migrate to Scala 3"

alexelcu, to Blog
@alexelcu@social.alexn.org avatar

“Scala's Future”

Gather around, kids, let me tell you two stories from my past in the software industry.

https://alexn.org/blog/2024/01/10/scala-future/

tgodzik, to programming
@tgodzik@fosstodon.org avatar

Metals 1.2.0 is out! 🐲

  • presentation compiler for synthetic decorations
  • go to definition for scaladoc
  • custom project root setting
  • BSP errors in Metals status
  • reworked Metals Tree view with Scala 3 support
  • fixed Scala 2.11.x

Try it out with VS Code, Vim, Emacs and Sublime!

https://scalameta.org/metals/blog/2023/12/12/bismuth

softinio, to programming

:scala: developer asked to work on a project 👇

vascorsd, to programming
@vascorsd@mastodon.social avatar

"We’re happy to announce the release of Scala Native. Scala Native 0.4.16 is yet another maintenance release backporting changed from the 0.5.0-SNAPSHOT branch. This version introduces support for using Scala Native with JDK 21 and introduces bug fixes to the runtime. It also fixes severe performance problems when using java.nio.MappedByteBuffers."

https://scala-native.org/en/stable/changelog/0.4.16.html

t4rwin, to programming

Any Finagle users here? My com is looking at forking the project (Twitter isn't maintaining it anymore, and we want #scala3 support). Is someone else in this situation? #scala #finagle

alexelcu, to programming
@alexelcu@social.alexn.org avatar

Out of the Alt-JS languages I've played with, .js seems to be the best.

Given it's probably not widely adopted, its maturity is surprising. E.g., ScalablyTyped can convert TypeScript definitions, and actually works. Interop is good. And the compiler is, dare I say it, pretty fast compared to 2–3 years ago. Scala 3 also helps. E.g., it has untagged unions, just like TypeScript.

I'm surprised that it's in better shape than , for all its multi-platform marketing.

alexelcu, to programming
@alexelcu@social.alexn.org avatar

In Scala 3, these utilities are guilt-free. But I can't find them in the stdlib optimized yet: https://www.scala-lang.org/api/3.3.1/scala/util/ChainingOps.html

alexelcu, to programming
@alexelcu@social.alexn.org avatar

Scala has Type Classes as first-class citizens.

In a narrow sense, that's because instances get passed around as values. By comparison, Haskell devs talk about sometimes preferring “dictionary passing style” instead of typeclasses. In Scala, it's the same thing.

Ofc, Scala can't really force global uniqueness, AKA “coherence”, which is important for making data structures reusable & ensuring the correctness of operations on that data…

1/2

alexelcu,
@alexelcu@social.alexn.org avatar

But the coherence you get (in lexical scope, or due to global visibility rules) is good enough.

Scala 3 also has type classes as first-class in a broader sense.

We now have better syntax, e.g., for defining extension methods meant for type classes, or for auto-derivation. And defining auto-derivation logic doesn't involve macros, most of the time.

2/2

alexelcu, to programming
@alexelcu@social.alexn.org avatar

Macros are bad, but…

If you want macros, the meta-programming abilities in Scala are quite nice. What I like is that much is possible using just simple inline definitions w/ compile-time reflection, no AST manipulation or quoted code required.

alexelcu, to programming
@alexelcu@social.alexn.org avatar

How is IntelliJ IDEA for Scala 3 these days? Does it work?

alexelcu, to programming
@alexelcu@social.alexn.org avatar

I still can't wrap my head around the chess server being built in Scala 3 and using Typelevel libraries, in an style. This chess server is insanely popular.

https://github.com/lichess-org

interfluidity, to programming
vascorsd, (edited ) to random
@vascorsd@mastodon.social avatar

New release and supposedly better support.

What's new in IntelliJ IDEA 2023.2
https://www.jetbrains.com/idea/whatsnew/2023-2/

alexelcu, to programming
@alexelcu@social.alexn.org avatar

Writing an article on how awesome 's support for type-classes is, for a general audience, but it's a hard to write article 😒

bblfish, to programming

2014 paper: "Inductive Representations of graphs" by @jelabra building on M. Erwig's 2001 paper on Inductive Graphs.
https://www.sciencedirect.com/science/article/pii/S0167642314000094
They wrote a implementation https://github.com/labra/wesin
and a one https://github.com/labra/haws
There is an interesting note on the Scala page regarding banana-rdf.

> Banana-RDF contains a more general library to work with RDF from Scala. It allows different underlying implementations like Jena and Sesame. A long term project will be to unify our work with that library.

I was actually just looking to see how I could update the pure Scala implementation to https://github.com/bblfish/banana-rdf
and after following links to Quiver a Scala library for Graphs based on Erwig's original paper very well described here
https://blog.higher-order.com/blog/2016/04/02/a-comonad-of-graph-decompositions/
See https://discord.com/channels/632277896739946517/839263668478672937/1123916208509571124

vascorsd, to random
@vascorsd@mastodon.social avatar

For the last 2 weeks I've been trying to play a little with , migrated an old exercise I did from scala 2 to it. It's painful to use intellij in its current state, even using the eap plugin version or wtv it is. Seriously considering putting things back into scala 2, at least that works as expected in the IDE.

Problems include not autocompleting things, taking long time to show methods available, not showing inferred types, variables and types marked as not use when they are, etc...

interfluidity, to programming

it's fun that with union types you get an intersection of methods while with intersection types you get a union of methods.

interfluidity, to programming

i've seen so much #scala pessimism this week.

but it remains such a beautiful, fun language. i really enjoy #scala3 it's true there are some real tooling hassles (please give me a good emacs mode). you lose time. but you can express things so cleanly and concisely.

there are tensions between what "industry" wants and an impulse to experiment. a lot of us were drawn to scala because it challenges us, keeps us learning. it never wanted to be #golang. i don't think it should try now.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • provamag3
  • rosin
  • ngwrru68w68
  • Durango
  • DreamBathrooms
  • mdbf
  • magazineikmin
  • thenastyranch
  • Youngstown
  • khanakhh
  • slotface
  • everett
  • vwfavf
  • kavyap
  • megavids
  • osvaldo12
  • GTA5RPClips
  • ethstaker
  • tacticalgear
  • InstantRegret
  • cisconetworking
  • cubers
  • tester
  • anitta
  • modclub
  • Leos
  • normalnudes
  • JUstTest
  • All magazines