Yeah playing with Gemini for a while is very frustrating for basic
programming. It did all kinds of weird things. Like one time it generated a
program with like number 23.5 and when I told it the UL error it
confidently lied that many BASICs allow "decimal" line numbers.

One time it generated line numbers out of order. It randomly puts comments
without REM.

At some point I had it add an error handler and when fixing other stuff it
would just randomly forget about it and drop the error handler but keep the
ON ERROR GOTO so then when an error did happen it would crash.

But miraculously it was generating functioning programs almost right off
the bat without me having taught it anything about m100 basic. So it had
some context from somewhere.

The ML code it generated would just crash so I told it to stop.

It did the variable name collision thing but worse than that I think it was
sharing variables for what would be different object instances in another
language.

It seems to have a lot of context for game logic... algorithms for physics,
collisions, round processing

It seems like a focused base local model for model 100 basic programming
would be the way to go. Then add modules for problem domains like
platformer games, adventure games, etc.

Because a general model like Gemini just gets into a lot of frustrating
trouble and since I didn't give it all the context and priorities it's hard
to keep it out of trouble.

And I think it would be better to generate to some intermediate language
with more high level constructs (subroutines, methods, instantiable
components or objects tasks, state machines, code libraries) and then
compile to line numbered BASIC and ML. BASIC has too few guardrails. I mean
it works most of the time but then you end up fighting syntax issues when
you're trying to get higher level functionality working.

-- John.

Reply via email to