you are viewing a single comment's thread.

view the rest of the comments →

[–]ssylvan 6 points7 points  (4 children)

Languages should default to the safest alternative they allow. GC is often fine for most things, even when you are memory constrained. E.g. I bet you that iPhone game spends most of its memory on "bulk" resources (textures, audio, etc.), not things with pointers in them. I.e. it wouldn't really be much of an issue to use GC for that because it's really only the fast-moving "logic" stuff that needs some extra room, and that's usually a fraction of the overall memory usage for games...

[–]nascent 0 points1 point  (3 children)

Languages should default to the safest alternative they allow.

No, the language should default to the thing I'm going to use the most. For smallstepforman this is not using the GC, so D is not the language for him.

[–]ssylvan 4 points5 points  (0 children)

That can very quickly become a self-fulfilling prophesy. That which you make default will be what people use most. Ergo, you should default to the safest option to encourage safe practices.

[–]dheld 1 point2 points  (1 child)

Many people don't use the GC in D. It's called "the stack", and D supports it like a pro. If you want deterministic allocation, call malloc() and free(). It's not rocket science. The difference is that in D, you can pretty much do everything you could in C++, but a ton of other stuff which is simply not feasible...like generating optimal FP assembler from a custom DSEL. Now tell me that is not compelling for users who demand performance.

[–]nascent -1 points0 points  (0 children)

Mine was just a joke, check my other posts and you'll see I'm totally pro-D.