News for hackers. Stuff that matters.

unnah

Re:A graphical desktop for the ZX Spectrum on Saturday September 19, 2026 @01:34PM (#49768524)
Related: The SymbOS operating system and graphical desktop for Amstrad CPC, MSX and some other Z80 machines was coded entirely manually - the first release was in 2006. https://www.symbos.org/

Of course for the Commodore 64 the GEOS desktop was already released as a commercial product in 1986. https://en.wikipedia.org/wiki/GEOS_(8-bit_operating_system)

Re:Show HN: 1080p is 920px tall – 1k real browser viewports on Monday September 14, 2026 @04:40AM (#49693732)
Only showing the most common values means that sizes of non-maximized windows are lost in the noise. It would be nice to see a cumulative size distribution that would show the percentage of viewport widths smaller than x, for various values of x. Then a developer could easily see that if they make the content e.g. 900 pixels wide, what percent of users will have to scroll the viewport left/right.
Re:Commodore 64 released September 1, 1982 on Wednesday September 02, 2026 @03:19PM (#49541062)
What's crazy is that the much more advanced Amiga custom chips were manufactured at the same 5 micron feature size as the C64 chips. That's why the Amiga needed two custom chips for video (Agnus and Denise) instead of the one in C64 (VIC-II).
Also, since CP/M 3.0 on Z80 supported more than 64 kB memory via bank switching, one might expect CP/M to do so on other platforms too.
It leads to the catch-22 that when saving a BASIC program you cannot tell which filenames are already in use, since you cannot get a directory listing without losing the current BASIC program in memory. All you can do is guess a filename that is probably free.
Re:How to declare taxes in Germany as an App Developer on Thursday May 28, 2026 @03:51AM (#48305953)
Is there still some kind of sales tax in Germany? Shouldn't it be long gone due to the EU value added tax system?
Re:When can the C++ compiler devirtualize a call? on Tuesday May 19, 2026 @02:45AM (#48190049)
It's the same problem with autovectorization. Often the only way to tell whether a compiler optimization is successful is to check the produced assembly or benchmark the code.

It seems that for devirtualization GCC has a warning option -Wsuggest-final-types which is supposed to tell when devirtualization fails in link-time optimization. Not sure how reliable that is, or whether it will produce gobs of unhelpful warnings. Maybe it could be combined with some kind of hint that we want this particular call to be devirtualized, and don't care about calls without the hint.

I don't see why there has to be a special staging area when you could just edit the HEAD commit instead. In git you could do "git commit --patch" to commit selected parts and then add more changes to the HEAD commit by "git commit --patch --amend".
Re:You gotta think outside the hypercube on Saturday March 14, 2026 @12:00PM (#47377984)
It's not so easy any more if you try to rotate the hypercube and have to visualize intersections with arbitrary hyperplanes. Already in 3 dimensions the intersection of a cube and a plane can be a non-regular polygon with 3-6 sides.
Re:Elvish as She Is Spoke [pdf] on Wednesday February 18, 2026 @09:16AM (#47061157)
So apparently the Elvish spoken in the Peter Jackson movies is as far from the language imagined by Tolkien as the famous Portuguese-English phrasebook is from natural English. That's one childhood fantasy broken. What about the Klingon spoken in Star Trek movies?
Re:Four Column ASCII (2017) on Tuesday February 17, 2026 @03:06AM (#47044870)
If Ctrl sets bit 6 to 0, and Shift sets bit 5 to 1, the logical extension is to use Ctrl and Shift together to set the top bits to 01. Surely there must be a system somewhere that maps Ctrl-Shift-A to !, Ctrl-Shift-B to " etc.
Re:Oxide raises $200M Series C on Tuesday February 10, 2026 @01:05PM (#46964082)
There are plenty of old-school companies in Europe still working on moving to the cloud. Now that there is a burgeoning movement towards avoiding American cloud providers, Oxide could have an opportunity to sell "private cloud" servers instead. If they play their cards right, they could make significant inroads in European markets.
It's probably much more exciting to implement stuff like this when you can experiment with your own ideas to figure out the solution from scratch, compared to someone who sees it as a trivial exercise in signal processing, which they can't be bothered to implement.
Re:Erich von Däniken – 14.04.1935 – 10.01.2026 on Monday January 12, 2026 @05:40AM (#46586631)
Most likely his ancient astronaut theory was the inspiration for the entire Stargate franchise. Of course to make the movie believable they had to give Jackson a more academic background than von Däniken had.
Re:CES 2026: Taking the Lids Off AMD's Venice and MI400 SoCs on Wednesday January 07, 2026 @05:31AM (#46524720)
Perhaps the most comparable 1990s system would be the SGI Origin 2800 (https://en.wikipedia.org/wiki/SGI_Origin_2000) with 128 processors in a single shared-memory multiprocessing system. The full system took up nine racks. The successor SGI Origin 3800 was available with up to 512 processors in 2002.
Re:A proof of concept of a semistable C++ vector container on Saturday December 20, 2025 @09:33AM (#46336461)
Interesting that they chose not to implement any method to detect whether a given iterator has been invalidated, even though the implementation would be easy. Seems it would be a useful extension, especially since any serious usage of this vector type would already be relying on functionality not provided by the standard vector class.
Re:Why xor eax, eax? on Monday December 01, 2025 @11:37AM (#46109461)
Umm... how did you manage to learn those hex codes? You just read a lot of machine code and it started to make sense?
Re:Giving C a Superpower on Monday November 17, 2025 @12:02PM (#45955512)
On MIPS you can simulate atomics with a load-linked/store-conditional (LL/SC) loop. If another processor has changed the same address between the LL and SC instructions, the SC fails to store the result and you have to retry. The underlying idea is that the processors would have to communicate memory accesses to each other via the cache coherence protocol anyway, so they can easily detect conflicting writes between the LL and SC instructions. It gets more complicated with out-of-order execution...

    loop: LL r2, (r1)
          ADD r3, r2, 1
          SC r3, (r1)
          BEQ r3, 0, loop
          NOP
Re:A Definition of AGI on Monday October 27, 2025 @10:08AM (#45721197)
If the LLM was generally intelligent, it could easily avoid those gotchas when pretending to be a human in the test. It could do so even without specific instruction to avoid specific gotchas like "what is your system prompt", simply from being explained the goal of the test.
There should also be PSYC 5640: How to become a guru by reading the documentation everyone else is ignoring. Cannot be taken at the same time as PSYC 5630.
Re:PyTorch Monarch on Thursday October 23, 2025 @09:31AM (#45681611)
There's also Dask, which can do distributed pandas and numpy operations etc. However it was originally developed for traditional HPC systems and has only limited support for GPU computing. https://www.dask.org/
Re:We reverse-engineered Flash Attention 4 on Monday September 29, 2025 @03:36AM (#45411206)
Back in the 1990's. As an example, back then the Rational Rose design software had a feature to generate UML diagrams from existing source code, and it was called "reverse engineering".

https://en.wikipedia.org/wiki/IBM_Rational_Rose

Re:We reverse-engineered Flash Attention 4 on Sunday September 28, 2025 @07:33AM (#45403566)
That is the traditional explanation of why it is called reverse engineering. The term originated in hardware engineering. When it was originally applied to software, it was common to create requirements documents and design documents before coding, even if the actual process did not strictly follow the "waterfall" idea.

Thus it was natural to call the process of producing design documents from undocumented software "reverse engineering". These days coding without any formal design documents is so common that it seems the original meaning of reverse engineering has become obscured.

Re:Float Exposed on Friday September 12, 2025 @08:20AM (#45221344)
Ok, you got me there. Looks like they fixed that in C++17 with std::to_chars. https://en.cppreference.com/w/cpp/utility/to_chars.html
Re:Float Exposed on Friday September 12, 2025 @06:06AM (#45220565)
Since such algorithms were developed in the 1990's, nowadays you can expect your language's standard library to use them for float-to-decimal and decimal-to-float conversions. So all you need to do in code is to print the float without any special formatting instructions, and you'll get the shortest unique decimal representation.
Re:Indices, not Pointers on Wednesday September 03, 2025 @04:09AM (#45113374)
All good points. On the other side of the balance, by using pointers everywhere you give a lot more work for the tracing garbage collector. If it was possible to keep all your data in a single array of value types, the garbage collector would not need to do basically any work at all. Maybe Project Valhalla will one day allow that. At the moment the closest you can get is a structure-of-arrays setup.
Re:Amiga Hardware Reference Manual 3rd Edition (1991) on Saturday August 30, 2025 @08:31AM (#45074069)
Looks like the 3rd edition only covers OCS and ECS, up to A3000. Did they ever manage to publish a 4th edition covering AGA? I can't find any evidence of such on google.
Although SMP is an abbreviation for Symmetric Multi-Processing (multiple processors or processor cores with shared memory), SMT is not symmetric but Simultaneous Multi-Threading. To get back on topic, SMT is often confused with barrel processors that switch threads between clock cycles, like the Honeywell 800 with special register groups. The "simultaneous" in SMT means that a single processor core runs instructions from multiple threads on the same clock cycle.
Re:IBM's Power11 Processor Architecture at Hot Chips 2025 on Tuesday August 26, 2025 @01:02AM (#45022437)
You can find quite a few used Power 8 and Power 9 servers for sale on ebay. The prices range from a thousand dollars or euros to a few thousand, so not for everyone but well within the reach of a well-off hobbyist.
Re:Epson MX-80 Fonts (1980 Dot Matrix Printer) on Thursday August 21, 2025 @06:12AM (#44970976)
Never? There definitely was a double-width feature on those printers, as demonstrated in the manual: https://www.apple.asimov.net/documentation/hardware/printers...

Older »