⭐️ A friendly language for building type-safe, scalable systems!
+1 for Elixir. If you like Rust syntax, you should also check out [Gleam], it compiles to Erlang and had full interop w/ Erlang/Elixir.
Generic programming for Scala
I'm not sure where is the line between extensive and basic knowledge. Here is my more detailed exposure:
In commercial context:
* Of strongly typed ones only Scala (with [shapeless]). Can reluctantly throw in Kotlin as well for it's amazing structured concurrency.
In non-commercial context:
* Went through a few chapters of [Software Foundations] doing Coq proofs.
* Worked through most of the [Types and Programming Languages] (writing typecheckers in Ocaml)
* 3 services in Haskell (1 on Scotty, 2 on Servant). Loved persistent+esqueleto for the ORM layer, disliked Opaleye.
* 2 projects in PureScript (1 with Halogen, 1 with React bindings).
* 1 project in ReasonML (Ocaml).
> I am afraid there is no way back for me
I see where you are coming from. In my case I can alternate between "I want all invariants properly expressed and checked" and "I just want to ship that barely-working piece of junk and iterate on it". I learned to adjust depending on organization needs. IMO, for many orgs, especially startups/scaleups, the latter is often the more fitting way. With that in mind, I'm willing to trade the guiding hand of great type systems for other productivity aspects (amazing runtime and cohesive web framework in Elixir's case).
[Software Foundations]: https://softwarefoundations.cis.upenn.edu/
[Types and Programming Languages]: https://www.cis.upenn.edu/~bcpierce/tapl/
Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
Question regarding Recursive datatypes and cats typeclasses (Haskell to Scala)
3 projects | /r/scala | 6 Jul 2023
Type erased on implicit evidence check
1 project | /r/scala | 28 Apr 2023
Cross-Training to Ada - which are the best languages to begin from?
1 project | /r/ada | 25 Jan 2023
for comprehension and some questions
3 projects | /r/scala | 22 Jan 2023
Is there the equivalent of this in Scala ? (Maps to Struct)
1 project | /r/scala | 27 Dec 2022