[-] lysdexic@programming.dev 1 points 6 months ago* (last edited 6 months ago)

The Philosophy section has quite a few wonky arguments; I’d skip it altogether.

I agree. I wish they moved that to a standalone section so that it could be easily skipable. Reference docs can and should have a rationale, but a lengthy rant is not what leads people to the site.

[-] lysdexic@programming.dev 1 points 6 months ago* (last edited 6 months ago)

Because you’d have to stash your modifications to be able to switch branch.

OP said nothing about stashing, only committing WIP commits to feature branches. I don't think none of your remarks apply, because if you really need stuff from the WIP commits you can also cherry-pick them or checkout specific files.

[-] lysdexic@programming.dev 1 points 6 months ago* (last edited 6 months ago)

When you have 1000+ Cypress tests, for example, it takes time to run, plain and simple.

It's one thing to claim that tests need time to run.

It's an entirely different thing to claim that the time it takes to run tests is proportional to test coverage.

More often than not, you have massively expensive and naive test fixtures in place that act as performance boat anchors and are massive bottlenecks. Thousands of tests run instantly if each test takes around a few milliseconds to run. For perspective, the round trip of network request that crosses the world is around a couple of hundreds of milliseconds. A thousand of sequential requests takes only a couple of minutes. If each of your tests takes that long to run, your tests are fundamentally broken.

[-] lysdexic@programming.dev 1 points 7 months ago* (last edited 7 months ago)

Yes. Multiple historical layers (...)

This is reaching a level of idiocy that's completely unheard of.

Just say you know nothing about what you're saying and you're completely oblivious, and sit out the rest of the discussion.

[-] lysdexic@programming.dev 1 points 7 months ago

Well ok, but the concern is about the weaknesses, Mr. Stroustrup.

I don't think these discussions on "weaknesses" come from a place of intelectual honesty. None of these arguments even touches the fact that there are already a myriad of freely available static code analysis tools and memory profilers that do a very good job catching memory safety issues.

For some unexplainable reason, these criticisms of C++ always focus on a single strawman: these tools do not exist and no developer in the world cares about the topic.

[-] lysdexic@programming.dev 1 points 7 months ago

I enjoyed the read so much that I've created a community dedicated to data structures and algorithms: !data_structures@programming.dev

[-] lysdexic@programming.dev 1 points 11 months ago* (last edited 11 months ago)

Nothing. Just read Mozilla’s Manifesto

Your trolling skills are subpar but given this is a lazy weekend I guess I'll bite just for the entertaining value.

Let's go through "Principle 2, 3, 4 and 7", shall we?

Principle 2 The internet is a global public resource that must remain open and accessible.

Making source code available through GitHub is a realization of Principle 2. You got it exactly backwards.

Principle 3 The internet must enrich the lives of individual human beings.

I don't even know what could possess you to believe that making a software project available through GitHub would jeopardize this. Anyway.

Principle 7 Free and open source software promotes the development of the internet as a public resource.

That's what making FLOSS projects available to the public through GitHub does. GitHub, by providing managed hosting to Mozilla to host Firefox's project tree and making it available to the public, is unquestionably meeting this goal, both in its letter and its spirit.

You need to put some effort into finding things to be outraged about.

[-] lysdexic@programming.dev 1 points 1 year ago* (last edited 1 year ago)

Unless I’m misreading, you brought monads into it.

You're misreading it. What do you think a 'Result' type is?

[-] lysdexic@programming.dev 1 points 1 year ago* (last edited 1 year ago)

compiler support

That remark was on sum types, not monads. You do not need "compiler support" to have Result or neither monads in C++. There are already plenty of libraries that implement those. I use them in some of my projects. No compiler support needed.

As I said, sum types are not required for Return or Either monads. At best, they are convenient.

[-] lysdexic@programming.dev 1 points 1 year ago

I already explained it to you: protocols apply to types you do not own or control, let alone can specify a base class.

You just specify a protocol, specify that a function requires it, and afterwards you can pass anything to it as-is and you'll be able to validate your calls.

view more: ‹ prev next ›

lysdexic

joined 1 year ago
MODERATOR OF