Recent submissions

Comment · 14 days ago
Time Machine support has been working on TrueNAS Scale, just via one checkbox on a SMB share config, for years. I thought it was just something in a share config that was always there. Now I wonder how did they do it.
Comment · 1 month ago
Shadowing at AST level with the lexical scope is easy to implement, it's just each usage looks up inside out to parent scopes. But if we treat each assignment as a kind of shadowing, it works in a similar way and turns into a kind of SSA. The complexity arises with phi-nodes when multiple paths join. I think the confusion comes from the strict definition of SSA as something useful for the very late stage in the pipeline, but the same concept can exist much earlier in the pipeline.
Comment · 1 month ago
Comment · 1 month ago
Yes, a lexical scope with shadowing
Comment · 1 month ago
My idea was that with single pass, I can build SSA form during AST construction, and use phi-nodes to update type flow info. Then I could use SSA form to prove that I can use certain optimized bytecode instructions when a variable/register is known to be of certain type (I have virtual registers and fat instructions, eg ADD takes 2 sources and destination). Maybe I'm mixing control flow, type flow and SSA. I do not understand where I should stop with the pipeline if I use bytecode/VM.

The paper is: Brandis, Marc M., and Hanspeter Mössenböck. "Single-pass generation of static single-assignment form for structured languages." (https://bernsteinbear.com/assets/img/brandis-single-pass.pdf). It was quite understandable to me. For a deeper dive with proper SSA construction with dominance frontiers I could not find time to dig deeper, many other papers on SSA require focused CS work on them, not practically feasible for a side project. Also, single-pass is a requirement for very fast compilation to bytecode and LSP feedback.

I tried to read TS and Pyright source code, they share the same style of immense files and nested local functions, that was quite a steep wall to understand actual inner workings in detail. Maybe TS implementation in Go will be easier to read, it's on my later TODO list. It's tempting to use AI for help, but I'm quite experienced already with undoing AI work when it takes a wrong direction and I do not notice early.

Comment · 1 month ago
Yes, added the expansion
Comment · 1 month ago
A genuine question: is the first point (flow typing / type narrowing) a subset of or intersection with or just an alias to SSA (static single assignment)? I'm playing with a small interpreted language implementation that is based on Lua, and have reached a point where I want to implement a single-pass SSA (there is a nice short CS paper on this), but cannot get my head around all the concepts, even if I need proper SSA for Typescript-like usability.
Comment · 2 months ago
At least Options+ application works. I tried this one in June with my M720, which I like a lot, and it could not even detect it. Alpha quality at best. As another comment mentioned, the air-gapped download for Options+ is fine. Yes, Options+ is total garbage, and I noticed its autoupdate did not remove previous versions, so I noticed it as a huge multi GB folder. But it works, while OpenLogi does not.
Comment · 2 months ago
This is something I'm ready to pay for. Not more per token, but I will be happy to burn through 20x Pro subscription as fast as I consume my Plus weekly limit now, with 10x more tokens per unit of time. I've learned how to deal with and steer Sol medium quite efficiently, but at the same time I realize it's so slow for the small tasks it can do well, and still so unreliable for open-ended tasks.
Comment · 3 months ago
It's funny that I said "evacuate" and did not mention air travel. In that part of the world, trains are the default, with nuclear green power powering the majority of consumers. Maybe that other default is a problem. And yes, bien sûr, an abandoned personal flight or train will counter balance China, India or mega leaks of methane in US. And all AC owners must be incarcerated, it's so worse than a car. A new leftist mayor of Paris even said ACs warm up neighbors' places, should be forbidden obviously...
Comment · 3 months ago
I've seen dozens of videos and articles about this strongest ever event. And I still have no clue if the next year I should evacuate from Paris for the summer because heatwaves may be even crazier than this year, or prolonged heavy rains are more likely and can make the city more livable.
Comment · 4 months ago
I had plans to buy two Airs, was not sure if I needed 13 or 15, 24 or 32, which was better for my wife and what's the best strategy to buy one for her first and then understand my needs test-driving it. Maybe I actually needed Pro. Lot's of procrastination as none of us had a real need for an upgrade. It's all in the past tense now. I've just bought a 16GB model with 1TB on Amazon at 480 EUR cheaper that the new price, and it seems cheaper than the official old price. I will forget about MacBooks until a real need comes, or maybe good ARM laptops happen sooner. It's funny that if they did not have the dichotomy between 13 and 15, I would have thought less and bought M4 as soon as it was out with the support for 2 external displays + built-in.
Comment · 4 months ago

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton