back to article Nostalgic for VB? BASIC is anything but dead

If you miss the simplicity of putting an app together with drag-and-drop in VB, there are some alternatives that might tickle your tastebuds. Good old VB has been visited with some affection recently, as Reg sister site DevClass has discussed. Way back in 2014, Microsoft said it would go open source, but all that emerged is …

  1. Anonymous Coward
    Anonymous Coward

    Francois Lionet's AMOS2 project is by far the most appealling of the basic clones currently around.

    I love the idea of a language where the core libraries are somewhat unified. Helps immensely with learning how to do things, rather than endlessly battling the API and dependencies.

    Obviously one is more potent than the other model, but when the objective is "hobbyist" I'm a fan.

    1. Liam Proven (Written by Reg staff) Silver badge

      [Author here]

      > Francois Lionet's AMOS2 project

      I did look at that, and consider including it.

      The things are that...

      [1] The blog hasn't been updated since 2018: https://storyofamos.blogspot.com/

      [2] His Patreon ( https://www.patreon.com/francoislionet ) says:

      « this text was written in March 2019, a new one to come soon »

      5Y and no update, when it was promised? There are some later supporter-only posts, but none for a couple of years as far as I can see. I hope the poor chap is not dead, but it does not look like he won much support, sadly.

      [3] There does seem to be source code, but again, untouched in years: https://github.com/AOZ-Studio/AMOS-Professional-Official

      [4] This looks more current but also seems to be unmaintained, not FOSS, and Windows-only, but it is hard to tell. https://www.aoz.studio/

      What seems to be his company looks to still be around but working on unconnected things now: https://www.clickteam.com/

      1. Dan 55 Silver badge

        AMOS2 is now AOZ Studio. Spread the word! They seem to have glossed over most of the history linking AMOS with AOZ but the bug tracker has lots of tickets where the aim is to make things work in a compatible way with AMOS.

        Seems to work on many devices.

        Not sure if it was a completely wise idea to stop using a name which has a history, that's what they've done.

  2. Dan 55 Silver badge

    SpecBAS

    There's SpecBAS for a modern-day branch of Sinclair BASIC, although obviously faster and with better graphics. Windows only unfortunately.

    1. Liam Proven (Written by Reg staff) Silver badge

      Re: SpecBAS

      [Author here]

      > Windows only unfortunately.

      Indeed. I pointed Paul Dunn at Ultibo and suggested a bare-metal RasPi version, but no joy as of yet.

      https://ultibo.org/

      Failing that, he could port it to FreePascal and that would make Windows/Mac/Linux versions easier.

      1. ZXDunny

        Re: SpecBAS

        I have made considerable progress in getting it to build in FreePascal/Lazarus - there's just a few small issues to solve regarding how I handle strings and pointers to their contents that FPC really, really doesn't like. There's another chap has taken up the challenge to port to Linux, so with a little luck my horrific abuse of pascal won't hold us up for long.

  3. wavemobile

    Xojo all the way...

    This has really evolved from the days of RealBASIC (when you could actually import VB projects into it and it converted them!). It's not cheap for the versions that cross compile, but it really does work well, is pretty fast, and even for console apps is very capable with socket handling, popular database integration, threads, custom plugins, etc. We're running the backend of our mobile network on it as it started off as a hobby but has evolved into a bit of a beast - it's very stable and simply works, so whilst there is a plan to move over to something C based we're still only at 5% capacity of the current software so happy days.

    There's also some language evolution going on so whilst you can use mystr = left$(hellomatey, 5) you can also use mystr = hellomatey.left(5). Oh, and there's web, Apple and Android app support.

    1. TheFifth

      Re: Xojo all the way...

      I've been a RealBASIC / Real Studio / Xojo user for more than twenty years, but recently it seems the management is making decisions that are actively hostile to pro and long term users. The language changes for API 2 and worst of all, the changes to the event names and desktop controls seem utterly pointless and are making years of example code and instructional content obsolete. What is the point of changing the 'Open' event to 'Opening' or 'Dim' to 'Var'? All it does is break old code examples. Also, to stay current and get bug fixes for issues in the Xojo framework (there are many!), you have to put in hundreds of hours of work to transition old projects to API 2. All this to make no progress on the project at all, just hours and hours of work to stand still.

      They say API 1 won't be going away for a long time, but as it won't receive any updates for the many bugs it's obviously not a long term solution for existing projects. Also, how long is a long time?

      I've been maintaining old API 1 projects for years, so haven't had much contact with API 2. These projects will stay on API 1 and be ported to other languages sometime in the future. Recently however, I needed a simple utility app for personal use and thought I could bash it together quickly in Xojo. It was massively frustrating as my 20+ years of experience were useless in so many areas. Adding to the frustration is that if you search for solutions on Google, or even their own support forum, all you get are hundred of results that are no longer relevant. To top it all off, Xojo have changed their documentation system in such a way that it is not SEO friendly, so the up to date reference material that you actually need is hidden away on page 10 of the Google results. And don't talk to me about the search box on their new documentation system either. If you type too fast, it doesn't return any result (as it's using AJAX in the background to get results but stops searching as soon as you hit enter), and the results you get are pretty useless. It's an utter mess and the worst part of it is that it is all mostly pointless.

      Many passionate, long term users, and pros who rely on Xojo for their income warned them about all of these issues before they happened. They were simply labelled as trouble makers and banned from their forums.

      I used to love RB because I could be very productive with it, but now I won't use it for anything beyond personal utilities and certainly not for any paid work. I just don't trust the company to make the right decisions anymore. Pointless fettling with the language whilst framework bugs fester for (sometimes) years seems akin to rearranging the deckchairs on the Titanic.

      1. wavemobile

        MR

        To be fair I have to agree with many of your points. I still however find it really easy for prototyping things that would just be too much of a pain in C. That said, I guess I am a luddite as most people prototype these days in python.

        1. TheFifth

          Re: MR

          Don't get me wrong, I'm not hating on the product for the sake of it. I'm just so disappointed in their recent path and (in my opinion) poor decisions. I had been an active user and cheerleader for RB / Xojo for many years, but I just don't feel I can do that anymore. I'm more sad about it than anything else. I genuinely think they are destroying what was and could have remained a great language / framework.

          For desktop it is (or was) great. It's mostly stable and mostly does what you need, although you will likely need third party plugins to go beyond the day to day stuff. Xojo iOS is a toy (believe me I've tried to use it for work and it's not up to scratch for much beyond a simple shopping list app) and I'd bet that Android will be little more than a toy when it's finally released.

          The Web 1 to Web 2 transition (or lack thereof) is a real kick in the teeth for anyone who went all in on Xojo Web. I didn't thankfully.

          I used to use it for prototyping and bashing together quick little utilities all the time, however as my last experience doing so was so frustrating I don't know if I will anymore. All the language changes and the impenetrability of their new language reference, and of course the utter uselessness of any Google or forum search as all the code is outdated and doesn't work anymore, made the experience unpleasant. As my little utility was for Mac only, I think it would have been quicker to make in Swift rather than Xojo (and I've only just been learning Swift recently).

          I have a sneaking suspicion that this API 2 stuff is all about getting people to renew their licenses. Many users don't renew yearly, especially since they stopped offering discounts on license renewals. People just use the last version that does what they need until a new version has something they want. Personally I only updated once every two or three years. I only have a current Mac Desktop license, but have a few older Pro licenses if I need to build for Windows (which is once in a blue moon). By ensuring that anything I write in my newer Mac version isn't compatible with the older Windows version I have means I'll need to buy a Pro or Windows license to build for it.

          Why else would you make changes like App.AutoQuit to Application.AllowAutoQuit and ListBox.CellCheck to DesktopListBox.CellCheckBoxStateAt? They both do the same thing, one is just annoyingly verbose. It's just forcing backwards incompatibility for no gain other than perhaps selling a few more licenses. Not gonna happen I'm afraid.

          1. Tim99 Silver badge

            Re: MR

            I understand your frustration. I am in the twilight of my coding years and go back to various derivatives of Dartmouth BASIC. I have made the decision that I am getting too damn old to cope with all of the rapid changes in Swift for a couple of small pro-bono apps I'm putting together, so I looked at a couple of alternatives. I've been playing with XOJO for about 7 months now, and must admit that I like it - Obviously I don't have the problems that you have, but I did a fair bit of stuff in VB and noted the 'Dim' to 'Var' change (As I recall. 'Dim' was a Microsoft choice that originally was for arrays, but they lumped variables in there too). I too have found searching for stuff irritating, unless I remembered to put a date range in to filter out the old stuff. So far, the verbosity that you noted hasn't been a problem as the autocomplete seems to work well.

            I'm sorry to say that older people may not be XOJO's current market <smiley> - In my case I have probably <5 years left, so anything I write for outside use is small and not mission critical. Your comment "I have a sneaking suspicion that this API 2 stuff is all about getting people to renew their licenses" may have an element of truth, but that is a business putting food on the table. At least, unlike most of the subscription market, your stuff will continue to work unless there is a major change in the underlying OS. I remember the howls of protest with changes in different Microsoft VBs - It was my experience that moving a project to a completely different platform just does not happen, unless it was mission critical (and that would normally take a very long time).

            As an experiment I looked at a QuickBASIC program I had written in 1988 to take data from an instrument, rearrange and reformat it, and then put it into a CSV file that would be automatically loaded into a database: It took me about half an hour to work out what it was doing, about and hour to rewrite in XOJO, a bit longer to debug; and at the end it ran under macOS and Linux too (with a couple of small fixable file system problems).

            I paid for the XOJO macOS licence and prototyped a couple of things. Originally I was going to run them as native apps, but in the end went with web versions to make deployment and support easier. Generally I have been very pleased: A simple web database app deployed on a LAN gave a "satisfactory" performance with a SQLite backend on a Raspberry Pi4: Its multiuser test CRUD performance plateaued at >200 creates and deletes/sec with about 800 triggered updates, and 600 retrieves; and still allowed a couple of users to do manual CRUDs with returns at about 2 seconds for the user. I liked the ability to run this without setting up a separate web server, making deployment and maintenance a lot easier. In this case the app will only be used within a single building, so security is easier. Disclaimer: I have just paid for the upgrade for web deployment...

    2. A Non e-mouse Silver badge

      Re: Xojo all the way...

      it's very stable and simply works, so whilst there is a plan to move over to something C based

      Why? As you say, it works, so why recode it?

    3. Wayland

      Re: Xojo all the way...

      Free on the Raspberry PI i read.

  4. RobThBay

    PowerBasic anyone?

    Don't forget PowerBasic (gui & text versions), brought to you by the team that created Borland Turbo Basic.

    1. StuartMcL

      Re: PowerBasic anyone?

      I still use PowerBASIC frequently. If you are working in Windows and don't need 64bit compiled applications, it's hard to beat:

      Very fast, very small executables and very powerful,. There's very little you can't do with it.

      1. md56

        Re: PowerBasic anyone?

        Yes, I do too (still using V5) -- fantastically fast, great dor large data analyses, just love it. I have literally thousands of .bas and .exe files on my hard drive. Tried and failed to get to grips with The Snake.

  5. Jason Bloomberg Silver badge

    Snakes in the grass are absolutely free

    I was a great fan of TurboBasic/PowerBasic for console apps, loved VB6 for the desktop, then moved to RealBASIC/Xojo. I even fired-up VB6 on Windows 10 to support some apps I still use, VB3 just to prove I could, VB1 for shits and giggles.

    But, when it comes to developing cross-platform code I can share with other makers, I settled on Python and Tkinter and can't see myself going back to Basic any time soon.

    1. Rattus

      Re: Snakes in the grass are absolutely free

      So should I "Go Wild, Wild in the country"?

      I Bow wow wow...

  6. Frozit
    FAIL

    DLL Hell.

    The thing that killed VB or ActiveX/OCX was DLL Hell.

    When some inexperienced people at Microsoft made the unfortunate decision to "enhance" MFC, they broke the C++ object model for MFC. And since MFC exposed C++ objects across the DLL boundary, and you can have only one version of a DLL loaded into an executable space, you would get 2 ActiveX objects needing different versions of the MFC dll. Leading to memory corruption and bad crashes.

    This made anything you tried to do in the browser with ActiveX to be impossible. You had no idea what a different page would load in, or what got loaded in before your page.

    ActiveX was a good way to expose complex code objects to light duty programmers. However, DLL Hell caused most product software houses to abandon it. It created continual, impossible to fix support problems.

    You could avoid or contain the issues by making a VB executable, but given where the industry was going in the early 2000s, this was meaningless.

    1. AMBxx Silver badge

      Re: DLL Hell.

      I think the thing that killed VB was that MS tried to make it a 'good' language with the introduction of .Net. People were using it because it was a quick way to create GUI applications. .Net put off hobbyists. Any more advanced users, just cross-trained to C# as that gained more respect and higher wages.

      1. Fred Daggy Silver badge
        Angel

        Re: DLL Hell.

        If it could get back to its root: Quick, Simple and Easy, Microsoft would have a winner.

        It does not need to be a first class party to the .NET world. It would be good to do a few simple things, fast (not fast to run, fast to get to the "Hello World" stage).

        1. AMBxx Silver badge

          Re: DLL Hell.

          I'd like a proper forms based designer for web applications. I shouldn't be worrying about the underlying css anymore than I worry about a gfx card's drivers.

  7. TheMaskedMan Silver badge

    Those Usbourne books in the header image! Goodness they bring back memories - I had several of them in the early 80s, and probably still have, somewhere!

    1. Dan 55 Silver badge
      1. TheMaskedMan Silver badge

        "And here are the PDFs if you don't."

        Fantastic, thanks for that link! That's my bedtime reading sorted

      2. jb72

        Wow .. thank you.

    2. MOV r0,r0

      Peter Usborne CBE died yesterday, 30th March. He seemed by all accounts to be a remarkable individual, for example he was working up until the day before he passed away. Worth tracking an obit down - if only for all the early Private Eye stories!

  8. Anonymous Coward
    Anonymous Coward

    The article says that BASIC isn't dead. The problem is that it mostly *is* dead as a modern tool, despite attempts to revive it- even the headline gives that away by using nostalgia as a hook.

    And the reason this article seems to go in so many directions covering the different approaches is the problem with *any* discussion of BASIC in a modern context. "BASIC" isn't a single language, the environment you want to run it in isn't and the motivations for wanting to revive it vary widely. Someone looking for the experience of (say) BASIC on the Sinclair ZX81 isn't looking for the same thing as the VB revivalist. Someone (trying to) argue that it's a serious language for modern development is looking for something else again.

    Ultimately, the only thing they have in common is the core syntax of BASIC, and even *that* was notoriously fluid.

    Now that many of us who grew up with it have moved away from it, and we're a generation past the era where newcomers to programming gained that cosy familiarity by default, is BASIC *really* easier for doing anything modern with than (say) Javascript's C-derived syntax?

    And does that ease of use make up for its clunkiness?

    Sticking with BASIC superficially made sense when everyone had grown up with it on 8-bit computers during the 1980s and the syntax (and name) was comfortingly familiar.

    The original 1990s Visual Basic being based on, well, BASIC(!) was understandable in that context, it was the familiar friend that helped ease people into something that- even then- was obviously more powerful and a different beast to BASIC on a ZX81, or whatever.

    But is there *really* any real rationale for using BASIC today- in a recognisable form- beyond nostalgia? I'm saying that, yes, it was popular once, because it was easy to implement and integrate into 8-bit machines in a way that (say) C wasn't and easy to use. But you wouldn't go back to those days, and I'm not convinced that BASIC would be any easier for those who didn't grow up with it in the first place than numerous other languages.

    1. Killfalcon

      The use case remains "Office macros", I think - I say this because it's still my job.

      I have a few VBA applications that just use Excel as a front-end, but, well, Finance. We still have COBOL buried deep under the zOS and AS400 stuff that's under the .NET and mySQL and C# and whatever the hell else the presentation layer is written in.

      I can't imagine there being much call for younger orgs to say "we should have a VBA Support Person", obviously, but I do wonder if itll ever die fully so long as that 'record macro' button exists, tempting people to start 'improving' things...

    2. ZXDunny

      You're pretty much spot-on there; BASIC is used by enthusiasts that grew up with their TRS, their 81 or Speccy, their C64 and want to have fun with that. Now of course there are people who grew up with VB looking for exactly the same thing. There are outliers that have heard that BASIC is the easy language to learn, so they start there but they tend not to stick around in the main, as they quickly realise that the retro stuff doesn't have a modern UI or that say, graphics hardware support is not as complete as they'd like.

      I wrote my interpreter purely because I wanted to recapture the joy I felt as an 8 year old making terrible games in front of a wedge and a TV on a sunday evening. By golly I've achieved that, but under no illusions that I'll ever actually use it to make anything serious.

  9. jake Silver badge

    I think I can safely say ...

    ... that if there is any language family that I will never be nostalgic for, it would be BASIC.

    In fact, quite the opposite ... If BASIC had never existed, the world of programming would be a far, far better place. Never has a single language fucked up more neophyte programmers than BASIC. I've been cleaning up after the messes it leaves behind almost my entire career.

    1. ravenviz Silver badge
      Go

      Re: I think I can safely say ...

      Various dialects of BASIC (Sinclair, Commodore, BBC) in my teenage years enabled me to take on Visual BASIC in the 90’s to take care of mundane housekeeping tasks in the workplace I eventually entered, so much so that the whole work group used the tools I wrote (I was a geologist). Then later on I was able to ease into shell scripting and Excel macros quite seamlessly, further enhancing productivity without the need for actually needing a developer. These things were more or less throwaway and certainly not part of the company toolkit portfolio, but very useful at the work group level for just knocking something up quickly.

      1. File Not Found

        Re: I think I can safely say ...

        Absolutely my experience too - I was able to sneak some automation, batch processes and simple analytical tools into the NHS in the 1990s (as a result of hobbyist Basic skills from the previous decade), while NHS central concentrated on the perpetual widening of the drain it poured its IT development funding into.

    2. Sceptic Tank Silver badge
      Devil

      Re: I think I can safely say ...

      Quite the opposite of what you safely say, I think: I learned programming on an MSX computer using MSX-BASIC. That was so painfully slow that I became interested in Z80 assembly programming. From there on to PC's and Turbo Pascal, because GW-BASIC was a stinker. Then learned C++, etc., etc. BASIC was just a tool to get started and to start thinking if things cannot be done better.

    3. RobDog

      Re: I think I can safely say ...

      …that you’re doing it a great disservice. Without BASIC the world of computers/data processing/office automation or whatever other term was kicked around in the 80s, would have been nowhere near as populous as it was, and it was an absolutely key element in sparking the interests in a computing career and in creating the essential tens/hundreds of thousands of (now) middle-aged, weathered IT pros who were there to underpin the digital age as really took off.

      I also won a bet of £10 with myself, because I speculated that you specifically would have something negative to say on this subject. I’ve been in the job 35 years and hardly ever seen a problem like the one you describe. DOS scripters gave me headaches. So give us a few examples? You usually do.

    4. Dan 55 Silver badge

      Re: I think I can safely say ...

      I'm unsure which other language would have done a good a job of getting people into programming and would have fit in 4, 8 or 16K ROMs of the time.

      Also, you may be thinking of the Microsoft version instead of e.g. BBC BASIC or SuperBASIC which are pretty structured.

      1. Michael Wojcik Silver badge

        Re: I think I can safely say ...

        I've worked with a great number of programming languages, in all the various families (procedural, OO, functional, dataflow, etc) from various assembly languages up through 4GLs and pick-and-place graph languages. I don't think any of them inherently do a good job of teaching how to program well, much less how to be a good software developer (much of which is not programming), regardless of how frugal or profligate they are with resources.

        Languages simply do not have that much influence. You can write structured, robust, maintainable code in any language, even something really awful like the Praat scripting language or Perl. You can write terrible code in any language, even one with a lot of expressiveness and syntactic sugar and guardrails and hand-holding. Yes, it's easier to learn data structures in Pascal than it is in traditional BASIC. Yes, it's easier to learn functional programming in LISP than in COBOL (in fact it's a real pain to do it in standard COBOL, but that doesn't mean it can't be done). But no language forces people to learn good techniques and habits. I don't believe any language forces them to commit to poor ones, either.

  10. This post has been deleted by its author

  11. Joe Cincotta
    Devil

    How could you ignore VisionBASIC?!!!?!

    https://visionbasic.net/

    A new variation of BASIC for the Commodore64!

    In all seriousness though, loved your article. BASIC remains a lingua-franca for many, and its variants across an infinity of platforms make for some tremendous obscure explorations when trying to avoid doing real work. Cheers!

  12. StuartMcL

    And VBA?

    Let us not forget what MS Access and VBA can do in the hands of a competent developer. It's still a great RAD tool for small to medium data applications , especially if hooked to a decent RDBMS backend,

  13. Anonymous Coward
    Anonymous Coward

    GUI interface

    I hear you can create a GUI interface using Visual Basic to track an IP address.

    1. Robin

      Re: GUI interface

      Thanks a lot. I just had to go and watch that clip again, and now I feel sick.

  14. Potemkine! Silver badge

    BASIC was cool to learn to make programs, 40 years ago.

    VB is a huge pile of crap that no one should touch even with a long pole

  15. Anonymous Coward
    Anonymous Coward

    Devs are snobs

    Basic had to die. No-one wants to admit they code in a language that's "Basic". We do this to look clever, not basic, right?

    1. ravenviz Silver badge

      Re: Devs are snobs

      See comments above.

  16. DrXym

    Basic isn't the problem

    I expect anyone with time on their hands could make a 100% compatible implementation of the Visual Basic language. It's not complicated as far as languages go.

    The big problem would be the integration with the masses of 3rd party OLE2 controls that every VB app relied upon. I've written OLE2 containers from scratch, and plenty of OLE2/ActiveX controls and it was a pain in the arse whichever side you were coming from. Hosting controls / objects and wiring them up would involve implementing a lot of esoteric COM interfaces for automation, attributes, events, storage, streaming, edit/runtime mode, windowed, windowless controls, type libraries. Not only do you have do it once in a form designer & editor, but a second time in the runtime. And because of the traditional problems with mixing DLLs, it all probably has to be developed in an old version of Visual Studio in an old version of Windows.

    Personally I think would just dump any pretense at compatibility and do a look-a-like like Gambas, working on improving the controls built into the environment, or imported in a sane way, to negate any need to incorporate 3rd party binaries.

    1. MarcoV

      Re: Basic isn't the problem

      If gambas (also) had an pure Windows option, like e.g. the already mentioned Lazarus does, it might already be exactly that.

      I still encounter a lot of old delphi (D4..D7) and VB6 with HMI programmers.

    2. JimC

      Re: Basic isn't the problem

      The thing is the 3rd party OLE2 controls were the problem. If you needed to get into that sort of level of complexity you shouldn't have been using VB. VB was a damn handy tool for doing all sorts of straightforward stuff that enhanced productivity without costing a fortune. But the complexity escalated until suddenly it wasn't a simple handy tool. VB4 was probably optimal, and after vb6 I more or less abandoned it and started doing my productivity enhancement apps in a web browser using php.

  17. DoctorPaul Bronze badge

    Nothing but a toy

    I started coding using BBC Basic, moved on to Turbo Pascal, then bought Delphi on the day that it shipped in the UK (Windows95 show in London?)

    That showed up VB for the toy that it was - you dropped a component on a form and the code appeared, change some code and the component updated itself. Magic!

  18. Ernst Blofelt

    Why emulate when you can Z80-MBC2

    Currently writing for BBCBasic on my z80 CP/M board

    Basics will never die

    Microsoft Basic80 and 85 are also available

    on my Z80-MBC2 CP/M modern recreation of

    the old 8 bit days

    Currently building functions to send the escape

    code to the terminal for changing colours and

    drawing shapes.

    It's got HiTech C, Assembler, Turbo Pascal, Turbo C

    and forth available too

    1. Dan 55 Silver badge

      Re: Why emulate when you can Z80-MBC2

      At the risk of another downvote from someone who doesn't like new variants of BASIC being mentioned in the comments (odd in a story about BASIC), there's also BBC BASIC ported to the Agon Light, which appears to be a similar eZ80-based board.

  19. Wayland

    This is a very useful article

    RAD or Rapid Application Development used to be a very useful way of knocking out a business application soon enough to make it useful. There was a time that the secretary could write a data base in the morning and have it emailed to users by the afternoon with responses coming in the next morning. Very rapid thanks to Lotus Notes. Those days are gone and only highly paid coders can create such things taking them weeks or even months.

    I used to rapid develop databases in MS Access which is fine for Windows but deployment is protracted.

    It's good to see there is a Delphi alternative but that was never as rapid as MS Access let alone Lotus Notes.

  20. jayconverse

    I wrote my first BASIC program 50 years ago on punch tape. Later today, I will be working on a VB Dotnet application for one of my clients. BASICally, I put my kids through college.

  21. Bitbeisser

    Interesting that you decided to include Bywater BASIC but on the other hand completely ignored Rob Hagemann's PC-BASIC (https://robhagemans.github.io/pcbasic/).

    Yeah, I know it is written in Python, but I wouldn't hold that against it... ;-)

  22. Blackjack Silver badge

    This is quite nostalgic as plain BASIC was my first programing language.

    But if I ever tried to program again, I think I would try whatever version of Python is the current long support one.

  23. Plest Silver badge
    Pint

    VB for MSDOS and DarkBASIC

    One of my favourites had to Visual Basic for MSDOS way back around 1994, it was almost an identical clone of the Windows versions complete with ANSI based GUI, event driven BASIC coding, I wrote loads of utilities and silly little DOS apps using it. One of the few superb, incredibly efficient things MS ever did.

    I've DarkBASIC by UK dev company TGM, it allowed you to tap into DirectX using a variation of BASIC, you got full Phys-X access and 3D modelling with BASIC coding, pretty nifty version. I wrote various games for my daughter to play, silly interactive 3D physics toys she loved playing with.

    I once worked with a finance system that completely written in compiled BASIC, it ran on DECAlpha and early Solaris, it was in use for years and stood up to some serious punishment. These days I've no wish to go back to BASIC, started coding it in 1982 as a wee nipper on the family Dragon32 computer, used it on Amstrad CPC for various school projects, a little bit of GWBasic, VB for MSDOS and last was DarkBASIC around 2007. I'm a proud Golang Gopher these days!

  24. julio.merino

    Don't forget the modern EndBASIC

    I'd like to call out EndBASIC as well, which you can find at https://www.endbasic.dev/ . This is my take at implementing a retro-looking BASIC environment using modern technologies. Supports running on the web as well the desktop on multiple platforms, and also has cloud file sharing capabilities.

  25. xyz Silver badge

    Think of the children...

    When it comes to Basic just say no.

  26. tiggity Silver badge

    If we are having the occasional article on programming languages can we have requests?

    I would be quite interested in mobile phone app languages (ideally those that can target both Android and Apple)

    Especially if they are quick & easy e.g. (to riff off the article) VB style drag and drop.

    I have done Android paid work in the past using Googles Tools (but obviously that cant port to Apple)

    Also used (again paid work) old Windows mobile dev tools (WInCE thru to mobile 6.5, and then in typically MS way they produced different tooling for Windows Phone 7 and no code conversion tools, so hence switched to Android). I know MS do supposedly do cross-platform mobile tools, but I am sick & tired of MS killing one set of dev tools & forcing you to another with no tools to auto convert that I don't want to waste time on their stuff again for personal interest work in case they EOL stuff yet again (different if paid work) - and obviously non portable

    Just something quick & easy to allow basic cross platform apps to be built for a bit of personal fun without having to learn a massive framework before writing a line of code (if I want something serious I will write it Android only using Android Studio, but partner has Apple & so would be good to code for that too)

    1. Bloguintosh

      Re: If we are having the occasional article on programming languages can we have requests?

      Regarding this, Xojo is for you! It allows you to developer both for iOS and Android (currently in public preview) using the same IDE and language! You'll be able to create apps for your own and also those being distributed in the Apple/Google stores.

      The creation of user interfaces is as simple as drag & drop controls from the Library to the Layout Editor, and then write the code to execute on the related events of such controls. Of course you'll be able to add code also on Methods, Modules, your own classes and all the stuff related with Object Oriented Programming… but in a simple and intuitive way.

      Also very recommended because you'll be able to test the developed apps not only from the Xojo IDE (that is, on the Simulators / Emulators provided by Apple / Android) but also on real devices connected to your computers. That's a must!

      And because it is the same IDE and language… you'll be able to share the code between iOS/Android projects, except of course for things that are specific to any of these platforms. Just download Xojo and give it a try to see it yourself (there are several example projects you can play with).

  27. PeteB1951

    I remember my first Basic program in 1970 typed on a Teletype 33 in Darlington College of Technology linked to (I think) Newcastle University. I later wrote a support system in Basic for an early Urban Traffic Control system on an Apple II. Good times.

    I've recently encountered MMBasic Https://MMBasic.com which runs on a Raspberry Pi Pico and has a superb printed manual. Well worth a look for nostalgia freaks.

  28. svb

    There are two more VB languages"

    1. Small Visual Basic: Which is an educational language for kids and beginners, built on top of MS Small Basic, to be a step up towards VB.NET. It Contains a form designer and a small WinForms Lib with a test of some advanced WPF graphics.

    https://github.com/VBAndCs/sVB-Small-Visual-Basic

    2. ModVB: It is the next VB.NET generation, created by Anthong D. Green, the former OM of VB.NET before leaving MS. Mod VB is forked from Roslyn, and still a pre-release. If can be added to VS.NET as an extension, and live side by side with VB.NET. Its aim is to take VB.NET out of windows desktop, to create ASP.NET core, WASM, and mobile apps.

    https://anthonydgreen.net/2022/08/20/modvb-wave-1-json-literals-and-pattern-matching/

    1. svb

      I forgot to mention Mercury, which is a cross-platform language fully compatible with VB.NET with new features like .NET core and mobile apps.

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

  29. VB6 Programming

    twinBASIC programming language

    twinBASIC is a soon to be released VB6 and VBA compatible programming language.

    twinBASIC can import and run existing VB6 source code (there are lots of VB6 and VBA applications still used in businesses). The twinbasic programming language aims to be 100% VB6 compatible.

    twinBASIC can compile to 32bit or 64bit.

    Beta versions are available for download now: https://github.com/twinbasic/twinbasic/releases

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like