GLScriptBasic

Previous topic - Next topic

metzzo

#90
I just want to say, that i'm  still working on GLBScript. But development is far slower than before. Currently I am porting the 2D engine of GLBasic to HTML5 and fixing tons of bugs.
I am trying, as already mentioned, to bootstrap the compiler to HTML5. The lexer and code analyser is already working properly, but the parser and code generator still crashes. I think in around two months we will have a GLBasic compiler running in every webbrowser!

Fixed bugs:
- TRIM/LTRIM/RTRIM: Now working properly
- REPLACE: Empty strings do not crash the script
- FOREACH: Now working with by ref variables (ALIAS/BYREF)
- DIMPUSH now working with ALIAS/BYREF
- Negative indices in arrays (array[-1]) works.
- Array bound checks are now performed.
- Some speed improvements.

But there is still a lot of work left...
That's no Bug, that's my project!

http://programming-with-design.at/

Marmor

great coolo !  :good:

erico

Quote from: coolo on 2012-Mar-08
... I think in around two months we will have a GLBasic compiler running in every webbrowser!

This would be awesome!
Keep up the good work!

metzzo

hey!

A short status report: Since last firefox update (version 11) the xmlhttprequests I'm using for getting data for OPENFILE doesn't work with local files anymore. Chrome and Safari does not support it anymore too. So I have to rewrite the whole File I/O system. The approach I am now using is simple: Just embed all data into the HTML file. This way it works in every browser. If you have a better idea, i would love to hear!

Further I just want to say, that I am absolutly in time about porting the GLBasic Compiler to the web! Some little problems (except the rewrite of the IO system) but I think I am able to fix them soon!

Changelog since last update:

Fixed: Repeat - Until now works properly
Fixed: Reference parameters (BYREF) are more robust (THAT was long bug hunting...)
Fixed: REDIM/DIMPUSH speed increased
Fixed: int/float casting handles "1" and "0" correctly
Fixed: >,<,<=,>=,and,or,=,<> was not converted from boolean to integer
Fixed: Recursion in combination with FOREACH had really strange behaviour
Fixed: Negate operator (-) had wrong operator priority

Added: Support for hex values
Added: GETFILELIST
Added: REVINSTR
Added: MOD
Added: READUBYTE

That's no Bug, that's my project!

http://programming-with-design.at/

Marmor


quangdx

I see the HTML5  stuff is hidden in German.
Much respect and thanks to Coolo for undertaking this amazing task.
Wish I read German so I could understand more what was going on in this thread.
Asobi tech - the science of play.
Spare time indiegame developer.

Albert

What about GLScriptBasic?
Have we a script language within GLBasic or not?
I'm still using the old GLSCriptBasic codebase, but there aren't TYPE and some bugs are present.

metzzo

Sorry for forgetting to mention:

I've made a post in the english section:

http://www.glbasic.com/forum/index.php?topic=8087.0
That's no Bug, that's my project!

http://programming-with-design.at/

Albert

Yes I saw it, and I want to send you all my thanks to you make it happen.

What I'm wanted to ask: There will be a VM as in the old GLScriptBasic? So we can compile and run small scripts within our GLBasic program? Would be also nice if we can run more concurrent VMs with different scripts.

metzzo

I hope I'll find the time... but shouldn't be too time consuming.

It's possible to write a wrapper for V8 (an awesome JavaScript compiler/interpreter, used by Chrome) in GLB, then execute the generated JavaScript code. But I hope that won't be necessary...
That's no Bug, that's my project!

http://programming-with-design.at/