(Link to AcmlmWiki) Offline: thank ||bass
Register | Login
Views: 13,040,846
Main | Memberlist | Active users | Calendar | Chat | Online users
Ranks | FAQ | ACS | Stats | Color Chart | Search | Photo album
05-18-24 02:23 AM
0 users currently in Programming.
Acmlm's Board - I3 Archive - Programming - ''Free'' - Sound Better than ''V''? New poll | |
Add to favorites | Next newer thread | Next older thread
User Post
Guy Perfect









Since: 11-18-05

Last post: 6300 days
Last view: 6298 days
Posted on 01-30-06 01:50 PM Link | Quote
To be frank, Microsoft has gone to great lengths to do a major disservice to the BASIC programming languge.

Back when QBASIC could first compile an executable, it merely made an Assembly pseudo-equivalent to everything that was in the source code; with no optimizations whatsoever. This started its downward trend of being a legacy "slow an inefficient" language.

Visual Basic allowed simple window creation and integration with newer operating systems, but retained some of its inability to compile optimized code, as it forever required that vbx00bb.dll to be present. (x is version and bb is processor bits (16 or 32))

VB5 and VB6 both included compiler options to better optimize code, and it compiled to standalone executables that were honestly much faster and smaller than its brethren. Sound like a perfect solution? No, system runtimes were required. They came built-in with everything newer than Windows 98 SE (not including it), but they still weren't quite native.

Visual Basic never supported standard I/O. You had to jump through major hoops if you wanted to make a console or CGI application.

Then came the attrocity of .NET, where Microsoft forced its support of the BASIC language to remain solely on the .NET platform and no native system support was possible for the language. Also forcing the language forever into the realm of OOP, Microsoft ensured that any use of the language would be, and would forever be, Microsoft-only, and .NET-only.



Thank the stars Microsoft doesn't "own" the BASIC programming language. Andre Victor decided to take it upon himself to create a free and more efficient alternative to QBASIC, and I'm glad he did.

FreeBASIC, which started out as some QB equivalent, turned into a cross-platform 32-bit BASIC compiler that provides new capabilities and direct compatibility with the popular favorite C++. .lib files can be directly linked with FreeBASIC and code written in C or C++ can be compiled into a FreeBASIC executable, which runs natively on DOS, Win32 or Linux (x86)... and even, from what I understand, XBOX.

Windowed applications are handled the same way they are in C: API calls. OpenGL, network, sound, printer... All of this is not directly supported by the language, as it's system peripherals and will vary per OS.

With even default compiler options, FreeBASIC makes very optimized programs. By default, picky BASIC checks are not activated, such as array bounds or overflow. Exceptions are not handled internally, so there isn't much overhead to "make sure the program doesn't do bad things"

Other new features that C has had all along that BASIC never had include pointers, unsigned data types and inline-assembly.



What began as an alternative to QBASIC ended up becoming a suitable alternative to C. I've had a bit of experience with FreeBASIC in practice and I must say that I am very impressed with it. This will finally allow me to move off of VB and into something that works on Linux (not to mention works BETTER).

For the record, I'm also very familiar with C and C++. I prefer to stick with BASIC, however, because I like non-conformity. If I can prove BASIC isn't inherantly bad, then my goal will have been reached. FreeBASIC will help me do just that.

So my question to you... When you hear "FreeBASIC," are you still struck with the same feeling of shock and disgust that you are whe you hear "Visual Basic"?

FreeBASIC home page
FreeDOS +

Giant Red Koopa
Legion: freedos = fritos








Since: 11-17-05
From: Seattle

Last post: 6298 days
Last view: 6298 days
Posted on 01-30-06 02:13 PM Link | Quote
Just some disambiguation: QBASIC came with MS-DOS 5.0-6.22 (also on the Windows 95/98 CD-ROMs burried in some directory), it was merely an interpreter. QuickBASIC was the one Microsoft sold (compatible with code written in QBASIC, but QBASIC wasn't always compatible with QuickBASIC-made programs), with the added ability to compile programs into a cruel executable binary that depended on QuickBASIC libraries unless you made a static binary that boosted the size by a lot.

Anyhow I used to have True BASIC for MS-DOS, that was rather nice, so much more than any of the BASICs Microsoft bundled with their OS (QBASIC.. GW-BASIC, I think there's a third). That was many years ago though.

FreeBASIC looks neat. Probably still not worth making production-quality software in it, but nice enough for a learning experience.
Guy Perfect









Since: 11-18-05

Last post: 6300 days
Last view: 6298 days
Posted on 01-30-06 02:20 PM Link | Quote
Originally posted by FreeDOS
Probably still not worth making production-quality software in it...
I assure you that it is. By what evidence did you come to your conclusion?
Kyoufu Kawa
Intends to keep Rom Hacking in one piece until the end








Since: 11-18-05
From: Catgirl Central Station

Last post: 6298 days
Last view: 6298 days
Posted on 01-30-06 02:32 PM Link | Quote
I'm gonna try this fucker out a bit, being something of a Basic nut myself.

Expect a full report soonish.
Guy Perfect









Since: 11-18-05

Last post: 6300 days
Last view: 6298 days
Posted on 01-30-06 05:41 PM Link | Quote
Will do.

For the most part, I'd say anything that creates a descent assembly of human-created source code quaifies as a "good" tool to use. After all, any programming language out there ultimately becomes opcodes for a processor. I don't see why any variant of any specific language could end up being "inadequate" in that sense.

The only real issue is what the language allows the developer to do. If it's too restrictive, then a language may be unwieldy. That's not the case with FreeBASIC, though. While there may be some kwirks that some languages have (such as Class support) that FreeBASIC doesn't do, there isn't really a restriction in the capabilities of the language itself (since there's technically no such thing as an object when it comes to ASM).
Gavin

Cheep-cheep
Vandalism is not tolerated


 





Since: 11-17-05
From: IL, USA

Last post: 6375 days
Last view: 6318 days
Posted on 01-31-06 05:15 PM Link | Quote
Originally posted by BGNG
Will do.

For the most part, I'd say anything that creates a descent assembly of human-created source code quaifies as a "good" tool to use. After all, any programming language out there ultimately becomes opcodes for a processor. I don't see why any variant of any specific language could end up being "inadequate" in that sense.

The only real issue is what the language allows the developer to do. If it's too restrictive, then a language may be unwieldy. That's not the case with FreeBASIC, though. While there may be some kwirks that some languages have (such as Class support) that FreeBASIC doesn't do, there isn't really a restriction in the capabilities of the language itself (since there's technically no such thing as an object when it comes to ASM).


Class support is a quirk? lol

Honestly I've extensively used Visual Basic 6.0, DarkBasic, previouwly qbasic, quickbasic, libertybasic FreeBasic, and did some semi-advanced stuff for like a few years or something. Although I haven't touched a BASIC language since my last escapades with VB6. I can't ever see myself going back..


(edited by Gavin on 01-31-06 04:21 PM)
Guy Perfect









Since: 11-18-05

Last post: 6300 days
Last view: 6298 days
Posted on 01-31-06 05:39 PM Link | Quote
Classes were invented for the sake of productivity, not program efficiency. They may make certain styles of programming easier on the programmer, but add more overhead and ultimately make the program run more slowly than if classes were not used.

I fully encourage people to use whatever language they're most comfortable with. But with FreeBASIC, I'm simply inquiring if it alleviates some of the nasty feelings people have towards the BASIC language because of what Microsoft has done with it.
FreeDOS +

Giant Red Koopa
Legion: freedos = fritos








Since: 11-17-05
From: Seattle

Last post: 6298 days
Last view: 6298 days
Posted on 01-31-06 05:41 PM Link | Quote
Gentoo Portage doesn't have FreeBASIC and I'm too lazy to go get it
HyperHacker

Star Mario
Finally being paid to code in VB! If only I still enjoyed that. <_<
Wii #7182 6487 4198 1828


 





Since: 11-18-05
From: Canada, w00t!
My computer's specs, if anyone gives a damn.
STOP TRUNCATING THIS >8^(

Last post: 6298 days
Last view: 6298 days
Posted on 01-31-06 06:23 PM Link | Quote
FreeBASIC certainly sounds better than VB, but I still think C beats both.
However, a FreeBASIC interpreter/compiler on a portable system would be pretty damn cool.
Guy Perfect









Since: 11-18-05

Last post: 6300 days
Last view: 6298 days
Posted on 01-31-06 06:40 PM Link | Quote
Considering FreeBASIC is barely a year old and has almost every feature C does, I'd say it's quite a feat to behold.
creaothceann

Red Goomba








Since: 11-22-05

Last post: 6493 days
Last view: 6493 days
Posted on 02-01-06 06:05 AM Link | Quote
Originally posted by BGNG
With even default compiler options, FreeBASIC makes very optimized programs. By default, picky BASIC checks are not activated, such as array bounds or overflow. Exceptions are not handled internally, so there isn't much overhead to "make sure the program doesn't do bad things"

Originally posted by BGNG
Classes were invented for the sake of productivity, not program efficiency. They may make certain styles of programming easier on the programmer, but add more overhead and ultimately make the program run more slowly than if classes were not used.

True. But don't over-estimate this speed penalty.

Does FB allow the programmer to make the choice between using or not using these features? I've experienced almost no slowdown in my programs when runtime checks are on, and I appreciate the extra security (some of the programs are released to the public).
MisterJones

Tooky








Since: 12-08-05
From: Mexico

Last post: 6388 days
Last view: 6324 days
Posted on 02-03-06 07:57 PM Link | Quote
I'd stick with C++ or D, even java. I'm not saying freebasic is bad, in fact, it seems quite good, but I have always hated its syntax and too many keywords.
Add to favorites | Next newer thread | Next older thread
Acmlm's Board - I3 Archive - Programming - ''Free'' - Sound Better than ''V''? |


ABII

Acmlmboard 1.92.999, 9/17/2006
©2000-2006 Acmlm, Emuz, Blades, Xkeeper

Page rendered in 0.012 seconds; used 408.59 kB (max 509.14 kB)