Live data from Hacker News

My Vision of D’s Future

dlang.org

51–60 of 211 posts

Re: My Vision of D’s Future

#51
post #37

What about -betterC? I always thought this was a nice "pivot" for D. It would be great to have more support for this direction. You can't avoid malloc there, but maybe some instrumenting for leak detection or some libc replacements that exploit or are exploited by the language. Other than that, I'm okay with anything that was already in Eiffel or Modula-3…

BetterC was created at first to make it easier to port D compiler from C to D. Then people realized that it might be interesting to have D without GC and without runtime, because it makes it trivial to port to other platforms such as embedded, mobile or WASM.

The problem is, betterC is kind of in that awkward spot. It's not comparable to the "real" D, and if you can live with betterC, you might as well just use C and enjoy the wide C ecosystem.

Re: My Vision of D’s Future

#52

Can somebody enlighten me, why use D when there is Rust/Go? I think on almost all cases, and also having a bigger community, it is a win for Rust/Go.

I work in c++ and D was designed in part to address a lot of c++ complaints. so I find myself with very few issues while writing D. it's just a very enjoyable experience (subjective ik) the meta programming is very cool also

I am worried the push towards integration with C++ will just turn D into a cheap C++ clone. We already got copy constructors, just to interact with C++ code. More C++ features to come.

Re: My Vision of D’s Future

#53

I didn't submit the link but I did write the blog post. AMA!

Thanks Atila! I'm curious about your work around reflection, care to give more details? This is one of the great strength of D, and having some API consolidation sounds awesome. Also: any opinion about runtime reflection capabilities? I love compile-time reflection as much as any other D user, but sometimes runtime reflection can do wonders if used parsimoniously.

I'm working on a library right now that, I hope, will have an easy to use API. It'll also have a "mixin/ctfe version", whereby all reflected characteristics are returned as strings that can be mixed in. This opens the door for runtime reflection as well. It's in the works.

Re: My Vision of D’s Future

#54

> Traditionally this is done by specifying data structures and RPC calls in an Interface Definition Language (IDL) then translating that to the supported languages, with a wire protocol to go along with it. > With D, none of that is necessary. One can write the production code in D and have libraries automagically make that code callable from other languages. If you're using an RPC IDL you explicitly do not want to s…

You could share D .di files, which are akin to C/C++ headers, but automatically generated by the compiler.

Re: My Vision of D’s Future

#55

Earlier quoted context omitted.

I work in c++ and D was designed in part to address a lot of c++ complaints. so I find myself with very few issues while writing D. it's just a very enjoyable experience (subjective ik) the meta programming is very cool also

I am worried the push towards integration with C++ will just turn D into a cheap C++ clone. We already got copy constructors, just to interact with C++ code. More C++ features to come.

Copy constructors were needed due to type checking const/immutable copying. C++ interop was just icing on the cake.

Re: My Vision of D’s Future

#56
post #12
post #5

Earlier quoted context omitted.

The sad part is, every time I type dlang in google for something, it tries to correct it to golang and that's terrible. duckduckgo doesn't do that.

I mean, Go is funded by google. So, that's kind of what you get when you use a search engine that is run by a major advertising corporation, I think. I hold a rather controversial (at least for HN, apparently) opinion that, I don't think we can expect a corporation to be impartial if there's no legal impetus on it and there's no monetary reason for them to act impartially. Google is a business, that makes money from…

Did you try typing it in ? It does nothing of the sort and goes to dlang's page.

Re: My Vision of D’s Future

#57
post #47

Earlier quoted context omitted.

I find that D is about as easy as Python to get into. Being able to use rdmd as a shebang makes D almost feel like as scripting language. A lot of Python was also pretty easy for me to directly translate into D. Here is an example: http://inversethought.com/hg/medcouple/file/tip/medcouple.py... http://inversethought.com/hg/medcouple/file/tip/medcouple.d#...

While I enjoy using D, I find it hard to use at times. Especially if someone isn't a C++ veteran, as soon as heavy template usage comes into play I get confused, and error messages are useless because it's several screens of errors with multiple isX() && !isY() && isZ() conditions for types. Most of the standard library function calls return some opaque Result type which isn't obvious how to progress from. Only after…

Yes, there's an extra barrier with D because of type checking, but in exchange, you get compile-time checks. I actually kind of like those template errors because they tell you what kind of Python-like compile-time duck-typing D is trying to use!

Oh, and you can also use type deductions for function declarations! Just make it a template and let D figure out for you what type you want, or use typeof to record the type you want and use that typename in your function declaration.

Re: My Vision of D’s Future

#58
I love D and one space I want to see more of is DMD on SBC's and moreso than that D running on WebAssembly, Go and Rust do it. I consider Rust and Go the main competitors to D, not sure if others would agree, but that's just my view. Other than that it's a great language.

Re: My Vision of D’s Future

#60

I love D and one space I want to see more of is DMD on SBC's and moreso than that D running on WebAssembly, Go and Rust do it. I consider Rust and Go the main competitors to D, not sure if others would agree, but that's just my view. Other than that it's a great language.

Let's be real, in the real world D, go or rust are not competitors to anything. Just take a look at http://www.modulecounts.com to see the gap between language ecosystems.
Post reply on HN