computational linguist more like bomputational bimgis
Yea but it’s inefficient. USB-A has a significantly lower transfer rate than USB-C so it’ll bottleneck
Objectively disgusting. How can one connector be so chunky while still being asymmetric?
a slave-master dynamic
please don’t use that term, every time i see it i immediately verge on orgasming. you’ve already made me ruin 2 undergarments today. i have a serious bdsm kink and this is not funny.
For a lot of English speakers, the “had” and “have” in contractions is completely omitted in certain contexts. It’s more prevalent in some dialects (I’m in the south US and it’s more common than not). Usually “had” is dropped more than “have”.
Also, English can drop the pronoun, article, and even copula for certain indicative statements. I think it’s specifically for observations, especially when the context is clear.
looking at someone’s bracelet “Cool bracelet.” [That’s a]
wakes up “sigh Gotta get up and go to work…” [I’ve]
“Ain’t no day for picking tomatoes like a Saturday.” [There]
“No war but class war!” [There’s]
“Forecast came in on the radio. Says there’s gonna be a hell of a lot of rain today.” [It said -> Says/Said]
“Can’t count the number of Brits I’ve killed. Guess I’m just allergic to beans on toast.” [I; I]
“House came tumblin’ down after the sinkhole opened up” [The]
“I’d” can be “I would”, mainly if used with a conditional or certain conjunctions/contrastive statements (if, but, however, unfortunately). Also when preceding “have” – e.g. “I’d have done that”. Because “I had have” doesn’t make sense, nor does “I had <present tense>” anything. “I’d” as in “I had” is followed by a past participle.
“I’d” is usually “I had” otherwise, forming the past perfect tense. But in “I’d better”, it’s a bit confusing because “had better” is used in a different sense – the “had” here comes from “have to” (as in “to be necessary to”) and can be treated as both a lexical verb and an auxiliary verb. “had better” is a bit of a leftover of more archaic constructions.
Web bloat in a nutshell and why we need to switch to things like Web Assembly more than ever. It’s not WASM, but I used Laminar which is a Scala.js library, and it’s the absolute pinnacle of (frontend) web development. Scala in general is just really great for idiomatic web code, its flexibility is unbeatable.
Another amazing alternative would be anything Rust. In fact I’ve used that much more than Scala for web. I’ve mainly used Leptos for full-stack and and Actix for backend, but I’ve seen Dioxus and Axum in good use and they both seem really great too.
Apparently Lemmy uses Leptos for its UI so… that’s a +1.
I am a Scala and Rust fan. I can corroborate what you said
The part about no semicolons/curly braces I like in Scala is that I can write a function and it’ll look virtually indistinguishable from a regular ol variable. Functions become much less of a ritual and integrate more nicely with the rest of the code. Other than that though, Rust definitely wins out because of the curly braces & semicolons. I use curly braces in most situations in Scala where I’d normally use them in Rust, and I would use semicolons everywhere in Scala if it weren’t considered unidiomatic. Whitespace-significant syntax is just really annoying to deal with. Using Python or even maybe F# makes me want to die because I keep accidentally missing an indent somewhere or indenting too much somewhere else or using the wrong kind of whitespace and the entire program implodes. At least Scala and Kotlin keep it sane
Also it’s just way harder to visually organize in whitespace based languages. You basically have to do a bunch of magic tricks to make the code look slightly different in a specific scenario than what the language wants you to. Rust allows you to actually visually organize your code easily while also having a strong style rules which you shouldn’t stray too far from (or else the compiler will yell at you).
Don’t talk to me and my Directed Hypergraph Databases again
Honestly I hate the fact that browsers’ default CSS exists. The person doing the frontend should have to specify their “default” CSS before the website even loads. I say this as both a user and a programmer, the same website shouldn’t look different or break on different browsers unintentionally due to the browser’s CSS, and I as a developer shouldn’t have to rely on reset sheets to try to patch that.
Everything would be better if it were swapped around, instead of picking out a reset sheet for a site you pick out a default style…
The world would also be better if browsers rendered pugjs/slim and scss/sass and those were the default rather than html and css but I digress…
US international layout, or make a custom layout (KbdEdit is multiplatform but there’s free Linux programs to do it too)
Elixir? Is that the weird older cousin of Gleam?
mfw non-commutativeness
I uninstalled one drive immediately, it’s so annoying. It’s also really fucky with when it updates files. If I need to use it, I’ll go on my browser
I think that’s good when the objective is to improve the language. One key thing that holds many languages back is that they’re stuck with historical baggage, and it can be pretty difficult to replace/remove “outdated” stuff without breaking everything.
I do not want to be stuck using Python 2, or Scala 2 (although there exist people who use Scala 2 instead of Scala 3).
I agree that the slow compile times are pretty bad (maybe even deal-breakingly for large projects). I think it’s kind of necessary for a language with as powerful of a syntax as Scala though, it’s pretty absurd how expressive you can get. Maybe if it didn’t target the JVM, it’d be able to achieve way faster compile times – I don’t really see a point of even targeting JVM other than for library access (not to say that that isn’t a huge benefit), especially when it has relatively poor compatibility with other JVM languages and it’s nearly impossible to use for Android (don’t try this at home).
Even more so, I think that null handling isn’t nice – I wish it were more similar to Kotlin’s. One thing I’m really confused as to why Scala didn’t go all-in on is Either/Result like in Rust. Types like that exist, but Scala seems to mostly just encourages you to use exceptions for error propogation/handling rather than returning a Monad.
A more minor grudge I have is just the high-level primitive types in general – it’s pretty annoying not being able to specify unsigned integers or certain byte-width types by default, but if it really is an issue than it can be worked around. Also things like mutable pointers/references – I don’t actually know if you can do those in Scala… I’ve had many situations where it’d be useful to have such a thing. But that’s mostly because I was probably using Scala for things it’s not as cut out to do.
With the tuple arguments point, I get it but I haven’t found it much of an issue. I do wish it wasn’t that way and it consistently distinguished between a tuple and an argument list though, either that or make functions take arguments without tuples like in other functional languages or CLI languages (but that’d probably screw a lot of stuff up and make compile times even LONGER). I saw someone on r/ProgrammingLanguages a while back express how their language used commas/delimiters without any brackets to express an argument list.
I think an actually “perfect” language to me would basically just be Rust but with a bunch of the features that Scala adds – of course the significant functional aspect that Scala has (and the clearly superior lambda syntax), but also the significantly more powerful traits and OOP/OOP-like polymorphism. Scala is the only language that I can say I don’t feel anxious liberally using inheritance in, in fact I use inheritance in it constantly and I enjoy it. Scala’s “enum”/variant inheritance pattern is like Rust enums, but on crack. Obviously, Rust would never get inheritance, but I’ve found myself in multiple situations where I’m thinking “damn, it’s annoying that I have to treat <X trait> and <Y trait> as almost completely serparate”. It would especially be nice in certain situations with const generic traits that are basically variants of each other.
Plus, I’ve always personally liked function overloading and default arguments and variadics/variadic generics and stuff, but the Rust community generally seems to be against the former 2. I just really hate there being a hundred functions, all a sea of underscores and adjectives, that are basically the same thing but take different numbers of arguments or slightly different arguments.
The custom operators are a double-edged sword, I love them and always use them, but at the same time it can be unclear as to what they do without digging into documentation. I guess Haskell has a similar problem though, but I don’t think Scala allows you to specify operator precedence like Haskell does and it just relies on the first character’s precedence. I would still want them though.
How it goes now, though, is I use Scala 3 for project design/prototyping, scripting, and less performance-sensitive projects, and Rust for pretty much everything else (and anything involving graphics or web). Scala has good linear algebra tooling, but honestly I’ll usually use C++ or Python for that most of the time because they have better tooling (and possibly better performance). I would say R too, but matplotlib has completely replaced it for literally everything regarding math for me.
C++ is inferior to Rust and should be used in no new projects unless it is absolutely necessary
Not Scala and Rust. They are my beloved, my sweethearts, my knights in shining armor.
Ok Rust does have some major issues, but not Scala…
JS or really anything you’d make a web app in (I use Rust with something like Dioxus/Yew/Leptos/Tauri), C#/.NET (I use F# because OO-style languages are ugly and a hot mess, especially C# and Java), Java/JVM (I use Scala whenever I can and Kotlin otherwise), C++ with GTK or Qt. There are a lot of options but obviously anything that’s not C++ or web is gonna give you a lackluster experience (though I have a thing against web apps and will go through a lot of hoops to have my application use a native interface)
I can’t imagine most Nvidia employees don’t make enough to become millionaires within like 5-10 years if they aren’t already. Their entry-level software engineering positions have a base pay of $147K and total compensation of $180K. The lowest paying level of senior engineers gets more like $300K… Even the ones who leave before then are highly likely to get a job with comparable pay or benefits considering they have Nvidia on their resumé.
Now, tens-of-millions-aires, I don’t think most employees get there.
I like polymorphism. Having to have a hundred differently named functions or structs or something that do the same thing but slightly differently in Rust is annoying as hell. Especially with all the underscores you have to type… If Rust were more functional though it’d make that problem go away pretty quickly.