* Posts by prandeamus

51 publicly visible posts • joined 23 Dec 2019


RIP: Software design pioneer and Pascal creator Niklaus Wirth



Is BCPL's O-code similar enough to count?

Close but no cigar. Ocode successfully separated the front ends of the compiler (lexical, syntax analysis, and all that) from the code generator. The front ends outputted Ocode, and up to that point pretty much all BCPL compiler were the same. Some variations existed e.g. the Acorn BCPL compiler was structured as a set of overlays or whatever because of the extreme RAM limit on a BBC model B. The OCode was fed to the code generator stage which could vary wildly between implementations. So it was not originally conceived as a run-time environment.

Moving on a little, M. Richards did produce INTCODE, that was a simple virtual machine designed for interpretation, to help with bootstrapping. You could cross-compile BCPL to OCODE and code generator would output INTCODE, and then write a simple but slow INTCODE interpreter on the target machine. I think the idea there was to be "just good enough" to bring up a compiler on the target machine for which you could write a native code generator. INTCODE was a bootstrap aid, not an execution environment.

The next iteration was something like CINTCODE which was designed for interpretation. CINTCODE was designed for microprocessors where address space was at a premium (C=Compact). So in the Acorn implementation of BCPL for BBC Micro, the code generator takes OCODE as input and CINTCODE as output, and the CINTCODE was interpreted by code in the *BCPL language ROM. CINTCODE implementations did permit escapes to native compiled code for those time-critical bits. The BBC Micro BCPL was created at Richards Computer Product, run by John Richards, lovely fellow. M. Richards continued to develop this stuff further in academia so there's probably a divergence between the two over time.

That said, I think CINTCODE is roughly contemporary with UCSD p System.

I'm an old man now, forgive my slips of memory.

Damn, even the Pope thinks AI and autonomous weapons need reining in


Re: Stick to what you know

Niche... but appreciated.

Microsoft Visual Studio: Cluttering up developer disks for 25 years



What VB did very well is to show that certain kinds of small and medium sized apps could be built without recourse to C and complex SDKs. Was it the first? No - there was SQL/Windows, there was Actor, and probably others. Was it the world's cleanest or neatest programming language? Lord, no. After a year or so, Turbo Pascal for Windows knocked it out of the park in so many ways. Was it particularly fast? Nah. Was it the kind of tool that amateurs could write terrible code? Yes. I don't wear rose-tinted glasses when I think about it. "Option Explicit" came too late to stop people making awful errors. People often didn't understand how Variant worked. There was the bizarre DOS-only mutant. Team programming was hard. It never really got to grips with O-O programming until VB.NET forced a complete overhaul. Having two different versions for VB4 (16 and 32 bit) was a pain. "On Error Resume Next" was the dumbest idea ever. I don't think VB6 had a true compiler (feel free to correct me). By all means, list the unfixed quirks and bugs. I never got to grips with data binding. No, I don't want purple and yellow buttons, oh my eyes!

But it opened the market very convincingly. It was just-good-enough, and sometimes that is what counts. You could paint a screen, write the event handlers, and get things done. It had enough extension capability (calling C DLLs, and the VBX/OCX development model) to support a decent third-party tool market. In the city of extreme visual impairment, the monocular one reigns.

The home Wi-Fi upgrade we never asked for is coming. The one we need is not


Re: Too pessimistic

I knew I should have written "Antenna"


Re: Too pessimistic

My house is a typical 30s built suburban semi, with all internal walls being brick. In some cases, definitely some sort of Friday afternoon brick with neutron star density. It has an extension beyond what were originally the outside walls. As you would expect it's a pain to get coverage from the main router. I've tinkered with additional access points with mains power backhaul, and though they work quite well for devices that don't move around like the Amazon firestick, phones and tablets and laptops don't handle the transitions well as you move around the house. Are true meshes - with reliable switchover as you move around - even possible? Should I try a single access point with a honking big ariel (or whatever)?

Unity talks of price cap and fees for only largest games developers


"Confusion" was a bit of a weasel word in Unity's statement. The changes were crystal clear and completely understood. That's why people were angry, because they could see exactly what impact they would have. As "Angst" , let it pass.

The correct response would have been "we screwed up, and we're rethinking this". As it stands it feels like one of those classic passive-aggressive fake apologies.

Largest local government body in Europe goes under amid Oracle disaster


Re: Easy win but challenging keep.

I know a number of people who volunteer in parish councils, town councils and so on as their contribution to a functioning democracy. They genuinely do it out of a willingness to serve. I count as friends in this category both Tory and Labour councillors. But it's hard to get elected without a party ticket of some kind. There are a few independents in local government, but most have affiliated themselves with a party rosette of one kind or another.

Those genuine people who just want to get the paths weeded and timely dustbin collections, through their party allegiances, can also be the levers through others get into higher office.

In all walks of life, the Dunning-Kruger effects (or if you prefer, the Peter Principle) gets us all in the end.

Google rebrands 'android' as 'Android' to remove any doubt about its affiliations


Nah, that's Metal Mickey, my little fruitbat.

Boogie Boogie.

The world seems so loopy. But at least someone's written a memory-safe sudo in Rust


Re: Mandate

"If Microsoft and Sun had compiled C# and Java native code instead of a virtual machine I believe there would be little demand for a language like Rust. "

I take your point, but feel obliged to point out that C# does have an ahead of time compiler, NGEN. And I believe it's been available since day 1. That said, I don't think you can claim that native code has quite the significance you think it has. Deferring the code generation with JIT has overheads, yes, but it's not intrinsically more or less memory-safe.

Bodhi Linux 7 brings Enlightenment to Ubuntu


I have found lubuntu to be effective as a fairly good unbuntu remix. If that's your starting point and you don't want to deviate far from the true Upath. https://lubuntu.me/

As mentioned elsewhere the Raspberry Pi Desktop for PC's is pretty good. That's a strong debian flavour. https://www.raspberrypi.com/software/raspberry-pi-desktop/

I did try things like puppy linux a long time ago, but my opinion counts for much less there. I could see that puppy was more efficient, by doing less, but it was a learning curve that I wasn't personally prepared to get into.

Dear reader, your mileage may vary.

LibreOffice 7.6 arrives: Open source stalwart is showing its maturity



I have limited exposure to Scribus, but you don't want to edit content in it. Yes, you can, but it's eyeball-scratchingly messy. In old-fashioned office terms, you don't want to write a book in Publisher. For layout and pre-print, I'm sure Scribus is powerful, but it's not a content editor.

To infinity and beyond, with a swarm of tiny computers costing under $1K each


"You will be assimilated into BLISS. Resistance is futile."

Auroras – the solar system's universal light show (except Neptune... sorry, Neptune)


Re: Neptune?

Observed, if I understand correctly. The new discovery is that Mercury has been shown to have an aurora, and that leaves Neptune as the one where auroras have not been observed. They may be a fundamental reason (maybe the distance from Sol) but that's not certain.


Re: Universal except when it isn’t ?

The other gas giant, Uranus, is the one with a very skewed rotational axis. So I doubt that's the reason, but I'm no expert. I'm posting here because it's a Friday, not because I know very much.

From cage fight to page fight: Twitter threatens to sue Meta after Threads app launch



" not available in Europe"

Plea to editors and writers. Europe is a geographical entity. You are referring to the EU here. This is an important distinction because the UK is in one, and not the other. As, indeed is Switzerland, or Ukraine.

Have the UK data regulation rules actually deviated wildly from the EU rules, so far? GDPR is still in effect, for instance. Admittedly, they may willfully diverge in future. Or is it the rigour of enforcement that is different, or perhaps an expectation that if the UK all out on Brexit dividends the future privacy regimen will be more favourable to Meta/threads. /today/ what's the biggest different in data privacy/security between UK and EU?

Europe's largest city council runs parallel systems to cover Oracle rollout mess


Re: The right question

Yes. but public sector projects are not exactly unique in that regard. I've seen private sector projects flail around because systems integrators waltz in, *assume* that their favourite shrink-wrapped software will do 90% or more just out of the box. The wish is father to the thought. When they find out three months into a six week project that maybe some people made stupid assumptions, all is lost.

Rocky Linux claims to have found 'path forward' from CentOS source purge


Re: It's just Linux vs BSD, again

" some of which was provided for free under the expectation people would not make money off their work directly or indirectly"

This is true in the sense that the "number of people who contributed to linux and the userland expecting that no one would make money from it" is surely non-zero. It would be foolish to deny this. But is that number really significant? The Red Hat model of selling support in some form has been around about 30 years now and the GPL and friends has been endlessly debated for what feels like eternity. Stallman is critical of RH for violating the spirit of the GPL, but he's not unaware of Red Hat.

I think in practical terms pretty much anyone who contributed to Linux kernel has known that Red Hat and other would profit from support services, but went ahead and contributed anyway. It's not as if Red Hat have hidden their business model. I have sympathy with the feeling that this all violates the spirit of the GPL I think most people, even the most blinkered software obsessives, would be aware that "spirit" of a licence agreement isn't exactly assured to stand up in court.

It does feel rather spiteful, though, even if I don't think you could convince a court that it was a contractual breach.

Raspberry Pi production rate rising to a million a month


Re: A Bit Late Now

A good place to start! Many thanks.


Re: A Bit Late Now

I suppose, on reflection, the market segment for "more than a microcontroller and less than a PI 3 B" is covered by the Pi Zero and Zero W models. Are there any realistic competitors for the price point? Orange Pi Zero is the best I could find, and it's not by any means a slam-dunk choice. (CPU a bit faster, includes ethernet when Pi Zero doesn't, no video)


Re: A Bit Late Now

Anecdotally, I see plenty of ads for /better/ Raspberry PI class SBCs - maybe with more memory or zappier processors or whatever - at higher prices. Usually promoted as "Pi killers". I'm sure there's a market for such things. They are always 20-50 more expensive that RPI list prices, and that's fair enough. However, I /never/ see ads for /cheaper/ PI equivalents, by which I mean low cost SBCs capable of running some sort of lightweight *nix distribution, something like the 2012 vintage PIs. These days, of course, microcontrollers based on ARM or RISCV can be found on boards with wifi or bluetooth or USB but there still seems to be a gap. Is there a via market segment for "more than a microcontroller but less that a PI 3 B", and where is it?" (Maybe just not profitable enough)

IBM starts renting cloudy bare metal Linux almost-mainframes


Re: Lock In

Agreed. The cost of lock-in is, let's be clear, a genuine risk whether it's with AWS, Azure, GCP or LinuxONE. So what makes IBM's offering particularly worrying from a lock-in perspective? Using a commodity operating system such as linux would be a mitigation. Would an organisation that is already committed to z/Architecture somehow get more locked in if they rented it in-cloud?

Version 100 of the MIT Lisp Machine software recovered


Re: Off Topic? Well....Not Quite!!

As I recall, the natisemi CPUs were bugging and didn't match quoted performance (https://en.wikipedia.org/wiki/NS32000) and by the time they sorted that out, anyone who wanted a vax-ish CISC architecture had already settled for the 68K line. I had a work colleague who bought a BBC micro co-processor with the 16032 and remembering it running Ackermann's function awfully quickly, but there wasn't enough momentum, no "killer app" or sexy hardware platform.

Elon Musk actually sits down and talks to 'government-funded media' the BBC


The odd thing is that this stuff IS on the BBC news site.

The "racist pub owner" thing: https://www.bbc.co.uk/news/uk-england-essex-65260945 and https://www.bbc.co.uk/news/uk-england-essex-65248924

The "every white bloke deserves a black slave" thing: https://www.bbc.co.uk/news/uk-wales-65246336

That was a just a few minutes of searching, but of course I did know what I was looking for. A better discourse would be to look at the publication times and relative prominence of these stories compared to other media & there's a whole PhD thesis waiting to be written there. Countless times I've seen people complain that story X doesn't appear on the BBC news home page or that the Beeb is silent on some issue or another, only to find the said stories on, say, the UK home page. The BBC's reputation for bias-free journalism has taken a knock in recent years. It feels timid when put against the establishment. But it's not Fox or GB news, thank $DEITY, so far.

Twitter users complain 'private' Circle posts aren't


"and the company's press email account now only responds with a poop emoji..."

Excuse me while I recover my jaw from the floor. I knew things were bizarre at the bird, but that's just mad.

Parts of UK booted offline as Virgin Media suffers massive broadband outage


Re: And Again

Yes, definitely wobbly for me at about 1630 BST. Aftershocks.

In the battle between Microsoft and Google, LLM is the weapon too deadly to use


Re: "If it can't lie, it ain't AI"

"Hapax Legomenon" is used to describe a word or phrases only attested in one source.


The word usually translated "Daily" in the phrase "Give us this day our daily bread" in the Gospels is actually one of these.

The Stonehenge of PC design, Xerox Alto, appeared 50 years ago this month


Re: the language that begat C

Oh yes, we all called it pling. In BBC basic of course, the address was a byte address by the unit of transfer was a 4-byte integer, right?

As for tracking down the sideways ROM release I doubt very much that it was a commercial. Acornsoft did publish the basic compiler and full runtime, and two additional modules for floating point math(s) and for generating standalone and rommable code.

The brains behind the product was John Richards who founded Richards Computer Produce in Blewbury, Oxfordshire, near Didcot. Chris Jobson was the first employee and they ported the compiler and runtime first to Z80 CP/M systems and then to 6502 and the Beeb. The Beeb version was a modest success: ROM had the CINTCODE runtime (the VM) an a standard runtime library to encapsulate BBC MOS calls, and RAM-based file system, and a simple version of we would now call dynamic linking. The single disk contained the multi-pass compiler, assembler, a screen editor and a debugger, which was quite an amazing setup for 1984. You could even use the compiler with a cassette tape filing system if you were a masochist with time on your hands, but it was more sane to have two 80-track drivers or whatever since there wasn't much room to spare for source code on an single sided 100K disk.

I applied for a job there in 85, but declined John's offer at the time. After I notified him about a bug in the assembler he wrote back graciously sending a bug fixed version and a new job offer. I worked for several years on Reuters based products. John was a very savvy businessman as well as being techie, a combination I now know to be rare.

The sideways RAM and ROM thing was developed for a rack mount version of the Beeb that Acorn built for Reuters around the time of the stock market "Big Bang". RCP (Chris Jobson as I recall) wrote a modified runtime with "ISE" or in-situ execution. Word addresses < 32K mapped onto the native 6502 memory map. Addresses with the top bit set, in certain cases like global vector calls, were mapped to special case code.

GLOBAL $( Foo:42 $)

LET someproc () BE $(



Would grab Foo from the global vector and map it to an entry point in a sideways ROM. Like overlays but without having to manually load the code into RAM. There was a "build ROM" tool and we spent many happy hours rearranging each hunk of CINTCODE to fit into 5 ROM images.

Bottom line- fantastically neat implementation, but internal only. If the dot-matrix printout of the user guides for the Reuters stuff survive after nearly 40 years I'd be amazed. You could seek out RCP or its successor companies. They were in Didcot about 15 years ago, have not been in touch since then. I doubt anyone there will remember me not least because I changed my surname on marriage. I hope that helps.


Re: the language that begat C

Pleased to make your acquaintance, oh byte operator person!

! was both unary and a binary operator

% was only binary, so as I recall it would only work as 0%byteaddress rather than %byteaddress

Assuming my memory hasn't gone to pot that's my forty-year-old chip on my shoulder :)



Re: the language that begat C

Ah yes, I love to nostaligic references to BCPL on a Friday morning.

The word-oriented thing caused me a lot of problems when I encountered the language as a student in 1981, trying to move code running under a proprietary operating system into something embedded, on 6809 with memory mapped I/O. I had programmed something like

LET addr = 1234

!addr = 99

to poke the byte value 99 into the byte-addressed hardware location 1234. No, no, no, no, no, no, no. That poked the WORD 99 into the WORD address 1234, which was translated (often at runtime) into a byte address by shifting it one bit left. So although the compiler was able to use the nice 6809 instruction set, the generated code was full of left shift operations. The correct solution in the case of course is

LET addr = 1234

0%addr = 99

Using the super high tech byte indirection operator that was added after the Richards/Whitby-Strevens reference manual.

One of the little miracles of the mid-80s was getting BCPL to run on the 6502 for the BBC Micro (Richards Computer Products/Acorn). The standard compiler, ahead of its time in many ways, already had a number of machine-independent representations of compiled code: OCODE to power the native code generators and INTCODE for bootstrapping an interpreted version. These concepts were developed into a very compact intermediate code representation called CINTCODE, which was then interpreted. As a bonus, the interpreter had an address space of 64K words = 128K bytes. Custom versions were developed to map to shadow RAM and sideways ROMS of the later BBC models, allowing code to reach unheard of sizes - graphical display systems of 80K of CINTCODE spread over 5 16K ROM images transparently switching in and out of the address space like magic.

Thank you for reading this old man's TED talk.

UK tax authority nudges net 'influencers': You may owe us for those OnlyFans feet pics


Re: I think you'll find...

Rex/Regina in Latin already has precedent

ER = Elizabeth Regina

CR = Carolus/Charles Rex

I don't think there's a special Latin form for Elizabeth as a personal name. Carolus for Karl/Charles goes back at least as far as Charlemagne.

Cat saves 'good bots' from Twitter API purge


Entertainment twitterbots

Can I recommend, for entertainment value

@midsomerplots Generates plots for episodes of Midsomer Murders

@taskmaster_ai Generates random but often disturbingly plausible tasks for Taskmaster. It occasionally lapses into the book of common prayer for inspiration.

Get em while you can

Techies ask PM to 'prepare UK chip strategy as a matter of urgency'


Re: a plan

The ability of the current administration to distinguish between its ARSE and its ELBOW is frequently in doubt. Make up your own acronyms to taste. Too many senior figures are in post because the anti-remainer pogroms of the last few years have prioritised party loyalty well above actual competence. I loathe the current administration, but I also have to admit I don't know if Labour have a considered strategic alternative at this point, as they are biding their time waiting for the next inevitable Tory:Banana-Skin interaction to happen.

Don’t expect a Raspberry Pi 5 in 2023, says Raspboss Eben Upton


History Lesson

Remember Nascom 2 in the 70s?

My recollection is a bit vague, but Nascom 1 was a big success. They announced they were working on Nascom 2 and the sales pipeline for Nascom 1 dried up, just as supplies for some essential chips in the Nascom 2 became hard to obtain. I'm sure there were other examples. You have to keep schtum about future plans.

I would expect the Pi folks to be extremely cagey about announcing future plans in this climate. They'd be crazy not to be thinking about a next generation. Equally, they'd be crazy to disclose anything about such plans.


Cheap media player...

If you're in the mood for making recommendations, what cheap media players would you suggest? I've seen many articles and ads talking about "raspberry pi killers" which usually turn out to be SBCs which are more functionality at a higher price point. I've used some RPi v1 boards in a media player hobby project and would love to know about alternatives.

Server broke because it was invisibly designed to break


Re: A service provider that doesn't bill because their attempted fixes failed?

Read "The Fourth Bear" by Jasper Fforde because <$SPOILER$>

America's nuclear fusion 'breakthrough' is super-hot ... yet far from practical




Thanks for that.

However, I am sure I remember/misremember some excited face-of-science (Dara O'Briain? Prof B Cox?) excitedly gabbling to camera that more power was coming out at the moment than went in. Maybe I had too much cheese and dreamed it, except that my other half made a similar comment only last night.


I'm sure there was a news story in the last year or so with a nuclear fusion reactor in UK/Europe with some level of net energy output. Can someone point me to an explainer as to the differences between that one, and this recent US announcement. Radio 4's Today program alluded to the European one being plasma confinement rather than lasers and pellets of hydrogen. Or something.

Just 22% of techies in UK aged 50 or older, says Chartered Institute for IT


Too many companies do not value their over-fifties.

An experience from a few years back, between me and the company HR department

Me: I see you don't offer any pension provision as an option. I would like you to consider offering one.

HR: Most of our staff are in their twenties and prefer to make their own decisions about that

Me: Yes, but I'm 50.

HR: Most of our staff are in their twenties and prefer to make their own decisions

Me: I'm sat here, and I'm 50. I'm in front of you. I'm not in my twenties. I would like the option, will you think about it?

HR: Most of our staff are in their twenties and prefer

Me: I'm not saying they have to opt in to a pension. But it would be an incentive for me if there were that option

HR: Most of our staff are in their twenties

I didn't hang around for long. Retention was not on their radar. (And yes, the situation in the UK would be different now as some elements of pension provision are mandatory. I'm nearly 60.)

Liz Truss ousted as UK prime minister, outlived by online lettuce


Independent Scrutiny

It may not be an IT legacy exactly, but as was pointed out on Radio 4's Today programme this morning, the online vote of Tory members lacks strong third-party scrutiny. You can be 16 years old, in fact you could be a member of the party with no voting rights in a general election, and still be able to cast a vote. While I would defend such people's right to be a member of a private organisation in the general case, the lack of independent scrutiny for the leadership vote is a concern. If the member's vote should be close (let's say, 52/48?) such concerns would undermine the legitimacy of the result.

There's a technicality in that the PM is technically chosen by the crown, but I don't see the King intervening, or for that matter intervening in any way that would be constructive.

In an additional irony overload, I don't think any of these Tory chaps have to show a photo ID card to vote.

Rust is eating into our systems, and it's a good thing


Re: we won't go quietly...

BCPL ? Me too.

Electronics Dept at Uni of Southampton, wrote an interactive debugger for 6809 and 68K systems for my undergraduate degree. It was crap, by the way, so if anyone bumped into it in later years, sorry. Then worked for Richards Computer Products in the mid-80s.

Lovely little language, if a little eccentric by modern standards.


Pension plan

Even if you don't learn Rust, there's also some scope for C and C++ to become the COBOL of the 2030s. If I live that long, it could well be an addition to my pension.

(If you're thinking of arguing the exact date this might happen, yeah, yeah, yeah, whatever)

Heresy: Hare programming language an alternative to C


I hadn't heard of qbe before, so followed that link, so I went and read https://c9x.me/compile/

"QBE is in constant change. It is a young project "

Now this stuff looks fascinating, but it seems a paradox to rely on a self-confessed unstable compiler backend when the design goal is stability of the language. One wonders if LLVM would have been a better choice. Or GCC, or transpiling to C99? Genuinely I don't know the plus and minus points here.

Council culture: Software test leads to absurd local planning SNAFU


Here's your lesson

"An investigation is underway to understand exactly what happened to ensure that lessons are learned and any necessary action in relation to the conduct of officers involved is taken," the council rumbled, ominously."

Don't allow IT staff, especially Juniors, access to live sites. If you must do so, for some unavoidable reason, don't. But if you must, train the IT staff.

That will be £10,000, but with a discount for swift payment within 30 days.

Realizing this is getting out of hand, Coq mulls new name for programming language


Re: There are two hard problems in Computer Science

You're going from a very specific instance of Communist party rules (When? Where? What country? What flavour of communism?) Then you quietly equate woke with communist. And then conclude that woke=dictatorship/

Any logician would rip the shit out of that argument. Try harder. It's literally no different from the very old example of saying FIRE! in a crowded theatre. You can say it, but you are accountable (positively) if you save lives, and accountable (negatively) if you said a stupid think in a public place just for the lols and someone gets hurt.

Woke is an irrelevance here. Go back to the Telegraph.

Laptops given to British schools came preloaded with remote-access worm


"Miss, Miss, the media and opposition parties told me to do it faster"

"Well, Billy, if the media and opposition parties told you to stick your head in the fire, would you do it?"

"No Miss"

"Well, then..."

Blaming "the media and opposition parties" is a complete and absolute disgrace. Civil servants act on instruction from the government. Regrettably this is the kind of shoddy response typical of the current administration.

Raspberry Pi Foundation moves into microcontrollers with the $4 Pi Pico using homegrown silicon


Re: What a shame they didn't go down the RiscV route...

Help me out here, is "PIO" the same sort of thing as Arduino CCL configurable logic - a bunch of programmable logic gates that are code-configured but operate independent of the CPUs?

Google offers first part of its in-house M:N thread code as open source to Linux kernel


Whatever your medication is, please resume it immediately.


Re: If I were a cynic and not psychic, one would imagine such largesse psychopathic.

Whatever your medication, I suggest you resume it immediately.