| ▲ | pillefitz 4 hours ago |
| This is amazing! Having no knowledge of Basic, a.) what makes the rewrite "impossible"? b.) how do coding agents perform on the codebase? It might make for a neat benchmark similar to ARC |
|
| ▲ | lelanthran 2 hours ago | parent | next [-] |
| The BASIC from that time was pretty limited, IIRC. No real functions, only `gosub` and `goto` so everything is a global variable. I think even assembler for x86 is easier to unravel. |
| |
| ▲ | benstopics an hour ago | parent [-] | | PowerBasic does have functions. Go there is thousands of goto and gosub which would need to be unraveled which there isn't really a 1:1 for gosub at least in say C++. Or EXIT IF... The bane of my existence... |
|
|
| ▲ | thomassmith65 3 hours ago | parent | prev | next [-] |
| I gather the version of Basic is not Object-Oriented. So the program most likely is flat: a bunch of global variables (and possibly memory addresses), and instructions ordered by line number, rather than functions or methods. |
| |
| ▲ | flomo an hour ago | parent | next [-] | | Apparently PowerBasic was the successor to Borland TurboBasic and complied to a native executable. So this wasn't an interpreted 'line number' Basic like our kiddie computers. It also probably had the Borland Windows GUI stuff. (However it wouldn't surprise me if older 'line number' programs still mostly worked. iirc VB6 also supported this.) | | |
| ▲ | benstopics 41 minutes ago | parent [-] | | No line numbers but you can use numbers as goto labels. It uses Dynamic Dialog Tools which is a Win32 wrapper which most of my "job" is gutting out those calls, implementing Single Responsibility in functions and plugging in Electron UI. And trying not to break EVERYTHING... |
| |
| ▲ | benstopics 44 minutes ago | parent | prev [-] | | Functions yes, and actually PowerBasic does have OOP. Michael didn't use it but it's there. No line numbers except for goto labels, but gosub is the challenge for transpilation. |
|
|
| ▲ | benstopics an hour ago | parent | prev [-] |
| a) At the time it was impossible for me. I think I could actually do it now. But now that I can read the BASIC... what would be the point? If I wanted it cross platform, I will build a virtual machine.
b) Claude Code has performed exceptionally well. I haven't tried the most recent Codex update. But I don't see the point in spending thousands of dollars on tokens to rewrite it when it works perfectly fine. It would be much cheaper to have Claude Agent build the virtual machine. That's just my opinion. If it ain't broke don't fix it I guess. I do want to bring it to mobile though, whether that's a phone app or responsive website. |
| |
| ▲ | thomassmith65 31 minutes ago | parent [-] | | Can the original code simulate the stock market as it operates today? The main reason I would want to convert the engine to a modern language is to make it easy enough to understand that I could add features. | | |
| ▲ | benstopics 19 minutes ago | parent [-] | | I think it will definitely need refactored in order to do an overhaul like that. But the best way I can answer your question. WSR does not claim to simulate real markets. It probably leans too much into fundamentals for our time, at least for the blue chip stocks in the game. What is actually is is a M&A and tax evasion simulator on top of a financial market sandbox to create tax implications to be avoided. |
|
|