HackerTrans
TopNewTrendsCommentsPastAskShowJobs

ReleaseCandidat

no profile record

comments

ReleaseCandidat
·2 ปีที่แล้ว·discuss
> wgpu in Firefox

Ah, sorry, I didn't know that, thanks. On Chrome it uses either WebGL2 or WebGPU.

    When running in a web browser (by compilation to WebAssembly) without the "webgl" feature enabled, wgpu relies on the browser's own WebGPU implementation. 
https://github.com/gfx-rs/wgpu?tab=readme-ov-file#tracking-t...
ReleaseCandidat
·2 ปีที่แล้ว·discuss
> WGPU is an implementation of WebGPU

No.

    wgpu is a safe and portable graphics library for Rust based on the WebGPU API. 
    ...
    and browsers via WebAssembly on WebGPU and WebGL2.
https://wgpu.rs/

> WebGPU is not software, you can't use it

It's an API that you can use, like OpenGL, Vulkan, Metal, .... Here you can see the current Browser support: https://caniuse.com/webgpu
ReleaseCandidat
·2 ปีที่แล้ว·discuss
> WGPU doesn't support multiple threads updating GPU memory without interference

WGPU uses WebGPU and AFAIK no browser so far supports "threads". https://gpuweb.github.io/gpuweb/explainer/#multithreading https://github.com/gpuweb/gpuweb/issues/354

And OpenGL never supported "threads", so anything using OpenGL can't either.
ReleaseCandidat
·3 ปีที่แล้ว·discuss
Yes, but many of them have - like Blender or Linux (the kernel) - a team of professional "core" developers.
ReleaseCandidat
·3 ปีที่แล้ว·discuss
There have been "813 pull requests merged" in the 6 months between 12.2022 and 06.2023? Yes, there is more than one maintainer and many of these weren't "code changes", but nevertheless: almost 4.5 _successfull_ PRs every day?!
ReleaseCandidat
·3 ปีที่แล้ว·discuss
Thanks, and yes, I didn't think about closures.

Talking about closures, I also don't know why Jai needs explicit capture lists. In C++ and Rust I understand the need for them, because you have various ways to pass them into the lambda, but Jai doesn't seem to care, at least in the examples at https://github.com/BSVino/JaiPrimer/blob/master/JaiPrimer.md.... To be honest, I also don't see how this is different from just writing the function definition by hand, just in more than one step and you have to throw away the intermediate versions?

Btw. I just replied to say that I really like your username, I have noticed it just now :)
ReleaseCandidat
·3 ปีที่แล้ว·discuss
Ok, so let me be a bit more concrete: I do _not_ want to work with or have to maintain or use the software of people who claim of themself to be "good programmers" who are "able to handle manual memory management" (and similar) any more. Yes, of course there are exceptions and I'm not saying that John Blow isn't one of them and I also don't know if the formulation is his or of somebody else (as I don't know anything about him or his games). But the problem is that now people are drawn to the language to "proof" that they are "good programmers".

> Pretending it's only valid to acknowledge these differences in others but not in oneself is irrational.

I do hope that we can agree that people are way better at assessing others than themselves - in both ways, under- and overestimation of their own capabilities.
ReleaseCandidat
·3 ปีที่แล้ว·discuss
> Just like every language that implicitly names the current value of the iterator

Oh, i didn't know that there are any.

It would be a good idea to add the naming explicitly to the Wiki entry of loops: https://jai.community/t/loops/147, I've just found it buried in the `remove` section.

Btw. in for-loops the colon `:` is used inconsistently again, this time for naming the iterator (`foo` in this example:) `for foo: VALUES { ... }`.
ReleaseCandidat
·3 ปีที่แล้ว·discuss
I'd have preferred a `fun` (or `fn, if you insist on 2 characters) instead of the Haskell-esque double colon `::` in function definitions to make parsing them easier. And the semicolon after `case` is irritating for me too. But `foo := bar` for a type-less `foo: TYPE = bar` is too much parser-friendly syntax and inconsistent with using a double colon `::` for function types and struct definitions. And inconsistent with using just the colon in `foo: TYPE`.

How do nested for-loops work, if `it` names the current iterator?

     for particles {
        // Inside for loops the "it" object is the iterator for the current object.
        particle_left := view_left \* it.particle_size;
     }
ReleaseCandidat
·3 ปีที่แล้ว·discuss
That's true. The modern day obsession with the terminál (emulátors) is something I don't get either. But I actually did use Unix back than (mostly Irix, which was the MacOS of it s day).
ReleaseCandidat
·3 ปีที่แล้ว·discuss
> Traditionally, there has been a real lack of "better C" languages.

There never has been. There has been a lack of really successfull C alternatives for some time (after everything that wasn't unixish or Windows died, except for MacOS and Objective-C) - and still is. Rust is still less used than Pascal has been 30 years ago.
ReleaseCandidat
·3 ปีที่แล้ว·discuss
This is meant as more of a general comment than to critisize this editor: I fail to see the selling point of an editor that "can't do much", but is performant - there is an abundance of these already. If you made an editor that does "everything" and is "fast", I may be interested.

Regarding Jai: the idea about a "language for good programmers" is just about the worst thing ever to say about a language and it's community in my opinion (and I'm being paid as a C and C++ programmer for 20 years now, so I guess I'm at least not totally bad at it).
ReleaseCandidat
·4 ปีที่แล้ว·discuss
Some of the Logitech mice (MX Anywhere 2) switch the 'clickiness' (rasterization) of the scrollwheel on and off instead of sending a button click.

https://www.logitech.com/en-us/eol/mx-anywhere-2s-mouse.910-...