On Friday, 2 February 2018 at 15:06:35 UTC, Benny wrote:
You want to produce PDFs? fpdf 2015-Apr-06, a very limited PDF
generation tool last updated 3 years go.
While not as trivial as just using a dub package, D easy interop
with C means you can use C libraries for PDF like libharu or w/e.
* Are you targeting C developers?
Sure BetterC is a way towards that but again, what do you offer
more then Rust? I see C developers more going for Rust then D
on this point. Or hell even Zig or Jai or whatever 3 letter
flavor of the month language.
The problem with flavor of the month languages is that people
switch to them, play with them for a bit and abandon them. To
quote Bjarne Stroustrup: "There are only two kinds of languages:
the ones people complain about and the ones nobody uses".
Languages like D or Java fall into the "get stuff done" category.
They don't try to reinvent programming, they don't use the latest
abstract higher order category theory union type lambdas, so they
are considered boring by the language-hoppers. That's not a flaw
of the language.
Personally I agree that BetterC isn't a good alternative for C
programmers. Sure, you get some benefits of D, but you will lose
many benefits of C and you'll have to constantly fight "wait, can
I use this in BetterC or not" kind of thing.
* Are you targeting Go, Crystal or new language developers?
The irony is that Crystal is already advertised as basically
production ready, but there is zero support on Windows
whatsoever. So D has a big advantage here :)
I am sure there will be lots of opinions regarding this post
but its suffice to say that my decision to go with Go ( no pun
intended ) is finally. I hope this final post is some
indication of the issues that have plagued my decision process.
I think the comparison was too unfair for D in the first place.
All languages evolve. Go actually tried to establish itself as a
systems programming language, later establishing itself as a
webapp programming alnguage. Rust was pushing GC from the start,
only later switching to the whole static analysis borrow checker
all the way thingy. HTTP servers is kind of Go's niche, so there
is an expectation for all the protocols to be supported and
libraries readily available. If you were to say do the same
comparison for e.g. game development, Go wouldn't look as