Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - mdhughes

Pages: [1]
1
You might want to look a couple posts up where I address most of this, Pete.

"new bells and whistles"

Couldn't care less about that. I think BASIC's tolerable for retro-programming and teaching with classic BASIC books. So anything new is a hindrance. Can you draw graphics & make simple waveform sounds? Ship it.

"newcomers couldn't possibly appreciate what they never grew up with."

If you're going to attract new users, that's not a helpful attitude to have towards them.

It's especially inappropriate when applied to me. I started programming 11 years before QBasic came out. Some of the programming environments were as ugly as QB64 still is, some were quite nice (Atari ST BASIC in 1985…). And in the 30 years since, people have higher expectations.

2
Hi, guys. Saw some site traffic, and I appreciate the feedback, but I was very terse in my post.

I was fairly positive about QB64; it has some flaws, but it does work and produce a standalone binary, that's a good accomplishment.

The ugly IDE: This is partly about looks, more about usability. And, I'm a Mac and UNIX developer. I don't know what the Windows world is like, but I did use DOS, mostly inside OS/2 back in the '90s.

A plain-text-only IDE is a little annoying these days, but not by itself a bad thing. But the color schemes are pretty garish, and the only replacement font isn't great. Multiple fonts and better font scaling, and a nicer UI for it (IDE Color has a nice panel, but Display is awful) would go a long ways. The thing I'd compare this with is Python's IDLE, which even though it's using the archaic Tk API, has nice system fonts, works like a native program; the color schemes are harder to change, but the defaults fit a modern OS better. Even Chipmunk BASIC has a native GUI window (which just shows a text prompt).

The system Edit menu isn't wired up, so it doesn't copy-paste on Cmd-C/X/V; I can use the IDE's Edit menu, Ctrl-C/X/V, but both ought to work. Clicking anywhere in the screen places the cursor there, not at the end of that line, which is the normal behavior. It'd be nice to have the menus instead become real Mac menus on Mac, Linux menus on Linux, etc.

The Mac (and many but not all Linux GUIs) normally use Emacs editing keys in all text areas. As an emulation of QB on DOS, maybe that's not the right thing, but it's extremely hard for a Mac nerd to type without them. Many desktop and laptop keyboards these days are "slim" and don't have Home/End, etc. except by some awkward Fn-key combo.

The default "untitled" program location being in the qb64 folder instead of the programs folder is unfortunate. And it ought to prompt to save on quit, and the Save As dialog weirdly doesn't show existing files, only the folders.

There's a lot of little stuff like that where it's not as pleasant as using IDLE or a good Scheme REPL in Terminal, let alone a focused editor like BBEdit or Atom. It could be run from the command line, but then you lose the IDE part.


The slow compiles: On first creating an app, it takes about 10-15 seconds. On recompile it's ~5 seconds for a very short program. It seems to only happen in IDE, shell is OK:

% time clang -o hello hello.c # just for comparison
clang -o hello hello.c  0.38s user 0.17s system 86% cpu 0.633 total
% time ./qb64 -c programs/hello.bas
./qb64 -c programs/hello.bas  1.74s user 0.23s system 95% cpu 2.076 total


The lack of REPL: That's a real killer for me. Being able to just type a line and see the result, whether that's in the "edit" window or a separate pane, is just fundamentally better than waiting for a compile. There are languages where the REPL is fast, like Julia and Chez Scheme; and in Python it's no slower than anything else.


I actually removed the EWD quote on BASIC shortly after posting because I'd used it in another post recently; he was making a number of joking points about computer science and the languages available. If you haven't read Dijkstra, I highly recommend doing so.


Anyway, there you go. I'll try to check back, or you can email me.

Pages: [1]