Idiomatic D using GC as a library writer
Hipreme
msnmancini at hotmail.com
Sun Dec 4 13:03:07 UTC 2022
On Sunday, 4 December 2022 at 09:53:41 UTC, vushu wrote:
> Dear dlang community.
>
>
> I am unsure about what idiomatic D is.
>
> Some of the Dconf talks tells people just to use the GC, until
> you can't afford
> it.
>
> If there are documents that describes what idiomatic D is then
> I would appreciate it.
>
>
> So my questions are:
>
>
> What are your thoughts about using GC as a library writer?
>
>
> If you wan't to include a library into your project aren't you
> more inclined to use a
>
> library which is gc free?
>
>
>
> If that is true, then idiomatic D doesn't apply for library
> writers.
>
> Since to get most exposure as a D library writer you kinda need
> to make it gc free right?
>
>
>
> Cheers.
"Until you can't afford", is something really extreme. There is a
bunch of ways to deal with GC memory, what I would say that can't
afford is when you're constantly allocating memory and because of
that, making the program more prone to execute a collection. I
haven't had any problem with the GC yet. If you think your
program is slow, pass it on a profiler and you'll know the real
problem. Don't think too much about that or else you're gonna
lose a heck lot of productivity and end up creating needlessly
unsafe code.
If you're still gonna be hard headed against the GC, at least use
slices when allocating from malloc, makes your code safe,
readable and less variables to think about. Don't use raw
pointers unnecessarily, and right now, the only reason pointers
have been used in my code base was not for allocated memory, but
for being able to modify a variable from another place when you
need to store a variable reference. If you're only gonna modify
it inside the function, use `ref` instead.
More information about the Digitalmars-d-learn
mailing list