Check Out This Visual Basic 6 Rebuilt in C# That Runs in The Browser

Originally shared on this forum, I thought this was too good to keep to myself!

Repository can be found here: https://github.com/BAndysc/AvaloniaVisualBasic6

Wow, now I need WASM Delphi…

Vail said:
Wow, now I need WASM Delphi…

https://wiki.freepascal.org/WebAssembly

Thanks for sharing. Let me post a mini FAQ from this forum:

FAQ:
Q: Repo link?
A: GitHub - BAndysc/AvaloniaVisualBasic6: A recreation of the classic Visual Basic 6 IDE and language in C# with Avalonia

Q: Is there a web version?
A: AvaloniaVisualBasic.Browser

Q: What works?
A: You can create a form, write VB6 code, run it, save and open projects, and even make an EXE!

Q: Why is this being done?
A: Just for fun and nostalgia. It’s a toy project, nothing serious.

Q: Does this compile VB6 code to native code or IL?
A: No, it’s interpreted. But the runtime works with NativeAOT so when you make a project, it generates a native EXE that interprets VB6 code.

Q: Does it support the entire VB6 language?
A: Not at all. Only a small part of Visual Basic. I plan to add more features later.

Q: Is it cross-platform?
A: Yes, it is! The GUI is made with Avalonia, so it runs on multiple platforms.

Q: Looks fun, can I help?
A: Definitely, contributions are welcome!

Q: Will Microsoft sue you?
A: Microsoft please don’t do it ;___;

@Foster

Q: Will Microsoft sue you? A: Microsoft please don’t do it ;___;

Given how Microsoft has treated BASIC, I don’t think they would care.

This brings back memories. Drag, drop, double-click the button to open the event code…

Thank you Bartosz

VB6 was my first programming language. I still miss it. Cool project!

Ren said:
VB6 was my first programming language. I still miss it. Cool project!

Yeah, it reminds me of middle school days.

Now someone should do FoxPro!

Parker said:
Now someone should do FoxPro!

Was F# related to FoxPro? I can’t remember… Microsoft has put out too much stuff.

Ezri said:

Parker said:
Now someone should do FoxPro!

Was F# related to FoxPro? I can’t remember… Microsoft has put out too much stuff.

No, they are not related. F# is closer to OCaml for .NET. It has diverged a lot from OCaml, but if you compare the two, you can see some similarity.

This is really cool. I wish it was more than just a toy project, because I still work with a huge VB6 code base regularly. Luckily, we’ve stopped new projects in VB6 (yes, we were still doing new projects in VB6 until a year or two ago) but we still need to support many legacy customers and code.

@Addison
I interviewed with a company a couple of years ago that had a VB6 app still being actively developed, which wasn’t mentioned in the job listing. They asked how I felt about maintaining it and I was like, um…

@Addison
You might want to check out twinBASIC, they are working on 100% VB6 compatibility. It’s proprietary (freemium), but seems polished.

Impressive. Am I right to say the UI is made with XAML? About how many hours did you spend on this?

Mackenzie said:
Impressive. Am I right to say the UI is made with XAML? About how many hours did you spend on this?

Yes, it’s all XAML, cross-platform, and rendered by Skia.

Not too long actually, around two weeks of after-hours work.

@Foster
I’m surprised at how well it works. I can see how something like this done in HTML/JS wouldn’t perform well.

Harlyn said:
@Foster
I’m surprised at how well it works. I can see how something like this done in HTML/JS wouldn’t perform well.

No, take VS Code or Google Docs for example. They don’t struggle for the most part on modern hardware, right?

Another interesting project is TwinBasic. TB aims to create a modern strict superset of VBA/VB6. Several projects try this, but TB seems to have the most support and the best compiler.

The downside is that it’s closed source and supported through a license/subscription model.

You know, it frustrates me when someone creates something cool and someone else asks, why?

But looking at this, I’m blinking.

WHY?!