Page 2 of 7

Posted: Thu Aug 25, 2005 6:41 pm
by fsw
Please read my lips:
PureBasic is coded in ASM and C (maybe some parts even in C++).
So C/C++ can't be that bad, can it...
BTW: Back to topic...

How to prove that PureBasic doesn't suck?

:roll:

Posted: Thu Aug 25, 2005 6:43 pm
by Brice Manuel
Purebasic just doesn't have the capabilities for a large-medium size project.
If you do not know how to properly code, then this will be an issue no matter what language you use. Other than lack of skill, there is no reason somebody couldn't use PB to do whatever size project they wanted.
No doubles
WooHoo! Doubles, lets hook the thumbs in the belt loops again and strut around while shouting "I'm using Doubles". Nice to have, but definitely not a stumbling block to using PB for the average PB user.
There are just certain things that C/C++ have that Pb needs in order to truly compete.
No need for a BASIC to ever compete with C++. They are two entirely different languages with different syntaxes and feature sets.
but that doesnt mean we cant correct you!
Correct me? So far all you two have done is twist my words and take them out of context.

[quote[Notice that i didnt say you werent right about c++'s hard and oldish syntax![/quote]I never said that. I said I like the C++ syntax.
Its true that some basic languages is interpretted, however the interpretter is machine code [unless the interpretter itself is java or written in an interpretter ]. however in the end its all machine code
Dude, that was the point in my original post. C++ gurus tend to claim BASIC is slow and out of date. In our example, PB is not interpreted (most BASIC variants out today aren't), it compiles to machine code just as C++ does. Unless somebody can come up with something faster and better than machine code, the C++ vs. BASIC in speed argument doesn't hold much weight.
Just wish: OOP capabilities, doubles and more..
Unfortunately, Doubles sometimes come with a sacrifice of speed :?

Posted: Thu Aug 25, 2005 7:33 pm
by traumatic
Seems like it's pretty much useless to argue about this but I "can't let you
go" with this sentence:
Brice Manuel wrote:Correct me? So far all you two have done is twist my words and take them out of context.
Please re-read my words...

You said PB must be fast as it generates ASM output.
This is wrong as I can write ASM code that is even slower than the slowest
interpreted language on earth. ASM alone isn't a guaranty for speed.

You said, VC++ generates code that is slower than PB's, expect if you're
a very experienced coder. This is wrong as well. VC++ is one of the most
optimizing compilers out there. Just make some small tests, look at the
generated code both compilers (PB/VC++) generate, clock it for Jimmy Olden's
sake and you know that I am right. Not even Fred would claim that PB is
faster or more optimized than VC's output.

You're saying VC++ would generate bloated code or executables, which
lets me assume one of two things: Either we're at cross-purposes or you've
never seen any VC-output.

And please! this is not about saying VC is better, "hyping" it or whatever.
I just think it's not ok to deny facts merely because you like PB more.

I like PB as well... ...very much actually!

...and now, to follow fsw's words... back to topic. ;)

Posted: Thu Aug 25, 2005 9:19 pm
by thefool
Correct me? So far all you two have done is twist my words and take them out of context.
ok.. As traumatic said: We just pointed out you were wrong. Traumatic is right, just because a language does compile to ASM it doesnt mean its fast!

VC is very very fast and it has a lot of great automatic optimization.

Hereby i mention again: Its up to the programmer. Do things smarter! Use inline assembler when you are in the need of speed. Remember if its simple stuff not like graphics and heavy maths, but just simple stuff like saving a smaller file there is no real difference if it takes 200 ms or 250 ms, unless you have to do it 100 times :/

Purebasic isnt really optimized yet, wich i hope it will be for 4.0.. I think fred mentioned something about optimizing it more...
Purebasic IS fast, but VC is hell fast too! and VC does not put out bloated executables. Purebasic does neither, and purebasic's output may in general be smaller, but you CAN write small exe's using VC.

Heck i wrote an messagerequester app in 2.5 kbytes using MinGW compiler! And afaik VC can do that too...

I like pure very much as traumatic, but that doesnt mean i will put down any other language.

Posted: Thu Aug 25, 2005 9:52 pm
by PB
> No doubles

So what? Depends if the app needs them. Most apps don't.

> string handling needs work

Unlimited strings would be nice, yes.

> no unsigned variables

Oh come on, this is merely a convenience wish as opposed to something
holding PureBasic back!

Posted: Thu Aug 25, 2005 10:17 pm
by fsw
fsw wrote:Please read my lips:
BTW: Back to topic...

How to prove that PureBasic doesn't suck?

:roll:
This is what FreeBASIC already has:
  • variable-arguments in procedures
    function overloading (procedures)
    thread-safety (especially strings)
    doubles (and all functions for it like val64() etc.)
    ubyte (and all functions for it ...)
    uword (and all functions for it ...)
    ulong (and all functions for it ...)
    export functions in exe (needed for software that works like glade)
    generate real static libs
    import real static libs
    redim preserve arrays
    ubound (for arrays)
    lbound (for arrays)
    Option Explicit (can be very helpful)
    Macros
    up to 2gb strings
    make use of the gnu debugger
    profiling of functions
    etc. (there is sure more that is missing here...)
In the works are:
  • Unicode stuff
    OOP
    etc. (there is sure more that is missing here...)
Hopefully PureBasic V4 can beat that :wink:

STAY 8)

Posted: Thu Aug 25, 2005 11:29 pm
by Brice Manuel
You said PB must be fast as it generates ASM output.
Once again twisting my words and taking them out of context. No way my intent. As has been said, The standard argument is VC++ is better than "BASIC". So many VC++ newbs forget that we are not dealing with the BASICs of the 80's where BASICs were usually interpreted and quite slow. BASICs today are "compiled" and most compile to machine code.
This is wrong as I can write ASM code that is even slower than the slowest interpreted language on earth. ASM alone isn't a guaranty for speed.
Duh! Nobody said ASM alone makes anything fast. However, we are talking about reality and most of the BASICs out now that compile to machine code are FAR faster than the older variants that are interpreted, p-code, JIT compiled, etc. I am sorry you are unable to see the speed difference between BASIC variants over the years.
You said, VC++ generates code that is slower than PB's, expect if you're a very experienced coder. This is wrong as well. VC++ is one of the most optimizing compilers out there.
VC++ has a great compiler, but as stated stick a beginner in front of VC++ & PB and the PB will be faster. VC++ is rather daunting for beginners and over the years I have seen many students unintentionally find new innovaties ways to make it crawl because they don't understand the syntax, OOP and how to properly use it. The issues beginners were having with VC++ is why I started using different BASIC varaints that had "easier" to learn syntax and the kids have had a lot more fun and have been more productive.
Not even Fred would claim that PB is
faster or more optimized than VC's output.
No would I unless we are dealing with beginners. However, as stated before even for experienced coders the speed difference will not really be beneficial unless you are dealing with math intensive programs.
You're saying VC++ would generate bloated code or executables
Again "twisting". I said VC++ itself is bloated. Default install for VC++ 6.0 Pro on this system (with SP6) 171MB. Compared to PB? Bloated. Source code itself? VC++ Bloated. Write a simple "retro" game in VC++ and PB and tell me which has less source code? More and more people are switching over to .NET. More and more apps I get require .NET runtimes. I am sorry, but IMHO 20+MB runtimes are a joke. Granted people don't HAVE to use .NET, but the reality is they ARE.
I just think it's not ok to deny facts merely because you like PB more.
I do not necessarily like PB "more". It is a matter of always using the right tool for the right job. There is a lot I don't like about PB, but every language has its quirks and shortcomings.

Posted: Thu Aug 25, 2005 11:36 pm
by Brice Manuel
> No doubles

So what? Depends if the app needs them. Most apps don't.

> string handling needs work

Unlimited strings would be nice, yes.

> no unsigned variables

Oh come on, this is merely a convenience wish as opposed to something
holding PureBasic back!
Unfortunately, these are usually the silly arguments you run into with people. Your language sucks because it doesn't have "feature X". This is the "hooking your thumbs in your belt loops and strutting" mentality.

Posted: Thu Aug 25, 2005 11:49 pm
by techjunkie
Rename PB to P++ (hehe)

A couple of years ago when a company in the states tried to get programmers for a Fortran project, they renamed Fortran 95 to F++.

Fact #1: The Vax Fortran compilator is so good and optimized, that you only gain 5% in speed if you program the same thing in assembler.

Fact #2: Yes, Fortran 95 have pointers and implicit initialisation of dervived type objects.

Fact #3: And ohhh YES, Fortran 2003 is OO with polymorphism, dynamic type allocation, deferred type parameters, asynchronous transfer operations and streams (they have "stolen" a lot from Ada).

Fact #4: Fortran was developed over a three year period (1954-1957) at IBM. So it is 50!!! years old and still going strong. NASA and Aerospace Companies use Fortran a lot.

but now I'm way off topic... :oops:

:D

Posted: Fri Aug 26, 2005 1:49 am
by Dare2
LOL, :lol:

This is really funny! Some of PureBasic's stronger supporters are being taken on by the McCarthy commission into Anti-PureBasic sentiments.

hehe.

(The words "Fanatic" and "Rabid" spring to mind).

@techjunkie: Re F++: Yes, but does it support unsigned integers? (j/k)

* Hooks fingers in belt, tilts chin, struts around saying "I use P++ because I need Doubles and Unsigneds" *

Hehehehehehehe. :)

Posted: Fri Aug 26, 2005 2:22 am
by dagcrack
:shock: if theres anything lacking, programm it in ASM... either way this is a pointless discussion. Why would a "kid" need the extra precision of doubles? (you said you moved to basic for your students)... pointless, let them use basic, and you can use cpp whenever you want, thats all.

:lol: :lol: :lol:

Posted: Fri Aug 26, 2005 2:31 am
by Dare2
dagcrack wrote:either way this is a pointless discussion.
True.

Still funny though. :D

Posted: Fri Aug 26, 2005 12:07 pm
by techjunkie
Dare2 wrote:
dagcrack wrote:either way this is a pointless discussion.
True.

Still funny though. :D
I agree and must admit that I don't understand the question!?!? :?:

You don't choose ONE programming language you use for everything!!

What language to use depends on what you are going to achieve, how many other people are involved, timeframe, budget, target platform(s) and many other things.

Sometimes I use VC++, sometimes C#, sometimes Java (Yes, I'm sorry... :oops: ) and sometimes languages as BlitzBasic or PureBasic. In some cases you got the job done quicker in a Scripting Language as Perl, PHP or VBScript.

Posted: Fri Aug 26, 2005 12:31 pm
by PB
> I agree and must admit that I don't understand the question!?!?

It's like this: when someone finds out you wrote an app in Basic, they think
the app is a toy, or not mature, or a laughingstock. Basic has a reputation
as a beginners language, for unskilled coders. I've seen it all the time, and
to this day, too. That's why okasvi created this topic -- he's obviously been
through this stigma too (am I right?).

The thing I tell people, is that Basic from the 80's is NOTHING compared to
Basic of today. I explain how Basic of today is extremely similar to C and
uses much of C's techniques, such as Procedures and structured programming.
Basic is not the Goto/Gosub spaghetti code of the past. And if you use the
Windows API, you're essentially coding in part C anyway, since PureBasic
API calls are done almost exactly the same way as they are in C!

I agree that maybe PureBasic isn't the best name, because of this stigma.
But then again, I found PureBasic by searching for "basic" in Google, so
without that name I never would have found this wonderful language.

Part of the stigma too is because of Visual Basic -- people know it comes
with a massive runtime DLL and uses OCXs and stuff like that, and for
older versions of VB, doesn't even compile to native machine code (eg.
VB4 compiles to P-Code only). So when you say you code in PureBasic,
they probably think it's the same as Visual Basic... but in reality it creates
small standalone exes that require no install and no runtime interpreter.
Give them a PureBasic exe and explain how it needs no install, and they
begin to see the light! ;)

Personally, I tell people my apps are written in C. They have no way of
knowing the difference, which is a superb compliment to PureBasic. :)

Posted: Fri Aug 26, 2005 12:33 pm
by traumatic
Dare2 wrote:Some of PureBasic's stronger supporters are being taken on by the McCarthy commission into Anti-PureBasic sentiments.
LMAO :lol: