HNHacker News
TopNewBestAskShowJobs

veltas

1,822 karma · joined November 16, 2013

veltas.co.uk
submissionscomments
veltas··on Ray Tracing in One Weekend
This is a normal practice for applications, and allows you to pre-compile that header for performance. I don't think it's a bad enough practice to warrant complaining, but it's good for people to know the advantages or disadvantages.
veltas··on QR-style codes could replace barcodes 'within two years'
>Coca-Cola has used the new generation of codes in parts of Latin America for refillable bottles, with the QR code allowing the counting of refills so that a requirement of 25 before recycling can be enforced.

More tracking!

veltas··on My history with Forth and stack machines (2010)
I appreciate Yossi's plain honesty in this article, and it's a fun and interesting read; I've read it before.

I can relate to, but not endorse, designing a CPU and dialect for an interesting language you've never properly used. This turned out to be very painful, and Yossi argues convincingly that it is essentially not practical to use Forth at all, debating Jeff Fox's position. However, there is some evidence[1] that Forth actually might be practical, and it certainly seemed to have a niche in the 80's.

Yossi made some errors I've seen among new Forth programmers. A lot of people, before writing real programs, think Forth is like lisp from another universe. They visualise Forth primarily as a sort-of functional, concatenative, highly refactor-focused language. They likewise tend to throw out all the normal Forth defining words and use Forth as 'lisp without parentheses'. They try and put all their data on the stack, 'point-free', rather than using variables. And often their projects eventually devolve into C envy, every line with stack comments and equivalent C code to help, as shown in the article.

But go look at real, working, classic Forth code, of which there is much, and you'll see that there is a prevailing style that's easy to read and not actually that 'smart', or 'academic'. No more than 1-2 stack items need to be mentally 'juggled' for 99% of code, lots of variables and buffers are used whenever it's easier. Yes the classic variables are 'global', but it doesn't matter if the relevant code isn't recursing or touched in interrupts, and is only used by a cluster of related words. Newer Forths do have local variables, in spite of Jeff Fox's disapproval!

The classic code I'm talking about matches what I think Jeff Fox is trying to coerce you towards. Ultimately I disagree with Yossi's views because I think if he had actually tried to implement what Jeff Fox proposes, and got some practice first on a more realistic project, he would have had a much better shot. It's impressive how well the project turned out in spite of the approach, and how Yossi wrote a backend for his architecture in a week: a testament to both his skills and LLVM's design; but it's worth reflecting as engineers how arrogant (yet relatable) it is to make a CPU and compiler for a language you've never properly used.

[1] https://www.hardware-x.com/article/S2468-0672(22)00025-6/ful...

veltas··on A design flaw in the Windows 3D Pipes screen saver pointed out by a customer
A number of these old 3D screensavers are identical to examples in the old OpenGL red book, the version that's now available for free online.

I wonder if they were just copied from the book?

veltas··on The number pi has an evil twin
I absolutely agree, a dead 1920's German nationalist movement is exactly why we shouldn't allow free speech online.
veltas··on The number pi has an evil twin
I also found it extremely helpful that the author virtue signalled to agree with me, so I know whether I am supposed to like it or not.
veltas··on The RAM Myth
There are situations where it's faster to prefetch manually than to rearrange and rely on the hardware prefetcher. Yes, even on modern CPU's.
veltas··on The RAM Myth
> The only way to prevent cache misses is to make the memory accesses more ordered.

Or prefetch. Not enough people know about prefetch.

veltas··on The Rules of Programming (2023)
Where is this? I don't see this advocation, and the code examples don't have it.
veltas··on German WWII Soldier Grave Found with Mesolithic Tools, Roman and Byzantine Coins
I think it is respectful and appropriate, this is someone who died fighting in war who we don't really know anything about. Could even be closely related to people today. We don't know if they were a member of the 'party', or how they felt about it, or anything. This is a fallen individual.
veltas··on The FORTH code for Chipwits is released in the game's 40th anniversary
This is much like C. The easiest way to use assembly in C or Forth is to know your 'ABI' and write separate assembly code functions where needed. In Forth at least you can write a CODE word.
veltas··on The FORTH code for Chipwits is released in the game's 40th anniversary
Anecdotally I find the opposite to be the case. I think Forth is hard to write but easy to read.
veltas··on Bit-twiddling optimizations in Zed's Rope
> Turns out CPUs are pretty good with zeros and ones.

I've been saying this a lot recently, that CPU's are powerful 1-bit vector machines!

veltas··on Rats learned to drive
Yeah sorry that was a joke, if not clear
veltas··on Rats learned to drive
Just now scientists are finding out driving is fun, when we're just about ready to ban it!

Mind you, I don't think the rats would enjoy it as much if they had to share the road with the kind of rats I share it with, and if the penalty for crashing (or being crashed into) was as high.

veltas··on Against Best Practices
"Postel's law" is an ironic name, I don't think the people who coined that term meant that it was an infallible rule of the universe, just what seemed a good rule of thumb for implementing protocols.

I still like Postel's law, but don't imagine for a second it's a 'law' with the kind of authority the article implies, and didn't enjoy the article's slime about people who like it!

veltas··on Voyager 1 breaks its silence with NASA via radio transmitter not used since 1981
Yup and in the UK a lot of our card payment boxes for car parks will stop working when 3G is shut down, and will be replaced with an app. People without phones need not apply!
veltas··on C Gibberish to English
The difference is I trust this website, and wouldn't trust an LLM.
veltas··on C Gibberish to English
Looking at the project issues, it seems it supports only 1989-era C, and some Apple stuff, before you even get to attributes.
veltas··on Fitting a Forth in 512 bytes (2021)
I'm a big Forth fan and I'd say lisp interpreters consistently come out smaller and better than their equivalent tiny Forths.

I don't think it's a reason not to be interested in Forth, unless that was the draw.

veltas··on Rip2 – A safer, rust-based rm
Scanner needs to scan files being deleted to catch certain kinds of malware, and Windows blocks until it's actually scanned and deleted. Lots of file operations are like this on Windows. It makes filesystem operations seemingly easier to program/understand, but much much slower. I suspect the synchronisation assumptions it is allowing are also deeply ingrained in legacy code.

Any serious Windows app needs to spawn many threads to work around this performance issue when batch operating on lots of files.

veltas··on Grandmaster-level chess without search
Playing chess with a 20TB cerebellum
veltas··on UndefinedBehaviorSanitizer's Unexpected Behavior
Sorry, I meant a "close to the hardware" language re parent.
veltas··on UndefinedBehaviorSanitizer's Unexpected Behavior
Does anyone know of languages that achieve this? I'm interested, I'm currently implementing a project in x86 assembly for this reason, and am happy to try a higher level language.
veltas··on Superstitious Users and the FreeBSD Logo
> a neutral or disregard position is interpreted as opposition

It's not really neutral though, it's specifically from the outset designed to depict something evil in the culture of the religion. The current more abstract logo could just as easily looks like traits of Satan as a random demon. And I don't believe this is an attack on Christianity or Christians, or designed to exclude Christians. I don't imagine it bothers most Christians.

But this is something certain Christians will be put off by, and find unwelcoming, for religious reasons. So hence this is at odds with the code of conduct in my opinion.

And really the whole thread has just confirmed this, I've been just short of accused of being an extremist, and had many complaints about my religion, just for pointing this out.

I think one solution is just not to have codes of conduct, it seems to breed this kind of discussion and vitriol. And apparently there's always favourite religions, ethnicities, etc.; different according to who you ask. And also maybe avoid using religious-themed art in your logo if you want to avoid potential for religious discussion. The people behind the logo probably considered and decided this doesn't matter a long time ago, and personally I respect their decision: but it does mean that it will exclude some people.

veltas··on Superstitious Users and the FreeBSD Logo
I didn't say (or didn't mean to imply?) you were anti-Christian. But now it sounds like you're calling me an extremist, which actually is controlling/manipulative behaviour, is it not? And for no good reason.
veltas··on Superstitious Users and the FreeBSD Logo
There's a big difference between tolerance and friendship.
veltas··on Superstitious Users and the FreeBSD Logo
> it requires genuine acceptance that others believe and speak differently, and that that's OK

That itself is a question of ethics, that I don't think you need to agree with to be able to be tolerant. You can tolerate people without thinking it's "OK" for people to believe things you think are wrong to believe.

veltas··on Superstitious Users and the FreeBSD Logo
Careful reading you'll see I'm not asking for diversity for extremists.
veltas··on Superstitious Users and the FreeBSD Logo
I'm just reading what they wrote, and making as few assumptions as possible about their intent. Do you have a specific disagreement about my interpretation?
← PreviousPage 9 of 26Next →