PureBasic 6.00 released !

Developed or developing a new product in PureBasic? Tell the world about it.
User avatar
Saki
Addict
Addict
Posts: 830
Joined: Sun Apr 05, 2020 11:28 am
Location: Pandora

Re: PureBasic 6.00 Alpha 1 released !

Post by Saki »

The zero termination of the strings has not only disadvantages.
As with any other method, there are advantages and disadvantages.
In many cases one can also accelerate the access strongly, which presupposes however that one is exactly familiar with the mode of operation.
With smaller strings there is practically no disadvantage recognizable anyway.
When working around the problem of processing very large strings, there is a significant increase in speed in practical use with the C backend, since the overall code is optimized very well.
地球上の平和
Fred
Administrator
Administrator
Posts: 16618
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: PureBasic 6.00 Alpha 1 released !

Post by Fred »

hoerbie wrote: Wed Jun 09, 2021 8:16 am Hi,

I would like to ask for a new Alpha 2 version, as there are now so many [Done] Bugs.

Greets, hoerbie
I want to fix some more majors issues before continue testing, as I don't want you to loose time on already known bugs.
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: PureBasic 6.00 Alpha 1 released !

Post by StarBootics »

Fred wrote: Wed Jun 09, 2021 9:20 am I want to fix some more majors issues before continue testing, as I don't want you to loose time on already known bugs.
I can't wait for the Linux version to come out.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
Tenaja
Addict
Addict
Posts: 1948
Joined: Tue Nov 09, 2010 10:15 pm

Re: PureBasic 6.00 Alpha 1 released !

Post by Tenaja »

Saki wrote: Wed Jun 09, 2021 8:55 am The zero termination of the strings has not only disadvantages.
As with any other method, there are advantages and disadvantages.
In many cases one can also accelerate the access strongly, which presupposes however that one is exactly familiar with the mode of operation.
With smaller strings there is practically no disadvantage recognizable anyway.
When working around the problem of processing very large strings, there is a significant increase in speed in practical use with the C backend, since the overall code is optimized very well.
For one project you write that uses no libraries, this might be true... However, once an external library is added, anything other than zts is hassle and disadvantage.

The greatest (and only) advantage of zts is it's widespread use. Unfortunately, that advantage, development-wise, is so enormous that other alternatives are all but ignored.

Instead of continually begging for a new data type while Fred is trying to issue an alpha 2 for a fundamentally new compiler, why not test a dozen completed libraries, and issue a comparison of the top five with pros & cons? That way, IF Fred decides to implement one, his time to implementation is minimized, and research virtually eliminated? This should be extra easy now that you can compile C and PB in the same project.

I highly doubt you will see this implemented, and would bet on high odds that it will not be any time soon. Look in the String section of the documentation, and consider that every single one of those will need to accommodate the new data type. Then look at every other function in the documentation, which is surely in the thousands, all of those. And, it can't break legacy code.

So the only option that would ever be considered (to prevent breaking legacy code and avoid updating thousands of functions) would be a zts that also contains the length... And if you desperately need that, use a separate library.

Trust me, I'd like this as much as you, but you must consider the practical aspects of time, resources, legacy code, and current priority. That priority right now is C emission, and if you keep this up (repeatedly, requesting it over and over and over) you might become a clanging gong to Fred, and become permanently ignored. I am not requesting or suggesting this, I am observing it.

Bottom line, if you want a length stored in your strings, work in your ide, not the forum. Then start posting code, not duplicated requests.
Fred
Administrator
Administrator
Posts: 16618
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: PureBasic 6.00 Alpha 2 released !

Post by Fred »

Alpha is 2 is out ! Thank you a lot to have spent time to test the new version, we have fixed most of the reported bugs, so don't hesistate to give it another try to make it as good as possible. Please also test the regular compiler (ASM backend) to ensure there is no regression on this compiler. Here are the alpha 2 change list:

Code: Select all

- Removed #PB_Compiler_C constant and replaced it with #PB_Compiler_Backend, with #PB_Backend_C and #PB_Backend_Asm values
- Added Purifier support
- Updated fasm, polink, polib and porc to lastest versions
Have fun !
User avatar
Keya
Addict
Addict
Posts: 1891
Joined: Thu Jun 04, 2015 7:10 am

Re: PureBasic 6.00 Alpha 2 released !

Post by Keya »

I just wanted to say CONGRATULATIONS Fred. This C backend really is monumentous progress (and it's mindblowing how encompassing it already is - even complex source codes already compile and run successfully), and I am so happy + excited about the future of Purebasic (and blown away by your personal skills to make it happen!!!) !!!!!! :)

Also THANKYOU for updating various 3rd party utilities to the latest version -- I think it makes a lot of sense timing-wise when doing a major upgrade! :)
User avatar
mk-soft
Always Here
Always Here
Posts: 5335
Joined: Fri May 12, 2006 6:51 pm
Location: Germany

Re: PureBasic 6.00 Alpha 2 released !

Post by mk-soft »

Very nice Fed,

I've got most things going on. Even something like the complex ActiveScript module. (Except the VariantHelper with the complex structure union).

Thanks ;)
My Projects ThreadToGUI / OOP-BaseClass / EventDesigner V3
PB v3.30 / v5.75 - OS Mac Mini OSX 10.xx - VM Window Pro / Linux Ubuntu
Downloads on my Webspace / OneDrive
User_Russian
Addict
Addict
Posts: 1443
Joined: Wed Nov 12, 2008 5:01 pm
Location: Russia

Re: PureBasic 6.00 Alpha 2 released !

Post by User_Russian »

Fred wrote: Fri Jun 18, 2021 8:54 pmUpdated fasm, polink, polib and porc to lastest versions
New version of polink only for C backend? Maybe then it is better to use linker ld instead of polink? This is much better because ld is the native linker for gcc. For example if use flags -fdata-sections and -ffunction-sections, polink does not work correctly. For ld, there is a flag --gc-sections, which has no counterpart for ponink.
Little John
Addict
Addict
Posts: 4519
Joined: Thu Jun 07, 2007 3:25 pm
Location: Berlin, Germany

Re: PureBasic 6.00 Alpha 2 released !

Post by Little John »

Hi,

I'd like to test PureBasic 6.00 Alpha 2.
How can I tell the compiler to use the new C backend?
I can't find a corresponding item in the compiler options.
PeDe
Enthusiast
Enthusiast
Posts: 119
Joined: Sun Nov 26, 2017 3:13 pm
Location: Vienna
Contact:

Re: PureBasic 6.00 Alpha 2 released !

Post by PeDe »

Little John wrote: Sat Jun 19, 2021 4:12 pm How can I tell the compiler to use the new C backend?
See "Preferences"->"Compiler", and add "...\PureBasic\Compilers\pbcompilerc.exe".

Peter
Little John
Addict
Addict
Posts: 4519
Joined: Thu Jun 07, 2007 3:25 pm
Location: Berlin, Germany

Re: PureBasic 6.00 Alpha 2 released !

Post by Little John »

Thank you!
However, this is unnecessarily cumbersome.
There should be a built-in compiler option, which allows to choose between ASM backend and C backend.
User avatar
Kwai chang caine
Always Here
Always Here
Posts: 5342
Joined: Sun Nov 05, 2006 11:42 pm
Location: Lyon - France

Re: PureBasic 6.00 Alpha 2 released !

Post by Kwai chang caine »

Thanks FRED 8)
ImageThe happiness is a road...
Not a destination
PeDe
Enthusiast
Enthusiast
Posts: 119
Joined: Sun Nov 26, 2017 3:13 pm
Location: Vienna
Contact:

Re: PureBasic 6.00 Alpha 2 released !

Post by PeDe »

Little John wrote: Sat Jun 19, 2021 4:30 pm However, this is unnecessarily cumbersome.
There should be a built-in compiler option, which allows to choose between ASM backend and C backend.
If you compile for 32- and 64-bit, you must also add the respective compiler. Then you can create a project with multiple targets, and compile all versions at once, or select a single target. I only use projects and this works very well. You can also run batch commands automatically before or after compiling, for example to move and copy the exe and files to their own directories.

Peter
Little John
Addict
Addict
Posts: 4519
Joined: Thu Jun 07, 2007 3:25 pm
Location: Berlin, Germany

Re: PureBasic 6.00 Alpha 2 released !

Post by Little John »

PeDe wrote: Sat Jun 19, 2021 4:58 pmIf you compile for 32- and 64-bit, you must also add the respective compiler.
No, you _can_ do so (that's fine), but _must_ is wrong. I have installed both PB 32 bit and PB 64 separately from each other, so for me there is no need to do that.
PeDe wrote: Sat Jun 19, 2021 4:58 pm Then you can create a project with multiple targets, ...
I know all that, but this has nothing got to do with my above suggestion. I never use projects BTW.
User avatar
[blendman]
Enthusiast
Enthusiast
Posts: 297
Joined: Thu Apr 07, 2011 1:14 pm
Location: 3 arks
Contact:

Re: PureBasic 6.00 Alpha 2 released !

Post by [blendman] »

Thank you a lot, Fred & pb team, its Amazing !
I have compiled some of my big programs (like animatoon, 24000 lines of code), and it works fine !
Very impressed by your huge work !
Thank you very much again !
Post Reply