Thanks Oscar,
I've developed this example a bit more, and given O2 all the responsibility for creating and managing the array-space. The array-space is only freed when finish() is executed.
...
Type: Posts; User: Charles Pegge; Keyword(s):
Thanks Oscar,
I've developed this example a bit more, and given O2 all the responsibility for creating and managing the array-space. The array-space is only freed when finish() is executed.
...
Hi Oscar,
Oxygen fully supports multidimensional arrays, as of December 2022.
I don't know whether the current thinBasic includes this version, so I attach it below.
Oxygen.dll goes into your...
Yes Eros,
I include key examples. I've also included RTL32.inc and also RTL64.inc so you can create 32 and 64 bit binaries.
oxygen.dll has been brutally UPXed to 122kb
I've just posted...
I've introduced a new command: o2_run, which is a combination of o2_basic and o2_exec. It simplifies the script and reports any compile errors directly.
OxygenBasic/thinBasic_Oxygen.zip at master...
O2 now supports multidimensional arrays. To be compatible with thinBasic and PowerBasic it must use Column-major order for which there is a switch: #minormajor. Otherwise, the default is row-major as...
I've just updated thinBasic_Oxygen :)
https://github.com/Charles-Pegge/OxygenBasic/blob/master/thinBasic_Oxygen.zip
@Eros
The included examples folder has a selection of scripts which belong...
I think the canvas refresh is in sync with the 60Hz screen refresh, but also activates whenever certain windows messages are being processed.
Yes, Eros.
I wil be releasing another (overdue) GitHub update within the next week.
I would also like to include this example, but to avoid the dynamic array referencing problem, I would make...
Hi Petr, :)
You have an older oxygen.
Try:
"include `doom_psx_fire.inc` "
Here is my oxygen-supported code keeping as close to Petr's original code as possible
The canvas is 4 times larger, but the cpu time is 0% :)
me.fire is a dynamic array. To access it as a parameter , I found that oxygen had to use 2 additional levels of indirection.
Merry Christmas!
Make it last for 12 days :)
Hi Petr,
I like the scheme. We can adopt it for o2, starting soon with the self-compiling betas.
o2_version will also return an ISO timestamp, following the version numbers:
0.1.0...
Constants can only be defined in terms of other constant expressions. They can be resolved at compile-time, whereas immutables may also be set by variable expressions in run-time (once only).
I'm...
Thanks, Petr,
With regard to RUST's immutability rules, Would this construction be acceptable:
do {
let a=inkey()
if a<32 { exit do }
}
Hi Petr,
I'm intrigued by immutability. Do you find it useful in RUST?
ThinBasic_Oxygen has just been updated. We are approaching the first beta version of oxygen.dll. 141K and shrinking further! We have lost a few redundant keywords like basic and asm.
...
Hi Eros,
I saw that all of John's forums were down a few hours ago. I don't know what the sessions table does exactly but I was unable to access its records and emtying it has cleared the...
The notice mentioned downloading software. It may think you are tricking visitors into downloading thinBasic? Or perhaps some controversial youtube links I posted in the ShoutBox are considered not...
A humorous view of programmers and programming projects.
https://www.youtube.com/watch?v=csyL9EC0S0c
I have been testing UPX compression on all my binaries, without any problems or noticible delays. So I would like to distribute all OxygenBasic binaries UPX-compressed. We will just see if anyone has...
Hi Eros,
I love the way you shrunk oxygen.dll to less than 1/3 of its original size (my universe in 150k!). Is it UPX? I could adopt the compression as standard :)
Best wishes Petr, hope all goes smoothly.
Charles
We are deeply sorry to discover that Robert Keppens passed away on 11 October 2015.
He made some wonderful fractal and Lisp contributions on this forum and our own, and will be sorely missed.
...
This is possible in Oxygen, which allows static properties and methods to be accessed using the class name, without requiring an instantiation:
class vv
static float x,y,z
method show
...