Basic4ppc v6.90 is released


Staff member
Licensed User
I'm very happy to release Basic4ppc V6.90.

The new version includes many improvements such as:

· Local variables can be declared with a specific type. Declaring numeric variables significantly boosts the performance of numeric calculations.
· Subs parameters types and subs return type can also be declared.
· New types: Number and Integer. Correspond to .Net Double and Int32.
· Subs parameters can be passed by reference (ByRef). This can be used to return several values from a sub.
· Improved syntax for working with dynamic objects and dynamic controls.
Instead of writing Control(ControlName, ControlType), it is now possible to write ControlType(ControlName). The desktop IDE fully supports the new syntax with autocomplete and with the usual popup menu.
· Desktop forms size and layout is more accurate now.
· FileFlush keyword. Writes any cached data to the file.
· SQL library was updated to SQLite 3.6.16.
· More clear error messages for many common mistakes.
· Many bug fixes and other minor improvements.

All users who are entitled to a free upgrade should receive an email with this upgrade in the next 24 hours.



Staff member
Licensed User
Does the existing version need to be uninstalled first?
It should be fine installing the new version without uninstalling the previous one.

Keen to update to 6.9, but not seen an e-mail yet.
Anything I should do?
Please send me an email to You should have got it by now (also check your spam folder).


Licensed User
Is it realy true?

Is it realy true that the 6.90 has another syntax than the "older" versions.

a little example...

Instead of writing Control(ControlName, ControlType), it is now possible to write ControlType(ControlName).

Cableguy has written a very nice excelwrapper, but i have to rewrite the complete module to be able to use it in my "old" 6.80 thing.

The next step is that someone makes a nice dll, which will be useless for me.

thank you!


Licensed User
You sould replace these lines:
ArrayList(WorkSheetName & "InsertData").Add(r)

by these
Control(WorkSheetName & "InsertData",ArrayList).Add(r)

Best egards.


Licensed User
I understand the problem and know the workaround!

Hi Klaus,
Thank you for your answer. And i understand that software has to make a change sometimes, but.....

i downloaded the excelwrapper of Cableguy yesterday;
one line of code....

ArrayList(ArrayList("WorkSheets").Item(m)&"Row" & ArrayList(ArrayList("WorkSheets").Item(m)&"Row").Item(n)).Item(h))
(i believe there are something like 50 lines likes this example in the code)

I now have to check every line of code. And when i'm finished with the replacement action and i get an error....
Have i made a mistake, or.....etc. etc..

And the next step is that someone creates a dll where new control is created. If the dll-creator uses the new syntax, it will be useless for the "older guys"(like me).
But thanks for the time to answer my silly request.


Licensed User
If the dll-creator uses the new syntax, it will be useless
That's not a concern. There is no change to any dlls nor is any needed as a result of this change. The change is only a syntax change within Basic4ppc so that the IDE can now know what type the object is so that it can offer AutoComplete and IntelliSense help which it couldn't with the old syntax. The old syntax is still supported in v6.90.

There are some changes in v6.90 which required changes to some of my dlls but the old dlls are remain posted. It is unlikely that any new dlls will be incompatible unless, like mine, they mess around inside Basic4ppc at runtime and I don't think anyone elses libraries except a few of mine me do that!
Last edited:


Licensed User
The old syntax is still supported in v6.90.
I may hope so!

The problem is not the backwards compatibility, but forward.
A module written in the 6.90 syntax is of no use in the older version.

I downloaded your Excel wrapper, but it's so hard to rewrite it to the old syntax. That's my problem.


Licensed User
Basic4PPC V6.9 upgrade

How do I check when I purchased? I cannot remember to be honest.:BangHead: