[HN Gopher] QuickBasic64: Basic for the Modern Era ___________________________________________________________________ QuickBasic64: Basic for the Modern Era Author : daitangio Score : 74 points Date : 2020-07-03 08:37 UTC (14 hours ago) (HTM) web link (www.qb64.org) (TXT) w3m dump (www.qb64.org) | graton wrote: | Ah good memories. Once BASIC got rid of requiring line numbers | and supporting function calls it really wasn't too bad of a | language from what I remember. | | I started out with TRS-80 BASIC, then assembly language on the | TRS-80, then using BASIC on the PC, and then assembly language on | the PC. After that was C. | | But I still have fond memories of BASIC as my first programming | language. | oscargrouch wrote: | Basic was also my first introducing to programming. And | nowadays i still think its probably the best language to teach | programming. I don't think it should be used to create | professional programs, as its pretty limited for that, and | doing modifications to turn into an able environment for this | would only create a creepy language, inflicting misery in | people that have to maintain large codebases of such a thing. | | What i really want to point out, is that, if you look into | Basic for what it shines, i think things like "GOTO line" are | very good, because it teach you how the computer works under | the hood (the native code will point to memory, stack, | registers, program offset, call hard defined OS syscalls, | etc..) | | You could deal with the soft/logical and hard/physical | paradigms at the same time, understanding that the logical ones | are built through abstractions over the hard ones. | | Later if you decide to code, than you can choose if you | want/can be spoiled and use more abstract and easy languages | like Python or Javascript, but also with a good | understanding/intuition of how things work under the hood. | | And all of this can be done in a easy way, like with jumps to a | giving code position. (It alsos teach you to think over | indirections). | | The basic GOTOS and other techniques might be bad for coding in | real life, but im against taking them out of languages that can | serve to teach programming to kids, and even creating more of | this sort of instructions, that teach how to reason about code, | where you can start with "bad practices" but that are pretty | easy to use at a beginning level. | | Stupid little things like taking graphics and sound for granted | and not having to import libraries, using things like 'CIRCLE' | or 'BEEP' or 'GOTO 10' is what your eight year old self would | think its pretty cool and would run to your parents to show | them with confidence in yourself. | cchance wrote: | OMG QBASIC FLASHBACKS!!!!!!!!! | ambyra wrote: | I used to love this as a kid. The language is horrible though. A | python version would be nice :) | mysterydip wrote: | If you're looking for "basic for the modern era", also check out | freebasic and appgamekit studio, the latter of which is a | descendant of darkbasic and the "tier 1" version uses a basic | dialect. What made appgamekit better for me than qb64 or | freebasic is the runtime debugging. While qb64 and freebasic | compile down to native code, appgamekit uses bytecode in a vm, | allowing you to use the same step, watch, breakpoint stuff as | quickbasic of old. | pjmlp wrote: | _$NOPREFIX_ is an welcomed improvement. | | As for modern era, a though that crossed my mind a couple of | times was having QB target WebAssembly as well. :) | | Porting those MS-DOS samples into a browser canvas. | yjftsjthsd-h wrote: | > Porting those MS-DOS samples into a browser canvas. | | I feel obligated to point out that https://copy.sh/v86/ has | been able to do this for quite a while now. Of course, having a | more native option is an extremely welcome improvement. | pjmlp wrote: | Yeah I am aware of it, that was my point. :) | amasad wrote: | Based on pg's request[1] I've been working on a Basic and while I | started with Classic Basic as I've been improving by dropping | line numbers and currently adding labels I think I've reinvented | QBasic! | | Anyways, here it is if you want to play with it: | | repl: https://repl.it/languages/basic | | docs: https://docs.repl.it/misc/basic | | some community programs: https://repl.it/talk/share?lang=basic | | [1]: https://twitter.com/paulg/status/1256526589300441093 | protomyth wrote: | I actually taught QBasic for a 100-level class at a college. It | was very interesting to see how close it actually was to the | "grown-up" languages they used for the Comp Sci curriculum. | nathell wrote: | Does this mean I can finally run NIBBLES.BAS and GORILLA.BAS | natively on macOS? | pjmlp wrote: | Probably PureBasic, RealBasic, Xojo would have been an option, | although with code having to be changed for them. | daitangio wrote: | Yes. Grlorillas is included and work well under ubuntu | themodelplumber wrote: | Funny to see this posted today. I was just listening to an | interesting QB64 interview with a developer who recently | published his QB64 game to Steam. It's episode 3, here: | | https://qb64.buzzsprout.com/ | darksaints wrote: | This is interesting from a historical perspective, but honestly | I'm really glad that the era of Basic is gone. Having had a | handful of opportunities to work with legacy Basic code from a | wide variety of programmers, it's just a disaster that always | leads to unmaintainable garbage. I'm not even sure it is possible | to have well architected Basic. Structuring and modularizing code | is ridiculously difficult. The very principles of the language | somehow lead to pervasive use of globals and gotos. It's neither | functional, nor object oriented. Everything ends up as blocks of | mutable procedures, tightly coupled, with red flags everywhere. | | I'm a very opinionated person about programming languages, and | there are plenty of modern language trends that have been | bothersome to me. But none of them will be ever as bad as any of | the Basic code I have interacted with. I'd rather read and | maintain code that went through a unicode-permitted Haskell code | golf competition than anything written in Basic. | BeetleB wrote: | Were you dealing with BASIC or QuickBasic or VisualBasic? | | Also, consider that it may not be the language but the fact | that most BASIC programmers tend not to know much about | programming...? | reaperducer wrote: | I think that you were exposed to a limited subset of BASIC | dialects. There were versions of BASIC that did all of those | things and more. | dang wrote: | If curious see also | | 2010 (1 comment) https://news.ycombinator.com/item?id=1161656 ___________________________________________________________________ (page generated 2020-07-03 23:00 UTC)