Live data from Hacker News

The reference D compiler is now open source

forum.dlang.org

261–270 of 313 posts

Re: The reference D compiler is now open source

#261
post #17

Earlier quoted context omitted.

D is easier than Rust and safer than C++. That is a valuable point IMHO.

I agree it is valuable. But I still think there are better alternatives now. Depending on your priorities and constraints, OCaml, Go, F#, Scala, and Swift all fit the same description (easier than Rust, safer than C++) and they're in the same realm for performance (slower than C, C++, Rust, etc., but not by much). D could have been there if they had a decade or so with a bigger community.

I recently invested in learning Clojure, enough to get some practical things deployed, but I am far from being a Clojure advanced developer. I wanted to learn a Lisp dialect and am glad I chose Clojure. Rich Hickey is a guru. I don't have any gripes with Clojure but I'm not too deeply invested. Several years ago I was also enamored with Julia, which I was investigating for CPU intensive programs, but never had the time to commit and I was concerned about Julia being too youthful and possibly not getting enough traction. Should I learn D for CPU intensive programs? Also, with Clojure I can make use of the many Java libraries for I/O due to Clojure's good Java interop. Does D have the analogous benefit of tried and tested I/O libraries? Thanks for any suggestions, D has me intrigued.

Re: The reference D compiler is now open source

#262
post #257

Earlier quoted context omitted.

> numerical analysis on massive matrices. However, a lot of it is being rewritten In Julia, too.

Probably some, but in the industry I'm referring to, nobody is going to let you write a critical system in some new relatively unknown language. Options are Fortran, C, C++, or Java. Julia is cool, but still really new in the cosmic scale.

> nobody is going to let you write a critical system in some new relatively unknown language.

Whose permission do you seek who will "let you" or not "let you" write a critical system in some new relatively unknown language? What if you work for yourself or are creating a startup?

Re: The reference D compiler is now open source

#264

Earlier quoted context omitted.

I think you answered yourself why D is not more popular with the "cool kids". C++/Java/C# are overengineered, verbose, horrible languages to use. Java is a bastard of C++, and C# is the better looking bastard. Yes we use them, and even like them in a weird Stockholm Syndrome way, but they're not fun to work with. We use them because we need them, not because we enjoy them. Disclaimer: the personal pronoun "we" as use…

Java is very simple and has, hands down, the best tooling of any major language out today. That is why it is the most popular. Java isn't my favorite language, but even I can remove my blinders enough to see its strengths.

Java had a full court press advertising campaign with powerful partners at a time when 'web' was the new thing and it was going to be that language. The superior support and tooling was a result and sustains it to this day.

Re: The reference D compiler is now open source

#265

Earlier quoted context omitted.

That doesn't make it good. That makes it bad. It doesn't protect the rights of users. It's really important that developer tools are GPL, as that prevents vendor lock-in and EEE tactics.

How is preventing me from making a closed sourced derivative of dmd in any way protecting my rights as a a user of the source?

It doesn't protect YOUR rights as a user, it protects other people from closed source software.

Re: The reference D compiler is now open source

#266
post #233

Earlier quoted context omitted.

Java is very simple and has, hands down, the best tooling of any major language out today. That is why it is the most popular. Java isn't my favorite language, but even I can remove my blinders enough to see its strengths.

Say what? The words that come to mind when I think of Java tooling is certainly not "best". More like "Bloated, slow, too-fscking-much-XML"

Whenever someone brings up XML as a critique of Java, they might as well be saying, "I haven't glanced at Java in well over a decade".

There's just no faster route to completely discrediting yourself in eyes of anyone who's actually used it recently.

Re: The reference D compiler is now open source

#267
post #257

Earlier quoted context omitted.

> numerical analysis on massive matrices. However, a lot of it is being rewritten In Julia, too.

Probably some, but in the industry I'm referring to, nobody is going to let you write a critical system in some new relatively unknown language. Options are Fortran, C, C++, or Java. Julia is cool, but still really new in the cosmic scale.

I was surprised to learn that Blackrock uses Julia.

https://juliacomputing.com/case-studies/blackrock.html

Re: The reference D compiler is now open source

#268

Earlier quoted context omitted.

That's intriguing. I've done a bunch of XLL coding in C++ and C# (with Excel-DNA) for trading floor Excel over the years. Gotta wonder what you're building in D. Have you got a quant analytics lib in D? Or maybe market data connectivity, or historical data? Anyway, you might want to take a look at this [1], which can serverize XLL spreadsheets with no sheet or code changes. Works with RTD too. Once a pricing or risk…

Thanks for sharing. Friend of mine started a company called Resolver Systems to do that for Python (end result). Nice experiment but bad timing for launch just before the crisis. Have got some algorithmic and infrastructure things in D, though plenty is done in other languages too. I ported Bloomberg API to D - it's open sourced bit currently not yet directly used in production. May start to be in coming months. It's…

Giles Thomas? I remember going to the Resolver One launch in 05 or 06ish. About the same time as I was working with a couple of rates traders plugging monster spreadsheets into my etrading infrastructure; one doing rates structured notes pricing and quoting on Bloomberg, and the other market making ETO structures on Liffe. Market making out of a spreadsheet on a limit order book was challenging! Those sheets were too big to turn into code quickly, and the traders wanted to retain direct control over the pricing logic.

The Dutch girl must be Felienne :) "Spreadsheets are code"!

Re: The reference D compiler is now open source

#269

Earlier quoted context omitted.

My early impression with Rust is that it's more ambitious than it is capable of delivering. Lifetime annotations in particular are incredibly ugly. It's the kind of thing that makes me think: "...ok, so this is why other languages don't simply do static lifetime checks" and I guess I expected Rust to be the solution for that problem; it is instead not a solution, but the deliberate decision: "let's do static borrow c…

Note that the vast majority of lifetimes in Rust are elided so that no explicit annotation is required. When the compiler can't figure out the annotations, or if you're declaring a type that contains a borrow, then you need annotations. The annotations have, for the most part, faded into the background for me. I don't find them to be particularly pervasive in the code I write, and when I do need them, it's usually to…

I agree with your characterization of the benefits and tradeoffs of Rust. I think that regardless of whether it solves the pain point, at the very least there needs to exist something that undertakes static lifetime checking. I respect Rust from a distance. It's not in line with my particular needs and/or expectations, but I'm glad it exists, because something needs to exist which does what Rust does, and I'm not aware of anything else that does it.

Other than lifetime annotations, I have a couple other niggling issues with it but I suspect it's because I haven't fully grasped certain things yet, and so I'll refrain from commenting on them for the moment.

Re: The reference D compiler is now open source

#270

Earlier quoted context omitted.

If constexpr is not inspired by static if. In fact, proposals of static if and things like it were explicitly rejected by the committee.

AFAICT, yes it was. Obviously, it wasn't accepted as-is , but it was certainly motivated (i.e. "inspired") by the success of "static if" in D.

I do not agree at all. It's very obvious functionality, and would be in D either way.
Post reply on HN