Qbasicnews.com

Full Version: OPTION BYVAL and more?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
What more fancy commands are hidden from us?
The source shows that OPTION can have the following:

EXPLICIT
BASE
BYVAL
PRIVATE
And DYNAMIC, STATIC on .11, so '$dynamic and '$static can be forgotten -- they still there tho, for backward compatibility as some could do "'$dynamic", "dim a(10)" and then "redim a(b)" later.
How about:

OPTION CONSOLE | GUI

to mimic $APPTYPE on some other compilers? To allow the code to control the subsystem used in the linking process.
Quote:How about:

OPTION CONSOLE | GUI

to mimic $APPTYPE on some other compilers? To allow the code to control the subsystem used in the linking process.

Remembers RapidQ. :*)
Let's say RapidQ was QBasic 1.1 32 bits... Interpreted and slow.
That 300Kb compressed! executables...

But I miss all the GUI stuff. you issued a CreateWindow et voilà...

RapidQ is still alive, someone has hacked it, solved a memory leak and called it SmartBasic or something like that.

Perhaps v1ctor is also receiving job offers from Silicon Valley companies Big Grin

EDITED:
Btw number of hits in google:
FreeBasic 2300
RapidQ 9600
Quickbasic 107000
Qbasic 535000

2300 hits! this is growing fast..
Quote:RapidQ is still alive, someone has hacked it, solved a memory leak and called it SmartBasic or something like that.

Dr.Electron "hacked" Rapid-Q's libs (renamed EXE stubs) and corrected a memory leak. He then proceeded to create his own Basic compiler called HotBASIC. It tries to be as RQ compatible as possible.

The only drawback I can see right now is that it is a single person, closed source, pay-for-use compiler.
Rapid-Q has C++ GUI lib which is I think can be used in FB if someone can find a way to convert their header files and compile using this lib. It's call Rapid-Q++ at http://www.basicguru.com/rapidq/rqpp.html

I think this is a good temporary GUI lib which can be extends GUI object thru header files. It just need someone who know C/C++ to convert headers and calling lib functions. It free but no lib source.
Quote:The only drawback I can see right now is that it is a single person, closed source, pay-for-use compiler.

RApidQ has always been a one-person closed source thing. And when William Yu was hired by Real Soft, he sold the source to them. They killed it because it was a threat to the ports of RealBasic to windows and to Linux.
Don't know how this HotBasic guy has got the sources..


And don't know how we could hack RapidQ IDE if there is no source. The RapidQ Ide was coded in Delphi -Kylix, the interpreter was C++

Fortunately freebasic is open source...

I'm writing this in a Macintosh, I expect it will be visible Smile





[/b]
Quote:Don't know how this HotBasic guy has got the sources..

from what I see, the author write the gui from the scratch and try to make them work like Rapid-Q. if Rapid-Q source is used, they would've all the gui objects available.

Actually this can be done in FB too. What its need is OOP support for UDT. For a started, FB already support function in UDT. thats good, you could already used Rapid-Q++ lib already to converts it's headers to work like class object in C++.

Or FB can use normal sub/function for all gui object such as:

[syntax="qbasic"]
hWnd = FB_WINDOW(hInst,"Hello World",0,0,120,240,...,WndProc)
hBtn1 = FB_BUTTON(hWnd,"Button1",10,10,80,20,...,Btn1Click)

ShowWindow(hWnd,SW_MODAL)

FB_MSGLOOP()
'code insertions
FB_ENDLOOP()

END

Sub WndProc(hWnd&,uMsg&,wParam&,lParam&)
'main window message handling
End Sub

Sub Btn1Click()
'btn1 message handling
End Sub

[/syntax]