News: 1679992205

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

Nostalgic for VB? BASIC is anything but dead

(2023/03/28)


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 [1]affection recently, as [2]Reg sister site DevClass has discussed . Way back in 2014, Microsoft [3]said it would go open source , but all that emerged is the rather less interesting [4]Roslyn . For a long time, [5]Microsoft has been focusing on .NET instead .

The direct ancestory of VB, Tripod , was originally [6]built by [7]Alan Cooper, author of The Inmates are Running the Asylum . In this [8]interview he explains that Tripod was originally intended as a construction kit to build a new shell for Windows 2. The Microsoft deal paid for a team of five to rewrite it as Ruby , then Microsoft combined it with its Embedded BASIC interpreter to turn it into Thunder , launched as Visual Basic 1.0 in 1991 – half way between Windows 3.0 and 3.1.

Keeping it GUI

Perhaps because VB started off as a one-man project, multiple people and small teams have sought to recreate it, or something like it. The Reg has covered one of these, [9]RAD Basic , a couple of times: first when it attempted to [10]crowdfund its development , and later [11]when it released its third alpha version .

Closely comparable is [12]twinBASIC , which publishes weekly updates so you can track its [13]progress . That's good, as there's as little to see on twinBASIC's [14]Github as there is on the [15]RAD Basic one. We reckon that the two projects should talk: they might benefit from teaming up.

[16]

There have been many such projects over the years, but sadly, many seem to have gone dormant. In alphabetical order, some we found include [17]GLBasic , [18]HBasic , [19]KBasic and its descendant [20]Basic for Qt , [21]sdlBasic , and Janus Software's [22]Phoenix . While [23]Basic4GL has gone quiet, a port of it to the JVM, [24]Basic4GLj is in active development.

[25]Microsoft closes another door to attackers by blocking Excel XLL files from the internet

[26]Attention Microsoft-oriented Linux devs: .NET 6 is on Ubuntu 22.04

[27]Tavis Ormandy ports WordPerfect for UNIX to Linux

[28]Running DOS on 64-bit Windows and Linux: Just because you can

Other projects just aim to create something with a similar feel, rather than a perfectly accurate and compatible replacement. [29]Gambas – short for G ambas A lmost M eans Bas ic , although it also means shrimps in Spanish, runs on Linux and has got rather further: version 3.18.1 was released last month.

Anywhere Software's Java-based [30]B4J is proprietary but free, with a BASIC-like language and an IDE. It grew out of a PocketPC development tool called Basic4ppc, so its mobile support is strong. Sibling products are [31]B4A for Android and [32]B4R for Arduino, and the paid-for [33]B4i for iOS.

[34]

[35]

RealBasic started off as a shareware tool for classic MacOS. It [36]added Mac OS X support way back in 2001 , [37]went Windows native in 2002 , then a couple of years later [38]added support for Linux as well . Former vulture [39]Tony Smith rather liked it , giving it a positive verdict in 2005.

It's still around, only these days, it goes by the name of [40]Xojo . The company put out a new [41]version at the end of last year, and now [42]supports Linux on Arm64. It's a free [43]download for personal and educational use, but compiling or distributing apps [44]costs .

[45]

[46]PureBASIC is more of a traditional, non-object-oriented BASIC, but it does have a graphical [47]form designer . PureBasic [48]started out in 1998 as an Amiga app, but that version is historical now and developer Frédéric Laboureur [49]released the source to version 4.0.

Brilor Sotware's [50]FutureBasic runs on the Mac and hooks into XCode. It's descended from Zedcor's classic ZBASIC, it's in active development and it's freeware, but not open source.

The FOSS [51]XBasic project is still in around, with an active [52]community , various flavours on [53]Github as well as an actively-developed Windows version called [54]XBLite .

Less OO, more OG

There are also tools for those who preferred the classic, less GUI-oriented forms of BASIC, such as VB's forerunner QuickBASIC. The standalone [55]FreeBASIC compiler is in active development and aims to be compatible with QuickBasic. So does [56]QB64 , although the dust has yet to completely settle over a [57]split among its developers. A community called [58]QB64 Phoenix is actively developing a new [59]Phoenix Edition .

Even more old-school, [60]TrueBASIC , originally created by BASIC's original developers John Kemeny and Thomas Kurtz, is still on sale. Remarkably, the free community edition of Atari ST classic [61]GFA-BASIC for Windows is still getting occasional updates. Also Windows only is the commercial [62]Liberty BASIC .

[63]

The Reg FOSS desk's personal favourite, the original [64]BBC BASIC , is still around and in active maintenance. There are now multiple editions, several of which are free to use. There's also a largely compatible multi-platform open source interpreter, [65]Brandy BASIC , which has been forked and updated as [66]Matrix Brandy BASIC . There are a number of much more limited FOSS BASICs indented for educational use, many of which are in the repositories of common Linux distros, such as [67]BASIC-256 , [68]Bywater BASIC , and [69]Yabasic . There are also two separate FOSS languages with very similar names: [70]Microsoft Small Basic , and the separate, independent [71]SmallBASIC .

Not so Basic after all

If you liked the style of VB development – draw the form, then fill in code for the controls – but you're not wedded to BASIC itself, then there are other contenders that we feel we must mention.

One of the factors in the decline of the original Visual Basic was of course Borland's Delphi, the visual descendant of the company's Turbo Pascal. While [72]Delphi itself is still around, there's a very complete open source implementation of the language, [73]Free Pascal , complete with multiplatform graphical IDE [74]Lazarus . The Ada language is also more lively than you might expect, possibly thanks to [75]AdaCore and its [76]SPARK project. The GNU Ada compiler [77]GNAT has a visual development environment in active development, [78]GNAVI ® .

Get our [79]Tech Resources



[1] https://retool.com/visual-basic/

[2] https://devclass.com/2023/03/20/microsofts-visual-basic-why-it-won-and-why-it-had-to-die/

[3] https://www.theregister.com/2014/12/10/hey_dont_forget_visual_basic_says_microsoft_open_source_and_new_features_coming/

[4] https://github.com/dotnet/roslyn

[5] https://www.theregister.com/2017/02/02/our_strategy_for_visual_basic_has_shifted_microsoft_to_focus_on_core_scenarios/

[6] https://onezero.medium.com/my-one-phrase-resum%C3%A9-98776ef8a6fa

[7] https://www.theregister.com/2003/09/19/software_guru_wants_new_accounting/

[8] https://www.red-gate.com/simple-talk/opinion/geek-of-the-week/alan-cooper-geek-of-the-week/

[9] https://www.radbasic.dev/

[10] https://www.theregister.com/2021/05/06/visual_basic_6_returns/

[11] https://www.theregister.com/2022/05/06/rad_basic_alpha_3/

[12] https://twinbasic.com/

[13] https://nolongerset.com/tag/twinbasic-weekly-update/

[14] https://github.com/twinbasic/twinbasic

[15] https://github.com/radbasic

[16] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2ZCK6vt7yCJj7bHLWMWMoHgAAABc&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0

[17] http://www.glbasic.com/

[18] https://hbasic.sourceforge.net/

[19] https://kbasic.org/

[20] https://www.q7basic.org/

[21] http://www.sdlbasic.altervista.org/main/

[22] http://www.biz-wise.nl/phoenix_features.html

[23] http://bmatthew1.altervista.org/basic4gl/basic4gl.getting.started.htm

[24] https://github.com/NateIsStalling/Basic4GLj

[25] https://www.theregister.com/2023/01/25/microsoft_excel_xll_closed/

[26] https://www.theregister.com/2022/08/17/dotnet_6_ubuntu/

[27] https://www.theregister.com/2022/07/20/wordperfect_for_unix_for_linux/

[28] https://www.theregister.com/2022/06/28/friday_foss_fest_running_dos/

[29] https://gambas.sourceforge.net/en/main.html#

[30] https://www.b4x.com/b4j.html

[31] https://www.b4x.com/b4a.html

[32] https://www.b4x.com/b4r.html

[33] https://www.b4x.com/b4i.html

[34] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44ZCK6vt7yCJj7bHLWMWMoHgAAABc&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0

[35] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33ZCK6vt7yCJj7bHLWMWMoHgAAABc&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0

[36] https://www.theregister.com/2001/02/12/realbasic_brings_quick_appmaking/

[37] https://www.theregister.com/2002/10/03/real_cure_for_the_vileness/

[38] https://www.theregister.com/2003/07/21/real_basic_to_target_linux/

[39] https://www.theregister.com/2005/09/13/review_realbasic_2005/

[40] https://www.xojo.com/

[41] https://documentation.xojo.com/resources/release_notes/2022r4.1.html

[42] https://xojo.com/company/press/2022r4.php

[43] https://www.xojo.com/download/

[44] https://xojo.com/store/

[45] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44ZCK6vt7yCJj7bHLWMWMoHgAAABc&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0

[46] https://www.purebasic.com/index.php

[47] https://www.purebasic.com/documentation/reference/ide_form.html

[48] http://aminet.net/package/dev/basic/PureBasic

[49] https://www.purebasic.fr/english/viewtopic.php?t=24952

[50] http://www.brilorsoftware.com/fb/pages/home.html

[51] https://sourceforge.net/projects/xbasic/

[52] https://groups.io/g/MaxReasonsxBasic

[53] https://github.com/xbwlteam

[54] https://xblite.com/

[55] https://www.freebasic.net/

[56] https://qb64.com/

[57] https://lunduke.substack.com/p/the-wild-events-that-nearly-took

[58] https://qb64phoenix.com/

[59] https://github.com/QB64-Phoenix-Edition/QB64pe

[60] https://www.truebasic.com/

[61] http://gfabasic32.blogspot.com/

[62] https://www.libertybasic.com/

[63] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33ZCK6vt7yCJj7bHLWMWMoHgAAABc&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0

[64] https://www.bbcbasic.co.uk/bbcbasic.html

[65] https://jaguar.orpheusweb.co.uk/branpage.html

[66] http://brandy.matrixnetwork.co.uk/

[67] https://basic256.org/

[68] https://sourceforge.net/projects/bwbasic/

[69] http://2484.de/yabasic/

[70] http://smallbasic.com/

[71] http://smallbasic.github.io/

[72] https://www.embarcadero.com/products/delphi

[73] https://www.freepascal.org/

[74] https://www.lazarus-ide.org/

[75] https://www.adacore.com/

[76] https://www.adacore.com/sparkpro

[77] https://www.gnu.org/software/gnat/

[78] https://sourceforge.net/projects/gnavi/

[79] https://whitepapers.theregister.com/



Binraider

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.

Pelorat sighed.
"I will never understand people."
"There's nothing to it. All you have to do is take a close look
at yourself and you will understand everyone else. How would Seldon have
worked out his Plan -- and I don't care how subtle his mathematics was --
if he didn't understand people; and how could he have done that if people
weren't easy to understand? You show me someone who can't understand
people and I'll show you someone who has built up a false image of himself
-- no offense intended."
-- Asimov, "Foundation's Edge"