Thread overview
Sokol now has official D bindings
May 14
ryuukk_
May 14
ryuukk_
May 14
evilrat
May 14
ryuukk_
May 14
Hipreme
May 14

I just saw this yesterday, and i haven't see anybody talk about it here, so i decided to share this great news for D here

Sokol is a popular gamedev library https://github.com/floooh/sokol

It now officially supports D, thanks to the work led by https://github.com/kassane

https://github.com/floooh/sokol/blob/master/CHANGELOG.md#13-may-2024

https://twitter.com/FlohOfWoe/status/1790043272385114421

May 14

It'll be interesting to know what the experience was for the maintainer to play around with D (for the first time?)

From what i could gather, problems encountered:

  • rvalue ref params (wich led to someone telling him to use -preview=all wich led to other issues)

  • attributes soup

  • float nan default

  • no warning on use of uninitialized floats

I think it is time to decide what to do with all these -previews, rvalue ref params should be a feature already imo

For float nan default, i personally think everything should be consistent therefore 0 initialized

May 14

LDC yet again is proving how essential it is for D, now that more OS are embracing ARM, having LDC available and maintained to support latest version of LLVM and all kind of platforms is a blessing

The maintainer is using macOS, and his library targets many platforms including the web with WASM, both supported by LDC out of the box

DMD for fast iteration time (on x86, hopefully ARM in the future)

And LDC for everything else

It's a deadly combo, thanks to everyone working hard on maintaining both projects

May 14

On Tuesday, 14 May 2024 at 12:46:13 UTC, ryuukk_ wrote:

>

LDC yet again is proving how essential it is for D, now that more OS are embracing ARM, having LDC available and maintained to support latest version of LLVM and all kind of platforms is a blessing

The maintainer is using macOS, and his library targets many platforms including the web with WASM, both supported by LDC out of the box

DMD for fast iteration time (on x86, hopefully ARM in the future)

And LDC for everything else

It's a deadly combo, thanks to everyone working hard on maintaining both projects

  • On my work with redub, I've used dmd as a default. If it is not being able to find it, it will give an warning and try LDC instead.
  • No need to change float default from nan to 0, excluding my own opinion, Walter concretely believes that nan is better than 0. I would like to at least get warnings on uninitialized floats, so it becomes 50-50 and no one will ever initialize float to nan again.
  • Could we get official LDC full D support to WASM? I haven't been having much time to work with D. When I do have time, the last thing I want to do is updating my custom runtime again. Beyond that, people always get the wrong impression from the WASM status quo. I know we won't have a garbage collection, but 90% of the work will be done. Just send a warning for anyone using D wasm runtime that support is incomplete. D always done that nevertheless.
May 14

On Tuesday, 14 May 2024 at 12:36:27 UTC, ryuukk_ wrote:

>

It'll be interesting to know what the experience was for the maintainer to play around with D (for the first time?)

From what i could gather, problems encountered:

  • rvalue ref params (wich led to someone telling him to use -preview=all wich led to other issues)

  • attributes soup

  • float nan default

  • no warning on use of uninitialized floats

I think it is time to decide what to do with all these -previews, rvalue ref params should be a feature already imo

Yep, i think it was there long enough already so rvalue ref parameters should already be in.
Also what's with this in const parameters transition, it just like umm hanging in there for years?

May 14

On Tuesday, 14 May 2024 at 12:36:27 UTC, ryuukk_ wrote:

>
  • float nan default

Complaints from C and C++ programmers could mention that at least stack variables gets initialized to something.