Why I rewrote the mesh generator of Dust3D from Rust to C++
Dust3D is a free, open source low poly 3D modeling tool for video games and 3D printing. Features sketch-to-mesh, auto-rigging, procedural animation, and single-tool GLB/FBX export.
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 3,709 posts.
Dust3D is a free, open source low poly 3D modeling tool for video games and 3D printing. Features sketch-to-mesh, auto-rigging, procedural animation, and single-tool GLB/FBX export.
The “park bench” panel at the Haskell eXchange last week talked about a lot of things, but some of them can be summarised by the question ...
Interesting and unexpected details for Rust programmers learning the C programming language.
Over the last couple of years me and my colleagues here at doctronic have been busy creating and maintaining more than a dozen of individual software systems for our clients.
When Java 8 was released, I was excited to see the new Optional type. The null reference is a common source of errors in most languages…
It's been a year since I first came across the concept of functional programming. To say it's changed my life, is an unjust understatement...
Preface by Tim Ferriss I’ve written about how I learned to speak, read, and write Japanese, Mandarin, and Spanish. I’ve also covered my experiments with German, Indonesian, Arabic, Norwegian, Turkish, and perhaps a dozen others. There are only few language learners who dazzle me, and Benny Lewis is one of them. This…
A pragmatic new design for high-level abstractions Monads (and, more generally, constructs known as “higher kinded types”) are a tool for high-level abstraction in programming languages1. Historically, there has been a lot of debate inside (and outside) the Rust community about whether monads would be a useful…
Much has been written about Go’s interfaces . They’re one of the language features I like best, providing a very pragmatic trade-off between the complexity of more powerful type systems and the anarchy of duck typing. If you’re not already familiar with Go or Go’s interfaces, I’d encourage you to read an introduction…
Some good news is coming in Rust 1.86
Why call-by-push-value is the best evaluation strategy, and why it's going to take over
I delivered my traditional Go Cryptography State of the Union talk at GopherCon US 2025 in New York. It goes into everything that happened at the intersection of Go and cryptography over the last year.
Well, the title says it all!
Nithin Bekal's blog about programming - Ruby, Rails, Vim, Elixir.
and this made me wonder how many type parameters a method could have. As far as I can tell, the Java Language specification says nothing about this question. 1
I’m not sure why I decided to create an Erlang backend for the PureScript compiler.The platform is somewhat interesting, but I didn’t know it, and I don’t ha...
Let’s start with a question! Is this program well-defined? 1 2 3 4 int main() { while (true) ; } If you said yes, you’d be wrong — at least before C++26. A while (true); loop with no side effects used to be undefined behaviour. Compilers were free to assume it terminates, and some — Clang in particular — would…
I am just really bored by Lisp Machine romantics at this point: they should go away. I expect they never will....
In the first post, I took a brief look at the programming languages ATS, C#, Go, Haskell, OCaml, Python and Rust to try to decide which would be the …
Like most programming languages, Rust encourages the programmer to handle errors in a particular way. Generally speaking, error handling is divided into two broad categories: exceptions and return values. Rust opts for return values.
Dr. Alan Kay invented the term "OO Programming", but he states that modern OO programming isn't what he meant. What did he mean?