Catonano is a user on mastodon.social. You can follow them or interact with them if you have an account anywhere in the fediverse. If you don't, you can sign up here.

do fans of the D language say "I want the D"???? 🤔

@a_breakin_glass @grainloom
Honestly, everybody who uses go should just switch to D.

(I'm not 100% sure the same applies to rust. Maybe like 60-75%?)

@a_breakin_glass @grainloom
It might. I haven't been able to glean specifics from rust fans about what makes rust worthwhile, other than "it's pointer safe" which is super common even in compiled languages these days.

@enkiv2 @a_breakin_glass linear/affine/whatever typing is not at all common, I know about maybe 3 practical languages that have it and only one is used widely: Rust

plus, it has no runtime, has traits instead of classic OOP, has a powerful type system, has iterators, so you can write functional style code.... and that's just what it already had at 1.0

it also has generators now (not sure if it's in stable)

oh, and a nice package manager

@grainloom @enkiv2 @a_breakin_glass I'd summarize some of those points by saying Rust takes the best lessons from the last several decades of programming language research on how to help programmers write modular reusable software. Many of those lessons are not complicated (sum types and generics are so incredibly useful and mostly very simple ideas) but the careful design to incorporate them all into a single language is important.

@jamey @grainloom @enkiv2 @a_breakin_glass me, I've always thought the best way to make reusable software was to write up your algorithms in pseudocode so anyone can use them

@kara @jamey @grainloom @a_breakin_glass
Pseudocode is just a poorly-defined language that nobody really knows how to unambiguously interpret. I prefer to avoid it whenever possible.

@a_breakin_glass @enkiv2 @jamey @grainloom well, worked for "Numerical Methods"!

my point, put across in a semi-joking manner, is that "reusability" as currently defined is a suspect ideal, at best

reusability should be achieved by coming up with universal abstractions that can exist _apart_ from code

reusing the code itself is merely an expression of that universal sin of computer geeks, valuing mere convenience

@kara @a_breakin_glass @enkiv2 @grainloom Honestly I think you and I may have a fundamental difference in values if you believe that valuing convenience is a sin. I want more people to be able to make computers meet their needs, and that means that yes, they'll use things like Electron and left-pad because we haven't given them better tools. People have problems to solve and my goal is to make that easier, not blame them for doing it wrong. 🤷

@a_breakin_glass @enkiv2 @grainloom @jamey it's that core computer geek value that's made Amazon into the unstoppable corporate titan that it is *shrugs*

@kara @a_breakin_glass @enkiv2 @jamey Iiii actually disagree. Geeks like learning stuff.
Laziness, however, is a nearly universal human... value? Property? ... thing we do, whatever.

@grainloom @kara @a_breakin_glass @jamey
Yeah. People do as much work as possible when the nature of the work interests them, and as little as possible otherwise.

The mark (and dare I say definition) of a geek is that a geek finds things interesting that most people would find tedious -- the result being that we do things like invent category theory or obsess over the best way to represent first-order logic, or reimplement make with XML.

@jamey @a_breakin_glass @kara @grainloom
(Of course, geeks rarely even share their passions with other geeks.)

I sympathize with people who make poor decisions out of convenience. I think it's possible to make systems that are convenient for both implementors and end-users (and don't have awful externalities like wasting memory and cycles), and as someone who cares about this stuff, it is *my fault* that the pickings are slim enough that bad tech seems most convenient, & my responsibility.

@grainloom @kara @a_breakin_glass @jamey
Like, most people don't give two shits about language design or other kinds of UX design. (Most people don't even really know that there are different ways to do it than they're used to.)

As people who care, we all share responsibility for making a world where the good stuff is also the convenient stuff, and where people are aware of it. And, we all share a little bit of the responsibility when people use electron or XML or Java.

Catonano @catonano

@jamey @enkiv2 @grainloom @kara @a_breakin_glass

thanks

this was an interesting discussion

· Web · 0 · 1