Post a Comment
I have hundreds of programs I wrote when I was a kid in QBasic, 95% of them run with this, *better* than they did with qbasic. Not only that but I changed some of the code around for this and many of my apps run amazing. Freebasic is definetly up there in speed far beyond visual basic for graphics drawing.
"Unfortunately they went the way of the runtime library ..."
The runtime nature of FreeBASIC is the same of stdlib of C. There is no interpreted code you byte-code compile.
The code you write is parsed and translated to assembler, then linked against standard library to provide print, memory allocation, etc.
Edited 2006-06-12 17:45
When I checked last month, there was no assembler back end, it was all interpreted, w/ runtime. There was an announcement that in the "far" future, it will finally be a real language, however ...
http://www.freebasic.net/forum/viewtopic.php?t=4550
As of today, it still stands. Maybe your looking at a very early alpha that nobody has access to?
FreeBASIC's runtime library is a static library linked at compile time, a la libc, libcmt...
The language produces native 32bit executables (win 32-dos EXEs/linux ELFs)
Two version of the runtime library exist, libfb.a and libfbmt.a (multi-threading safe version).
the language uses "LD" (the GNU linker) and "AS" (the GNU assembler) as it's back-end on windows(mingw32)/linux..
and it never was/will be interpreted any time...
EDIT
the parser mentioned by v1ctor in the link above is the compile-time parser, not an interpreting parser as you may think..
Edited 2006-06-13 16:57
I use C too. I don't know why some people seem to be acting like "we use C but you don't because you use BASIC", as that is 100% wrong.
I'm a C fanatic. FB's (fast) graphics lib and the runtime library was written in C, but if you looked at the source for FreeBASIC, the compiler's written entirely in itself O_O;; (A compiler written in itself that ISN'T C? Amazing.)
I *could* use C if I wanted to, but I've used it, and I made some nice lil' GBA games and such on it, but I never enjoyed it. Never have I made programs that run so well, that I had fun making as when I made them in FreeBASIC.
It's fast, it's decently optimized, allows inline ASM, use of C libs and soon C++/other language's libs, OpenSOURCE, and has the best fricken forums out there (people answer you amazingly fast). What more do you want? 
I loved this language, sadly most of my old programs have disappeared - so I'm just left with regrets about losing those floppies in one of my many apartment moves.
[Futurama: Kif & Amy in the Holo-shed]
Amy: Oh, Kif it's beautiful!
(A virtual reality pony trots by)
Amy: It's Spirit, the pony I always wanted but my parents said I already had too many ponies!
Kif: Yes, I programmed it in for you. Four million lines of BASIC!
I loved this language, sadly most of my old programs have disappeared - so I'm just left with regrets about losing those floppies in one of my many apartment moves.
[Futurama: Kif & Amy in the Holo-shed]
Amy: Oh, Kif it's beautiful!
(A virtual reality pony trots by)
Amy: It's Spirit, the pony I always wanted but my parents said I already had too many ponies!
Kif: Yes, I programmed it in for you. Four million lines of BASIC!
Too many people don't understand the power and concept of FreeBASIC. I have to tell you, it's no toy just because of it's syntax. Anything I've been able to do in C I've been able to do in FreeBASIC.
BASIC syntax, not BASIC concept (Or a more advanced BASIC concept, since FB supports modernized coding techniques, there's a BASIC you can actually learn from). The concept of true power and speed of C, but the syntax and ease of use as BASIC.
You aren't forced to use anything advanced either. So if you are just learning, you can stick with it. If you want to do something you would normally do in C, you can do that too.
Just my two cents.
FreeBASIC is BASIC, but it's not standard-compliant. But it's still BASIC.
MS-QuickBasic on which FreeBasic is based on removed the line numbering of the old original Dartmouth Basic which I learned as a biochemistry undergrad in 1973. Bill Gates added a pretty comprehensive Pascal based syntax. QuickBasic was a very useful tool for a scientist who was not necessarily a computer scientist.
I did an intensive course in ISO Pascal in the late eighties then shortly after as a grad student I found Quickbasic so usefully Pascal-like, that I started using it to solve a lot of chemical kinetics problems in my research. It could produce quite good graphics for those times and I got some great looking complex kinetics plots out of it.
By the early nineties I was working in an environmental chemistry labs and I used QuickBasic to write the number crunching module that was called by the HP macro language used by a GC-MS to calculate PCB concentations in environmental analysis. It stayed in production use for over two years.
I even wrote an Huckel MO program using it, as they only way to run molecular quantum mechanics on a 286. When I finally got a 386 it was a relief to be able to run MOPAC with a DOS extender.
So I have a soft spot for QuickBasic. Later I painfully taught myself to program in C, but I found it to be like drawing hens teeth. Recently I have been trying to learn Python as a useful programing tool for a scientist, but I don't seem to be able to concentrate enough to be productive. May be I am getting to old to code.
Hell - I might as well try FreeBASIC if only for old times sake ! I'll have to dig out some of those 15 year old floppy disks.
<em>programing tool for a scientist, but I don't seem to be able to concentrate enough to be productive. May be I am getting to old to code.</em>
So I am not the only one then! I seem to grow less "agile" in my programming every year...
Ahhh... BASIC... VAX BASIC was AWESOME! I remember those days... we wrote everything in BASIC back then.



