HNHacker News
TopNewBestAskShowJobs

zdimension

408 karma · joined February 25, 2022

zdimension.at.hn

I make things with computers.

* my blog with text on it: [zdimension.fr](https://zdimension.fr) * my code: [github](https://github.com/zdimension)

[ my public key: https://keybase.io/zdimension_; my proof: https://keybase.io/zdimension_/sigs/YsDs65xqRbedgqtKAxAoazoy9U-04Kju7RV7PwibWyA ]

submissionscomments
zdimension··on Stack Machines and Where to Find Them
Quick blogpost about recursion, stack machines, and macros.

As always, all feedback is welcome!

zdimension··on From math to machine: translating a function to machine code (2017)
Shameless self-plug: I wrote a [blog post](https://zdimension.fr/crabs-all-the-way-down/) about this, where I talk about implementing an ARM CPU in logic circuits and running code in it
zdimension··on Swift Achieved Dynamic Linking Where Rust Couldn't (2019)
The result of Microsoft developers in the 90s drunkenly making up an object model on top of C with the goal of it being cross-language and cross-platform (in theory). The idea being that you can define an interface and implement it in any language and consume it in any language. A good idea in theory. In practice, DLL hell often made the experience unpleasant. A big part of Windows's APIs are COM-based. For historical reasons it's also used at the core of a few macOS system components, hence the grandparent comment
zdimension··on Show HN: Otterkit – COBOL compiler for .NET
Seeing code like that reminds me a lot of the J# days, when you basically had a Java 1.1 standard library implemented on top of .NET. I played with it a bit a few years back, even ported an AWT to it (imagine using AWT in C#): https://github.com/zdimension/awt2048_csharp/blob/master/Pro...
zdimension··on Rust Unpopular Opinion
> The only superfluous thing I love is the ->, which is much better than the C convention of putting the return type before the function name (IMO).

For what it's worth, C++11 supports that syntax:

    auto thing(int a, bool b) -> string;
zdimension··on Code like it's 1998 with VBScript, JScript, Ruby and Perl, in your Rust files
New and revamped version of inline-vbs. It originally only supported VBScript, but it's now equipped to support pretty much any Active Scripting engine (though I have to add the CLSIDs by hand).

A Haskell Active Scripting engine is rumored to have existed, but the only thing I could find online is something called HScript, relying on the old Hugs interpreter, and it's not Active Scripting, it's just an unrelated ActiveX component that simulates it in IE.

zdimension··on I still use Flash
Emitting assembly code for binary output for easier debugging is a hell of a good idea, I'm gonna steal that one.
zdimension··on ChatGPT produces made-up nonexistent references
Some of the links, funnily, are based on "real" links: https://www.cs.cmu.edu/~fp/courses/lp/lectures.html is broken but https://www.cs.cmu.edu/~fp/courses/lp/ is the page for a Logic Programming course.

https://www.cs.purdue.edu/homes/hosking/726/html/prolog_list... is broken, but there are many pages in the format https://www.cs.purdue.edu/homes/hosking/XXX corresponding to courses taught by that guy, but 726 is nonexistent.

zdimension··on Ask HN: Which old, functional, electronics do you have?
Got an old Burroughs C3155 calculator from 1971, fully functional. More reactive than Windows 10's calculator.
zdimension··on How I learned to stop worrying and love macros
Glad you liked it! If you want to learn Lisp, I'd recommend something like Racket (implementation of Scheme, a dialect of Lisp), it's a "batteries included" Lisp that should be easier for a beginner to learn. The built-in code editor (DrRacket) is, eh, good enough.
zdimension··on How I learned to stop worrying and love macros
Thanks! Glad you liked it!
zdimension··on How I learned to stop worrying and love macros
Sorry about that! I'm still trying to find a way to get good support for dark mode with a dynamic dark mode switcher, and it seems that the current one I'm using (from V8 labs) behaves... erratically when JS isn't enabled. I'm working on it!
zdimension··on How I learned to stop worrying and love macros
Thank you so much! Glad you liked it! If you want to learn Rust, check out the book (https://doc.rust-lang.org/book/) and Rustlings (https://github.com/rust-lang/rustlings) (runnable in the browser), both are amazing resources
zdimension··on How I learned to stop worrying and love macros
TIL, I'd never have thought something line gensyn could be possible using C macros (though this is an extension). This is both amazing and horrible
zdimension··on Running Rust on Logic Gates
Thank you!
zdimension··on Running Rust on Logic Gates
Ah. Indeed, I don't have an FPGA on hand to synthesize all this to real silicon, but it would totally be possible (Digital has support for FPGA synthesis)
zdimension··on Running Rust on Logic Gates
I'm sorry, what does HLS mean?
zdimension··on Running Rust on Logic Gates
Thanks!
zdimension··on Show HN: Crabs All the Way Down – Running Rust on Logic Gates
Thanks! Making a whole post on the CPU could be fun, I'll try giving it a shot next week.
← PreviousPage 4 of 4