MIDREAL

Show HN: Thoreau BASIC – What if BASIC hadn't gone out of fashion?

https://thoreaubasic.com/ (thoreaubasic.com)

96 points | 5d ago | Discuss on Hacker News | Back to Radar

Comments

_wire_ 5d ago on HN
PHP
mdp2021 4d ago on HN
Really not the same.
fuzzfactor 5d ago on HN
This looks like it's realy getting better all the time.
dang 4d ago on HN
Recent and related:

Show HN: I wrote a BASIC interpreter that boots on UEFI machines - https://news.ycombinator.com/item?id=49410814 - Aug 2026 (44 comments)

pcdoodle1 4d ago on HN
Very cool. Are line numbers required? Are there plans for OS system control like setting system volume or screen brightness?
analog31 4d ago on HN
I definitely want a code editor with a setting to number the lines by 10s.
Gorsefound (author) 4d ago on HN
noted for future releases. :-)
Gorsefound (author) 4d ago on HN
and yes, line numbers are required.
qingcharles 4d ago on HN
I was writing BASIC code for everything until a few years ago -- VB.NET -- until it was really clear that it had become a totally second-class citizen and I switched to C#.

I still think VB.NET is vastly more readable than C/C#/Java etc.

christophilus 4d ago on HN
It’s been 2nd class for a long time, but I loved it back in the early 2000s.
pasc1878 4d ago on HN
VB.NET was always second class to c#.

Unfortunately it was a one-to-one match to C#.

It would have been much netter if it was based on Visual Basic 6

kothurn-utopie2 4d ago on HN
Second class? Maybe in the perception of some C-loving programmers.

VB.NET can do everything what you can do with C#. Saying that C# is better than VB.NET is like saying that French is better than Spanish.

Scharkenberg 4d ago on HN
C# has gained tons of features and improvements of existing ones, VB.NET has unfortunately been fully ignored. Not even put in the back burner, just left to die, apparently. Which is sad, because I find it more legible and beginner-friendly than any C-derived languages.
pjmlp 4d ago on HN
Nowadays the official posture is to update the language only to be able to consume some of those features.

For example, the new async/await runtime model is also for VB.

pjmlp 4d ago on HN
.NET 2.0 introduced a few things back.

VB 6 way to do COM still wins out, though.

bazoom42 4d ago on HN
> VB.NET was always second class to c#

VB.NET and C# was treated as equals for a long time. I believe MS initially expected VB.NET to be the mainstream .net language, while C# was a compromise to attract Java and Delphi users.

But the transition from VB to VB.NET was not handled well. VB was very well liked by its users (even if non-users looked down on it) but VB.NET was worst of both worlds. Too different from VB to be smooth upgrade, and still nok considered as professional a language as C#

FranOntanaya 4d ago on HN
You really felt productive doing anything with Visual Basic 6, at least until things slowed to a crawl because it wasn't so performant or it was held back by the typical Access database. You didn't need 200 hours of YouTube tutorials about the front-ed UI framework du jour to get going.
dalemhurley 4d ago on HN
So much easier then JavaScript/typescript, Python, and many other languages.
pjmlp 4d ago on HN
And designed to be compiled from the start, the interpreters in 8 bit home computers were due to hardware limitations, after the 16 bit transition compilers were back in.
kothurn-utopie2 4d ago on HN
"Visual Basic" is still actively developed, although not by Microsoft.

https://www.remobjects.com/elements/mercury/

avadodin 4d ago on HN
Ah. A VB.NET clone.

The real Visual Basic not by Microsoft is TwinBASIC(closed source).

vunderba 4d ago on HN
I never ended up trying VB.NET, but I spent a lot of time in middle school playing with VB3 and later VB6. Being able to drag and drop components to quickly scaffold out a WYSIWYG GUI which you could then double-click on to create premade handlers was the veritable cat's meow.

I feel like that kind of event-driven programming model was very intuitive, even for younger audiences.

qingcharles 4d ago on HN
All of that stuff is still in the latest Visual Studio 2026. VS2026 looks basically identical to VB6. It's still great if you're making little desktop apps by hand and you can back them with any .NET language, e.g. C# etc.
pjmlp 3d ago on HN
Some people love to complain in the whole VB vs VB.NET, because VB.NET dropped several VB 6 stuff on .NET 1.0, however .NET 2.0 re-introduced some stuff back, but they were no longer paying attention.

https://www.codemag.com/article/0505051/What%27s-New-in-Visu...

boznz 4d ago on HN
With retirement + AI I have stopped giving a shit what programming language something is written in; If you can write it in BASIC, go for it.
MiroslavPokorny 4d ago on HN
Basic died because it lacks scoping, and has no locals. This makes doing anything on a large scale a pain...
jasomill 4d ago on HN
Structured BASIC dialects have function-local variables, BASIC dialects that support linking separately compiled modules support exported and non-exported variables, etc.
mdp2021 4d ago on HN
That's original Basic. Recreations are more complete.
pjmlp 4d ago on HN
Structured BASIC was already the way in CP/M, Vax,MS-DOS, Amiga, and even Dartmouth BASIC evolved to support structured programming.
p_l 36h ago on HN
DEC BASIC on VMS even had somewhat common-lisp comparable condition facility thanks to OS support, for those who don't know that means non-unwinding exceptions that allow continuing from where the condition was signaled
Kim_Bruning 2d ago on HN
BBC BASIC's first release in 1981 had LOCAL in DEF PROC and DEF FN.

And I've upvoted and favorited, because this is the most out of date comment I've read on hn so far. ;)

Daunk 4d ago on HN
I still enjoy and use https://blitzmax.org/
ChicagoDave 4d ago on HN
I was a pretty successful BASIC programmer, starting on DEC PDP-11 RSTS/E BASIC. Line number BASIC was good enough for simple applications, but quickly turned into spaghetti code.

Later, the VAX had BASIC with functions and subroutines and dropped the line numbers and this version of BASIC was significantly better. It was procedural, but you could organize your code into modules, keeping it readable and maintainable.

Eventually the non line number BASIC spread to the PC. Microsoft Professional Development System, then Visual BASIC.

segmondy 4d ago on HN
too bad it's for win, raspberry pi, arduino, esp32, etc need this sort of stuff. lot's of hardware folks who just want to do hardware and not learn programming. they might eventually learn python or C, but BASIC would be so much better.
throooooo 4d ago on HN
I'm guessing those type of folks will be well served by LLMs and need not care about specific languages.
Gorsefound (author) 4d ago on HN
A Raspberry Pi/ARM port is the most realistic next step; microcontrollers are a different beast. For ESP32/RP2040 today, MMBasic/PicoMite is worth a look.
Kim_Bruning 2d ago on HN
Raspberry Pi can run RISC OS, which comes with its own rather nice Acorn/BBC BASIC.
mdp2021 4d ago on HN
> What would BASIC look like

Check PureBasic. https://www.purebasic.com/

Compiles to native, interfaces to C libraries, available on most platforms...

ptx 4d ago on HN
It doesnt't seem to be open source, though. A proprietary language with a proprietary implementation is a dead end.
mdp2021 4d ago on HN
Still unmissable. Would not do without. Not everything is free - and some is really worth it.

Fast during development, fast results, flexible, well conceived, a pleasure to work with...

jrm4 4d ago on HN
I truly and genuinely do not understand why you'd do something like this not open source? You definitely lose popularity and participation, and today, you almost definitely also lose money.
mdp2021 4d ago on HN
> why you'd do something like this not open source

The project started in 2003 - the market was different then. Curated products of that kind were normal (and an honest linear attempt to finance the endavour).

pjmlp 4d ago on HN
Xojo, Mikroe BASIC, VBA, and VB.NET are still around even if they don't make HN headlines.
JdeBP 4d ago on HN
The interesting thing would be if someone made a lookalike for Visual BASIC for DOS (not Windows) that ran as a standalone EFI application.

That is the real 'what if it had not gone out of fashion' path. VB/DOS definitely went out of fashion. GUI BASICs became fashionable, instead. Everyone who does a 'visual' BASIC nowadays does a GUI one.

The headlined BASIC is nothing like a VB/DOS for EFI, though.

pjmlp 4d ago on HN
I would argue that the BASIC variants in 8 bit home computers were already GUI BASIC, given their capabilities and underlying hardware.

That wasn't the case with GW-BASIC, due to how MS-DOS came to be.

However the idea of an EFI BASIC does sound rather nice, assuming the whole plethora of graphics programming as well.

Other take the easy way out with RISC OS for the Raspberry PI, which has BASIC as main programming language alongside Assembly.

JdeBP 4d ago on HN
Oh yes. They were definitely graphical. No two ways about that.

I'm talking more about the distinction between VB/DOS and VB/Windows. They both did the whole WIMP thing, with a visual editor to construct the forms for one's programs, but VB/DOS used a TUI rendering that drew everything with VGA character graphics and used the firmware low-level keyboard access for input; whereas of course VB/Windows used the Windows GUI.

A VB/DOS-alike that ran on EFI and did the whole form-based programming thing, would use the EFI text input and output protocols, which know Unicode, waiting for events, and standardized scan codes and modifiers.

There is no major call for it, as you say, when bootstrapping an entire operating system is so easy. But it would be interesting to see someone tackle it from the point of view of what VB/DOS would look like today if it ran directly on the firmware, spoke Unicode, and ran in protected mode

pjmlp 4d ago on HN
Ah sure, that could be interesting, given the ongoing nostalgia for TUI interfaces.

A Phoenix like BIOS UI.

vunderba 4d ago on HN
Nice to see another VB/DOS aficionado! One of my first summer jobs that didn’t involve landscaping as a teenager was porting a CAD-based application from VB/DOS to Visual Basic 6 so it could run natively on Win9x machines.
NinjaTrance 4d ago on HN
If that was the future of the language, I'm glad BASIC is dead.
NinjaTrance 4d ago on HN
To give a bit more of context, here is a small subset of the new instructions:

  - SOUND PRELOAD
  - SOUND INFO
  - SOUNDGROUP
  - SOUNDNAME$
  - SOUNDAVAILABLE

  - LOADWAV
  - PLAYWAV
  - STOPWAV
  - WAITWAV
  - PAUSEWAV
  - RESUMEWAV
  - WAVCTL
  - DELWAV
  - WAVACTIVE
  - WAVPLAYING
  - WAVSTATE
  - WAVPOS
  - WAVLENGTH
  - WAVLOADED
  - WAVSLOT
  - WAVCHANNEL

  - LOADMID
  - PLAYMID
  - STOPMID, WAITMID, DELMID, etc.
What a terribly designed language.
kbelder 4d ago on HN
It's designed to optimize something you're not interested in. That's fine.
JdeBP 4d ago on HN
It was not the future of the language. It's starting, as the blurb says, from where GW-BASIC and the old Microsoft BASIC were in the early 1980s. We know what the actual future of BASIC was after those, because that future happened. It wasn't this at all.
hakfoo 4d ago on HN
It tells a specific counterfactual story, but it's one that has a reasonable background for it.

If you were a new computer user in 1980, your Appie II+ or PET 8032 booted straight into BASIC, and it was a good-enough tool that could do productive development for the entire life of the machine there.

But if you were a new computer user in 1990, you didn't have that. They gave you GW-BASIC, and if you're lucky a separate manual rather than a vague chapter in the main DOS manual. This might be enough to give you some initial experience with programming, but you have a bunch of hard brick walls.

Your machine might have 640k-4Mb of memory, but GW-BASIC can only meaningfully work with 64k of it. You can't access the mouse or any post-EGA graphics modes without a LOT of assembly shimming. If you had a sound card, it was outside the built-in tooling.

Remember, this is a few years before the Internet being widely available, and stuff like the GNU project being widely accessible. This is probably the best development tool you have available

If you wanted to go further in programming, it meant buying a boxed compiler that probably cost well in excess of USD100, and was for a completely different language than the one you had cut your teeth on.

But if you wanted "The GW-BASIC I already understand, but more", you want this.

meelford 4d ago on HN
this would be ideal for the latest version of the modern ZX Speccys, especially given the growing interest from hardware enthusiasts
meelford 4d ago on HN
also - is a mac version planned?
SilentM68 4d ago on HN
Where's the Linux/macOS version?
Trung0246 3d ago on HN
How does it fare against twinBASIC?
SIMPL_Language 3d ago on HN
I've never forgotten BASIC, mainly because you never forget your first love. In fact, inside my SIMPL project (a Cambridge pseudocode interpreter, plus other features) I created SIMPLR, a BASIC interpreter along the lines of the ones found on 8-bit home computers.

If you're curious about it, you can download it for free here: https://simpl-pseudocode.itch.io/simpl

solous 2d ago on HN
You have no idea how many industries are supported by Excel + VBA

Comments are loaded live from Hacker News and are not stored by Mid or Real.