HNHacker News
TopNewBestAskShowJobs

bntr

83 karma · joined November 20, 2017

https://github.com/bntre
submissionscomments
bntr··on Lego's 0.002mm specification and its implications for manufacturing (2025)
Duplo is also compatible with regular Lego. We used Duplo for the big structure and Lego on top for details. Great way to build huge stuff quickly.

https://upload.wikimedia.org/wikipedia/commons/0/04/LEGO-kom...

bntr··on Show HN: Visual Lambda Calculus – a thesis project (2008) revived for the web
Thanks! I liked the pics here: https://piedeleu.com/posts/diagrammatic-lambda-calculus/

I'd love to see them smoothly animated.

bntr··on Show HN: Visual Lambda Calculus – a thesis project (2008) revived for the web
Seems like it went to the wrong post.
bntr··on Show HN: Visual Lambda Calculus – a thesis project (2008) revived for the web
I like this catalog: https://github.com/prathyvsh/lambda-calculus-visualizations

And it seems that John Tromp's diagrams originate from David C. Keenan's Mockingbird (1996),

and Bubble Notation comes from Wayne Citrin's Visual Expressions (1995)

bntr··on Show HN: Visual Lambda Calculus – a thesis project (2008) revived for the web
You can also construct your own puzzles and share them via URL.

Example: https://bntre.github.io/visual-lambda/#workspace=H4sIAAAAAAA...

bntr··on Show HN: Visual Lambda Calculus – a thesis project (2008) revived for the web
For comparison: factorial(3) visualized in two different notations.

John Tromp's Lambda Diagrams (via 2swap): https://www.youtube.com/watch?v=RcVA8Nj6HEo&t=1346s

Bubble Notation: https://www.youtube.com/watch?v=aRgu8S3Pnb8

bntr··on 1D Conway's Life glider found, 3.7B cells long
A tiny experimental "continuous-motion" Life glider I once made - an artistic take: https://bntr.planet.ee/lj/glider.gif
bntr··on Show HN: Reverse perspective camera for OpenGL (Three.js)
Exactly. Reversing the z-test is one way to get a reverse-perspective effect, but it doesn't allow for a smooth transition between projections (like dolly zoom).
bntr··on Show HN: Reverse perspective camera for OpenGL (Three.js)
For an extra dose of nausea, there's also a cross-eye stereo version: https://bntr.planet.ee/temp/rp/

(Alt + mouse wheel changes the eye distance)

bntr··on Show HN: Reverse perspective camera for OpenGL (Three.js)
No performance hit - it's just a custom projection matrix. The rest of the rendering pipeline works exactly the same as with a normal camera.
bntr··on Show HN: Strange Attractors
Great visualization! It would be good to add some fog for a better perception of 3D.
bntr··on Dithering – Part 1
Once I made a transition between two ditherings: https://github.com/bntre/dithering-gradient-py
bntr··on The Ruliology of Lambdas
Another notation showing the construction of the predecessor function: https://www.youtube.com/watch?v=CWzn2ucPMdg
bntr··on The Ruliology of Lambdas
The most complete catalog I've found: https://github.com/prathyvsh/lambda-calculus-visualizations
bntr··on Xenharmlib: A music theory library that supports non-western harmonic systems
My actual question: do you use xenharmlib for composing?

I assume this is your album: https://fabianvallon.bandcamp.com/album/a-different-path-for...

Was xenharmlib used in it, or some other software?

bntr··on Xenharmlib: A music theory library that supports non-western harmonic systems
A bit tangential, but I recently made a xenharmonic-related library too - focused more on the visual/harmonic space side:

https://github.com/bntre/cs-rationals/blob/master/RationalsE...

Demo piece: https://www.youtube.com/watch?v=y_x4vtS_I7w

bntr··on Show HN: Curved Space Shader in Three.js (via 4D sphere projection)
Thanks! The cube mapping idea is really interesting — I didn’t know about that approach. However, I doubt it would help in my case, where the distortion is strong enough to flip the depth order of objects.

Maybe these methods could be combined somehow, but it seems simpler to use subdivision (as also mentioned in that thread) — perhaps selectively, for objects near the periphery where distortion is strongest.

bntr··on Show HN: Curved Space Shader in Three.js (via 4D sphere projection)
Thanks — your method makes more sense now. I’m not very familiar with architectural design problems, so I didn’t fully grasp how this technique helps build a more complete understanding of the internal structure of composed objects. The final image reminds me of a kind of holographic source.

When I think in that direction, it seems more appropriate not to add spatial dimensions (like 4D), but to add animation to your method (shifting or rotating the original composed object). That might help an untrained viewer better understand the usefulness of the final projection.

bntr··on Show HN: Curved Space Shader in Three.js (via 4D sphere projection)
Thanks! I didn’t know about G4MF — looks cool. What I’ve missed more often, though, is 5×5 matrices for real 4D transformations.
bntr··on Show HN: Curved Space Shader in Three.js (via 4D sphere projection)
Thanks for the kind words and for sharing your thoughts! I actually remember Jenn3d as well — the animations always reminded me of some kind of shimmering foam.

Unfortunately, I couldn’t quite grasp the method you’re describing — perhaps I’m missing some illustrations. (By the way, links [2] and [3] seem to point to the same video, and I’m not sure they match your description.)

It sounds like you’re suggesting a way to slice objects into almost-repetitive sections, so the brain can reconstruct a fuller picture — a bit like how compound eyes work in insects.

bntr··on Show HN: Curved Space Shader in Three.js (via 4D sphere projection)
Do you mean applying geometric distortion in the fragment shader? I'm not quite sure how that would work (I'm not so familiar with shaders at that level).

I've heard of true 3D bump mapping being done in fragment shaders (not just lighting), but I can't really imagine how more radical geometric distortion could be implemented there.

bntr··on Show HN: Curved Space Shader in Three.js (via 4D sphere projection)
VR has come up a couple of times in response to my experiments - maybe it’s time I give it a try.

I once tried a cross-eye 4D view: https://github.com/bntre/40-js

bntr··on Show HN: Curved Space Shader in Three.js (via 4D sphere projection)
I'm not entirely sure I understand the question. I doubt that any kind of sphere other than the abstract mathematical one (X²+Y²+...= 1) would be suitable for transformations like stereographic projection.
bntr··on Show HN: Curved Space Shader in Three.js (via 4D sphere projection)
The surface of a 4D sphere (a 3-sphere) is itself 3-dimensional (just like the surface of an ordinary 3D ball is 2D). So when I use the hypersphere in intermediate computations, I’m not actually adding an extra dimension to the world.

What this transformation does give me is a way to imagine a closed, finite 3D space, where any path you follow eventually loops back to where you started (like a stickman walking on the surface of a globe). Whether or not that space “really” needs a 4th spatial dimension is less important than the intuition it gives: this curved embedding helps us visualize what a positively curved 3D universe might feel like from the inside.

bntr··on Show HN: Curved Space Shader in Three.js (via 4D sphere projection)
The 4D sphere makes sense here because its surface is 3-dimensional. That means I can project the model from 4D sphere back to 3D in a bijective (one-to-one) way.

You could project from 5D down to 3D, but the dimensional mismatch breaks the bijection - you'd lose information or overlap points. However, a 4D → 5D → 4D projection would preserve structure, though it gets harder to visualize.

I chose 3D ↔ 4D specifically because curved 3D space is much more intuitive and has direct physical meaning - it corresponds to positively curved space (see e.g. https://en.wikipedia.org/wiki/Shape_of_the_universe#Universe... )