8 ms·
The Sovereign Tech Fund invests in Scala
- deleted 8mo ago[deleted]
- betaby 8mo agoWhy would the governments invest money on such a niche language? "Scala is widely used to build and operate essential systems across multiple industries." - very bold statement.
- nish__ 8mo agoI made another comment about it. But the answer is Scala is the number one language for building hardware these days via Chisel.
- betaby 8mo agohttps://www.chisel-lang.org/community https://www.chisel-lang.org/community second link - 404 third link - achieved project on github fourth link - educational project Perhaps it's a very know and useful project, yet indeed seems very niche to me.
- wk_end 8mo agoChisel is very neat but "the number one language for building hardware"? VHDL and SV are the only things in this space that actually matter. Chisel is still a blip for now.
- nish__ 8mo ago"...these days." Don't quote me out of context.
- wk_end 8mo agoI genuinely don’t understand what you think “these days” means or how what I said was incompatible with it.
- nish__ 8mo agoOk, let's say you were going to start a brand new project today. What tech would you use?
- wk_end 8mo agoHmm, I think we're talking about different kinds of "number one". The ancestor comment called Scala "niche" and criticized the characterization of it as "widely used". So given that context, I was coming at this from a perspective of popularity; Chisel is orders of magnitude nicher than even Scala itself and orders of magnitude less widely used. Most of industry is still choosing VHDL or Verilog for most greenfield hardware projects. I think you mean in terms of "best way to do it". Chisel can at least lay claim to that crown, sure, though I think you could say the same about Scala too. (I might say Clash for hardware and Haskell for software, not that that does me any good.)
- ldayley 8mo agoAs a European project the foundation is likely pursuing funding from EU sources using the fact that it isn’t US tech as a selling point.
- beastman82 8mo agoProbably because it's an amazing language for people who know what they're doing
- ForHackernews 8mo agoIs it niche? Scala is arguably the single most successful functional language. It interoperates with the whole JVM ecosystem. It's probably the #3 JVM language after Java and Kotlin. Spark is Scala, Twitter was (is?) Scala https://sysgears.com/articles/how-and-why-twitter-uses-scala/ https://sysgears.com/articles/how-and-why-twitter-uses-scala...
- ActorNightly 8mo agoAnything that runs on JVM should not be invested in.
- iberator 8mo agoWhy? I bet you never even wrote custom VM for your lang/architecture. There are like dozen of implementations for JVM alone: sun, Oracle, gnu, IBM etc etc
- ActorNightly 8mo agoBecause the idea of classes is baked into JVM. So when writing inline code, with groovy, scala, kotlin, whatever else, the compiler has to basically insert fake classes into the jvm. This may seem trivial, but because its fundamentally "hacky" its not something that is ever going to be as easy to work with and expand.
- neko-kai 8mo agoThis is nonsense. And, not that there's anything wrong with classes, but compilers no longer need to 'insert fake classes' for anonymous functions since Java 8.
- ActorNightly 8mo agoPretty sure everything in the jvm has to be tied to a class structure by definition.
- forgotpwd16 8mo agoScala may have fallen out of favor but was quite popular few years ago. And perhaps still is the most popular EU-designed language (developed by EPFL).
- oytis 8mo agoPython. Python is the most popular language designed in EU. EPFL is not even in EU
- epolanski 8mo agoOthers worth mentioning are Kotlin, Ada, Pascal, Haskell, Zig, Erlang, Elixir, Prolog, Ocaml.
- rapnie 8mo agoFormer EU, there's Gleam.
- pwdisswordfishs 8mo ago[dead]
- homebrewer 8mo agoKotlin is from St Petersburg, it's even named after an island near it.
- epolanski 8mo agoSt. Petersburg is in Europe. I thought what was worth mentioning was being European or not, rather than being part of an European legal entity or not.
- Y-bar 8mo agoPHP is also from Europe. Not sexy perhaps, but popular enough to mention.
- ternaryoperator 8mo ago
- oytis 8mo agoMaybe they've applied for the grant 10 years ago when Scala was all rage
- bachmeier 8mo agoIt wouldn't have to be used in very many places to justify a 377k investment. A few big European banks alone would be worth it. Their website says "we invest globally in the open software components that underpin Germany's and Europe's competitiveness and ability to innovate". The fact that Scala is used at a university could also be classified as innovation. This is a minor amount of money if you're going to compare it with a STEM or medical research grant.
- agentcoops 8mo agoI don't know what it looks like on the ground now, but Scala was the defacto language of data infrastructure across the post-Twitter world of SV late stage/growth startups. In large part, this was because these companies were populated by former members of the Twitter data team so it was familiar, but also because there was so much open source tooling at that point. ML teams largely wrote/write Python, product teams in JS/whatever backend language, but data teams -- outside of Google and the pre-Twitter firms -- usually wrote Scala for Spark, Scalding etc in the 2012-2022ish era. I worked in Scala for most of my career and it was never hard to get a job on a growth stage data team or, indeed, in finance/data-intensive industries. I'm still shocked at how the language/community managed to throw away the position they had achieved. At first I was equally shocked to see the Saudi Sovereign Wealth fund investing in the language, but then realized it was just 300k from the EU and everything made sense. It's still my favorite language for getting things done so I wouldn't be upset with a comeback for the language, but I certainly don't expect it at this point.
- ForHackernews 8mo agoDid the Scala 3 changeover blunt its momentum, you think? Or just Python won out in a sort of worse-is-better way?
- hocuspocus 8mo agoMostly the latter. Scala 3 is almost completely irrelevant to the big data space so far. Databricks took six years before upgrading their proprietary Spark runtime to Scala 2.13. Flink dropped the Scala API before even moving to 2.13. I don't know if Scio will seriously attempt the move to Scala 3. All of them suffer from Twitter libraries being abandoned, which isn't insurmountable, but an annoyance still. And I don't think it matters anymore. I predict that the JVM will eventually be out of the equation. We're already seeing query engines being replaced by proprietary or open source equivalents in C++ or Rust. Large scale distribution is less of a selling point with modern cloud computing. Do you really need 100 executors when you can get a bare metal instance with 192, 256 or 384 cores? People want a dataframe API in Python because that's what the the ML/DS/AI crowd knows. Queries and processing will be done in C++ or Rust, with little or even zero need for a distributed runtime. The JVM and Scala solve a problem that simply won't exist anymore.
- pjmlp 8mo agoFor one, it is a programming language born in Europe, and mostly developed in Europe via EPFL. For our technology freedom we need to focus on programming languages where PR aren't coming from contributors living in adversary nations.
- nish__ 8mo agoI learned recently that one of the killer apps for Scala seems to be in hardware design. Chisel [0] is the core technology of the best open source RISC-V chips. Chipyard [1] is designing leading edge type OOE and AI chips and all of the code is written in Scala. Personally, I can't wait for some of these designs to start being mass produced and put in laptops and phones. [0] https://en.wikipedia.org/wiki/Chisel_(programming_language) https://en.wikipedia.org/wiki/Chisel_(programming_language) [1] https://github.com/ucb-bar/chipyard https://github.com/ucb-bar/chipyard
- abeppu 8mo agoSo, as a justification for support of scala, the thing that seems lacking to me is that Chisel seems to still be centered around scala 2? E.g. their recommended template for getting started still uses scala 2 ... so without support to motivate them to use scala 3, it's not obvious that Chisel benefits much from current work on the scala language? I have not fully understood the Chisel project but I see they have a "compiler plugin" which suggests to me that moving fully off scala 2 requires a meaningful redesign. https://github.com/chipsalliance/chisel-template/blob/main/build.sbt https://github.com/chipsalliance/chisel-template/blob/main/b...
- appplication 8mo agoI’m not super plugged into scala but I work with Spark quite a bit and my observation has been the whole scala 2.13 -> 3 transition is a huge mess for just about everyone who touches it. I don’t have enough hands-on context to understand why it’s so painful but it seems to be similar or worse to the python 2.7 -> 3 transition in terms of sticking friction.
- abeppu 8mo agoIt is a mess. I've spent some time trying to convert some academic oss projects and some removed features really force large redesigns. I think rather than funding the stuff on this announcement, I wish they would fund a team of experts to work on migration of a prioritized list of projects. This would both provide example patterns of migrating substantial projects and unblock projects who have been saying "we would like to try migrating but library X we use still hasn't"
- ATMLOTTOBEER 8mo agoHappy to see investment in sbt and the stdlib Sad to see code coverage tooling called out as something they’re spending money on Happy to see scala get sponsorship
- thefaux 8mo agoThe lead maintainer of sbt does it as a labor of love. I am very curious if he actually will be receiving any money.
- hocuspocus 8mo agoHe won't: https://bsky.app/profile/eed3si9n.com/post/3mdgbjkg4ck23 https://bsky.app/profile/eed3si9n.com/post/3mdgbjkg4ck23
- oytis 8mo agoThat's the problem with state investments in software. One can rightfully complain about misallocation of capital by private investors, but state investments are a whole new level.
- epolanski 8mo agoThe Albanian government invested 10M in Mira Murati's startup. All on the basis of her...being Albanian. Talk about public money mismanagement.
- ecshafer 8mo agoScala isn't as hot as it used to be. I think the rough Scala 2->3 transition, coupled with improvements in the base Java language, emergence of Kotlin + Android support, and popularity of Python in data science and data pipelines (lets just do everything in one language became popular) kind of made Scala not quite as popular as it could have been. Plus the long compile times are a pain. However it seems to have a really high coolness ratio for a language. The few jobs I do see in Scala are very cool looking. Very few boring looking jobs.
- sh3rl0ck 8mo agoWhat would you categorise as a "cool looking job"?
- ecshafer 8mo agoJobs that you work on hard, complicated things. Scala is relatively popular in Fintech and Finance in general. There's things like Chisel or Spark. But there are relatively few simple CRUD app companies using Scala.
- mikert89 8mo agoScala is too complicated. Most scala code bases I have worked on have no enforced structure, the language allows for all sorts of unconventional programming paradigms
- packetlost 8mo agoThat's sorta the curse of Lisps too.
- slifin 8mo agoYeah sorta I would say Clojure is a big exception to that - Clojure applications tend to be more uniform than even non lisps
- 8mo ago
- 47282847 8mo agoIs it really accurate to call this an “investment”? The details are not known but it looks like a grant or donation by a charity rather than an investment?
- brabel 8mo agoI think that any time to expect to get some benefit from it, other than a nice feeling for helping out, it should not be called a donation, at least not a charity donation.
- Kriev 8mo agoWhat a waste of my taxes.
- deleted 8mo ago[deleted]
- ezst 8mo agoHappy to throw some of mine for that. Scala may not be as popular as some other languages, but it's relevant for use cases as diverse as those for which you would otherwise use Java/C#/Go, JS/TS, C/C++/Rust (via scala-jvm, scala-js and scala-native), and it's a very nice language to work with at that.
- robert_foss 8mo agoVery on brand for Germany to invest tech 15 years past its prime.
- game_the0ry 8mo agoThis was a good joke. Surprised it got downvotes. Must be all the Germans who can't take a joke. (In case you Germans still don't get it -- that was a joke, but feel free to downvote :) )
- hocuspocus 8mo agoMore like 10. The Scala ecosystem was still really rough in 2011, remember how many companies got burnt trying to follow Twitter's footsteps (cf. the infamous Yammer testimony).
- j-pb 8mo agoAs a fellow german, this was the very first thought that popped into my head.
- halfmatthalfcat 8mo agoAs a longtime Scala lover, I’m so happy to see this. Everyone in here hemming and hawing about version incompatibilities, build tooling and such conveniently forget the warts of other languages and their ecosystems. Scala is an incredible language, especially for the language being so flexible, which is a strength, not a weakness.
- atbpaca 8mo agoI am very happy for Scala. So many people taking the time to rant on it. Yes, you can do anything with Scala in a million different ways. So what? So can you do it in C++, Python, Rust, etc. I agree that the whole "Category Theory" libraries are way over the top, but so are libraries in Java using "factories" everywhere. Every language has its pros and cons.
- neko-kai 8mo agoI'd say category theory concepts are not over the top - but category theory libraries could be! I just about never define or use explicit categoric typeclass instances - even though I almost always define categoric methods, e.g. `++` and `empty` for everything that looks like a monoid, `map` for everything that produces values, `contramap` for everything that consumes values. That's usually more than enough - and making structure explicit that way prevents your data structures from semantic drift while they're being handled by other engineers.
- nikitaga 8mo agoThis is great news, nice win for Scala. It's a great language, I've been working with it for 10 years now. Full stack Scala with Scala.js on the frontend is so very nice. My experience is mostly in fintech & healthcare startups where the language helped us get correctness, refactorability, clarity, and high velocity at the same time without blowing up the team size. Initially I learned Scala on the job, but I've been writing open source Scala for years since then. It's a cool language to learn and explore ideas in, since it has lots of elegantly integrated features (especially FP + OOP). Scala may not be the #1 most popular language, and that's fine. Popular stuff surely gets the benefits of funding and attention, and sometimes lacking such support is really annoying, like a few years ago when Scala 3 was first released, the IDEs took a looong time to catch up. But I still choose Scala despite those occasional annoyances, even though I also have years of experience in JS / TS and other languages. It's just a much better tool for my needs.
- pabs3 8mo agoHmm, I wonder when Scala will be possible to bootstrap from source. https://bootstrappable.org/projects/java.html https://bootstrappable.org/projects/java.html https://bootstrappable.org/projects/java-tools.html https://bootstrappable.org/projects/java-tools.html https://bootstrappable.org/projects/jvm-languages.html https://bootstrappable.org/projects/jvm-languages.html
- NedF 8mo ago[dead]
- pregnenolone 8mo agoI've always liked Scala as a language, but it's challenging to write high-performing and memory-efficient code on the JVM in general. Whenever you raise this issue, you'll encounter a horde of JVM fanboys who insist that it’s not true, giving you all kinds of nonsense excuses and accusing you of not measuring performance or memory consumption properly. If you genuinely want to produce well-performing JVM code, you're essentially writing C-style Java. As soon as you introduce abstraction, performance issues inevitably arise – largely due to the fact that features and modernizations from Project Valhalla haven’t yet been implemented/shipped. Scala proponents will suggest using macros and opaque types, but at scale this approach becomes incredibly cumbersome and even then you won't be able to completely prevent boxing that would actually be unnecessary; you could just as well be writing Rust.