Although I’m not unhappy with what I’ve been using, I have developed an interest in BASIC after I was introduced PureBasic and AppGameKit (DarkBASIC).
I’m wondering about your experiences and feelings about today’s BASIC languages.
EasyLang feels like a blend between Basic and Python. It appears to be indentation-based like Python or at least the 'IDE' autocorrects any whitespaces I added to the sample code. So it appears EasyLang uses both indentation to define blocks of code as well as keywords/chars like 'end' and '.'
I really like the look of EasyLang, the syntax is terse (like replacing 'print' with 'pr', but unfortunately it also appears to lack one feature that was noticeable right away to my son and that's the input-prompt function found in both Python and most Basic variations.
age = input("How old are you? ") # Python
input "How old are you?", age # Basic
It appears I have to create two statements in EasyLang. I know some languages will allow you to place two statements on one line using a delimiter such as a colon ':' or such, but I could not find one that would work. So two separate statements it is:
pr "How old are you? "
age = number input
pr "So you are " & age & " years old."
Possible future features I might like to see: String interpolation such as: pr $"So you are {age} years old."
And it would be helpful if the 'IDE" could display vertical lines to delineate blocks of code, especially when periods '.' are employed.
Otherwise, Great work! I'm always amazed at the talent required to create a new programming language. I will continue to explore EasyLang with my son. :)
Cheers,
Gary
I still like Visual BASIC 6.0 for older machines.
VB.NET immediately makes you a second class citizen in the .NET world because C# is the language all resources go into with with VB just an afterthought.
Not a perfect (or even preferred) solution but before I learned C# it helped me do stuff.
I run into the same issue trying to work with Kotlin. It's gotten to the point where I would just rather write in Java
QB64's last release was this Feb/March: https://gist.github.com/FellippeHeitor/b6d24d9dc08c9bd7efbc8....
And FreeBASIC's last release was this July: https://sourceforge.net/projects/fbc/files/.
Are there any big efforts towards a modern BASIC?
It depends on how you define big and how you define modern, but I feel like freebasic probably counts
FreeBASIC was interesting - a portable implementation and extension (including OOP concepts) of the original PC QBasic and I enjoyed playing with it a long time ago.
I'd highly recommend FreeBASIC, especially if you enjoy C-style programming. Lots of good libraries and good C library support (give or take writing the headers by hand or translating)
I tried QB64, but I'd only recommend that if you want nostalgia. By default, it gives that classic QBasic IDE interface, and feels very self contained.
Once I grew and learned other languages, I only then realized why BASIC is/was weird and 'bad', as people say.
I love that BASIC existed for me, and I learned a lot, but I don't think it has much value today.
I think Python is a similarly easy language, and one people can immediately be more productive in.
"PRINT USING" is terrible (vs. C's formatted strings).
"INPUT A" is not versatile enough. I should be able to prompt with the current value of A, so user can hit enter to keep the current value. None allow you to print the current value of A (INPUT STR$(A)+">",A does not work anywhere). Some dialects allow you to retain A: TRS-80 BASICs do it. MS-BASIC sets A to zero if user just hits Enter.
Pocket computer BASIC allows you to enter an expression as a response to INPUT, such as A+1.
Modern calculators allow you to enter equations in textbook format. I kind of think modern BASICs should support this- no reason to be stuck in the early 60s teletype world.
Pocket computer BASIC allows you to bind programs to keys (or at least entry points to keys: you can have a key jump to a line with a key-label).
Pocket computer BASIC allows you to read the last entered value (AREAD command in Sharp).
Here is a benchmark which shows why these things can be important, at least in the realm of pocket computers and calculators:
I don't think they were referring to QBasic or VB6 or anything like that.
I also tried some Visual Basic back then, but didn't like it because I loved drawing things with pixels in QBasic (using PSET, CIRCLE, etc..., in e.g. Mode 13h) and VB couldn't do that (at least not any way I knew), only create GUI windows with radio buttons and such, which really disappointed me.
AOZ studio[1] is (I believe) a modern descendant of AMOS (but without the Amiga). Every now and again I visit the language's homepage but I haven't downloaded and played with it yet.
[1] - https://www.aoz.studio/
I liked VBA when I used it within Excel.
For something more modern, take a look at QB64 that is aiming for QBasic compatibility on recent platforms: https://www.qb64.org/portal/
Overall, if you like it, use it! Can't hurt. I wouldn't recommend it for any serious, large projects that would require a team of collaborators, though.
For modern BASIC, you have some interesting choices such as EndBASIC, which is written in Rust and which has some very cool features:
In the event you are willing to explore another language I might suggest to have a look at Lua.
I think "spaghetti" is in the eye of the beholder. Alternatively you could argue that GOTO/GOSUB puts BASIC near ASM and that is cool.