ponce's comments

ponce | 5 years ago | on: Ask HN: Why do you use Rust, when D is available?

This is really quite common thinking in D.

I was writing a library and a contributor popped out of nowhere. He didn't knew D. The first patch it suggested was about parsing some JSON at compile-time.

It turned out std.json the stdlib parser was able to parse at compile-time in CTFE context. So, the contributor parsed JSON at compile-time without his knowledge, without really knowing D, and the fact it worked was accidental (since the parser was n't specially designed to do that, but could).

ponce | 5 years ago | on: Ask HN: Why do you use Rust, when D is available?

Disclaimer: I've used D for an enormous time, and I tried Rust for about one hour for the experience.

Remarks:

- build times are worse in Rust, but not _that_ much worse

- with Rust error messages are plentiful and helpful to solve the error. It is a designed user experience, which is quite novel.

- the first Rust program I built downloaded no less than 146 packages, which seems to indicate the standard library is very barebones. This was an example program. So the granularity of package seems to be smaller there. I don't really like this.

- Rust has quite visibly a stronger open-source ecosystem, with lots of crates being built before a compiler release. Good.

- Rust documentation is more aimed at beginner programmers, and there is more of it.

- I just don't like to look at Rust code at all... the styling on the car is really bad

- it seems dub and cargo are very similar. Cargo download and installs a lot more cruft inside directories. Probably there is a way to have a shared directory for that.

- Rust libraries look a bit more systematically modular with the features tags ("configurations" in DUB parlance)

- it seems Rust has comparatively more C bindings than C-to-D translations in the ecosystem (vs D)

So... I'm not sure I would take Rust if starting a codebase today. It just doesn't add up for me versus D.

I try to be someone practical and need actual measurable improvements in the daily practice.

For me the key take-away is the very consistent experience when interfacing with Rust tools, since this experience has been designed and fine-tuned to be easy. I think D can learn some UX tricks from it.

ponce | 11 years ago | on: Why Go Is Not Good

Go doesn't allow to create reusable, zero-cost abstractions so I guess it's not more concise than C++ either.

ponce | 12 years ago | on: Intel Clang-based C++ Compiler [pdf]

I remember earlier AMD processors, supporting SSE1 (with the CPUID bit on), but this was so slow to be unusable in practice, slower than general instructions.

In this case, the optimal thing to do was not to use these instructions despite the processors claiming support.

ponce | 13 years ago | on: Mozilla Game On

So, as a Game On 2010 contestant, my entry is now gone from their site? I prefer to participate to js1k which does not erase entries. Also the reader should be aware that he will be in competition with games in development for years, some run by companies. (edit: not to mention the sudden urge to send prizes now instead of in due time)

ponce | 13 years ago | on: I am depressed and I need someone to talk to

I would advise to search energically for _root causes_ for your illness, have a lucid stare at your life and ask yourself why you feel bad now. Perhaps you have missing information. (edit: attention this may lead to extremely discomfortable transitional states)

ponce | 15 years ago | on: Exercise More to Hack Better

I commute by bike (2x30 min/day), go running 1h30 once a week and have a rowing machine (1h/week). I don't want to live without these highs. It also helped me in productivity and mental illness.

ponce | 16 years ago | on: The Case for D

A language without purity / proper constness / powerful static checking will not be automatically parallelized.

ponce | 16 years ago | on: The Case for D

Maybe you could have a read at Modern C++ Design by Andrei. A mind expanding book with incredible insight in meta-programming.

All this "template maelstrom" makes sense and is unavoidable to have powerful and expressive statically-typed languages.

page 1