Page 7 of 42

Re: PureBasic 6.00 Alpha 1 released !

Posted: Wed Jun 09, 2021 8:55 am
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.

Re: PureBasic 6.00 Alpha 1 released !

Posted: Wed Jun 09, 2021 9:20 am
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.

Re: PureBasic 6.00 Alpha 1 released !

Posted: Wed Jun 09, 2021 9:30 am
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

Re: PureBasic 6.00 Alpha 1 released !

Posted: Wed Jun 09, 2021 6:05 pm
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.

Re: PureBasic 6.00 Alpha 2 released !

Posted: Fri Jun 18, 2021 8:54 pm
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 !

Re: PureBasic 6.00 Alpha 2 released !

Posted: Fri Jun 18, 2021 9:25 pm
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! :)

Re: PureBasic 6.00 Alpha 2 released !

Posted: Sat Jun 19, 2021 12:08 pm
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 ;)

Re: PureBasic 6.00 Alpha 2 released !

Posted: Sat Jun 19, 2021 1:14 pm
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.

Re: PureBasic 6.00 Alpha 2 released !

Posted: Sat Jun 19, 2021 4:12 pm
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.

Re: PureBasic 6.00 Alpha 2 released !

Posted: Sat Jun 19, 2021 4:16 pm
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

Re: PureBasic 6.00 Alpha 2 released !

Posted: Sat Jun 19, 2021 4:30 pm
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.

Re: PureBasic 6.00 Alpha 2 released !

Posted: Sat Jun 19, 2021 4:51 pm
by Kwai chang caine
Thanks FRED 8)

Re: PureBasic 6.00 Alpha 2 released !

Posted: Sat Jun 19, 2021 4:58 pm
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

Re: PureBasic 6.00 Alpha 2 released !

Posted: Sat Jun 19, 2021 5:08 pm
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.

Re: PureBasic 6.00 Alpha 2 released !

Posted: Sun Jun 20, 2021 1:57 pm
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 !