Review Purebasic by a programmer

For everything that's not in any way related to PureBasic. General chat etc...
threedslider
Enthusiast
Enthusiast
Posts: 397
Joined: Sat Feb 12, 2022 7:15 pm

Review Purebasic by a programmer

Post by threedslider »

Hello,

Just a review Purebasic by a programmer : https://freeshell.de/~luis/purebasic/about/index.php

What do you think of that ?

Enjoy to read it :D
AZJIO
Addict
Addict
Posts: 2191
Joined: Sun May 14, 2017 1:48 am

Re: Review Purebasic by a programmer

Post by AZJIO »

Unused procedures are sometimes included in the final EXE.
If you select C-Backend, they are not enabled
For example you can't add an offset to a pointer inside an expression to access a memory location.
Here I offset 3 characters to get the letter without changing the pointer.

Code: Select all

x = PeekC(@param + 3 * SizeOf(Character))
But PureBasic it's still not something near immortal like C or C++ and could stop being maintained tomorrow for many reasons.
I read somewhere that it's not going to stop. You can always make a will under certain circumstances.
Defined but unused variables are not reported at the end of the compilation.
You will lose 4-8 bytes per variable. I meet users here who write code without thinking about the size of the program losing 100kb. I also wrote a program that tells you how many times a variable occurs. If it meets 1 time, I realize I just forgot to delete it.
Quin
Addict
Addict
Posts: 1133
Joined: Thu Mar 31, 2022 7:03 pm
Location: Colorado, United States
Contact:

Re: Review Purebasic by a programmer

Post by Quin »

This isn't new, but I agree with a lot of what was said. I think some points are slightly inaccurate now with the C backend, but especially the point about syntax additions is completely accurate. Fred made his reasons for this clear in the interview, but something simple like ternerary even would be nice...
User avatar
CDXbow
Enthusiast
Enthusiast
Posts: 100
Joined: Mon Aug 12, 2019 5:32 am
Location: Oz

Re: Review Purebasic by a programmer

Post by CDXbow »

threedslider wrote: Thu Mar 13, 2025 10:03 am Hello,

Just a review Purebasic by a programmer : https://freeshell.de/~luis/purebasic/about/index.php

What do you think of that ?

Enjoy to read it :D
I think Luis is correct with the positives he points out and also many of his criticisms. However most of the criticisms are irrelevant, like criticising a Mini for not being as flash as a Rolls Royce. Sure it's correct, but is not the point.

I thought it was funny when he talked about C++ being immortal while currently its being written out of many application now because it is not considered a memory safe language. Luis, nothing is immortal. When he mentioned being stuck in the 70's I had to smile. PB has always reminded me of bit of plain C from back in the day. Offering a combination of simplicity and power, but with the addition of gadgets to ease development.

The issue of it's future is a real important one and how Fred and the team can ensure that. When I start to think about PB's future I always end up thinking an open source model would be the best. I don't know how much Fred and the team earn from PB, but it can't be that much if Fred has to work in a bank. Perhaps some platforms could be open source, such as for the pi, or perhaps there could be a open source 'standard' and a pro version which has extra goodies for corparate development. Sadly I don't think Spiderbasic will get much traction because there are so may free development environments for web development. Perhaps the paid pro version could include SB, making it the 'Universal Basic Compiler'. If the team could add a rust compiler to PB that might add appeal to corporate developers.

The other issue for the future is AI and how it can be incorporated into PB. That's a real tricky issue and probably deserves a thread of it's own.
threedslider
Enthusiast
Enthusiast
Posts: 397
Joined: Sat Feb 12, 2022 7:15 pm

Re: Review Purebasic by a programmer

Post by threedslider »

@CDXbow : Ok thank you for your info, sure Luis doesn't know at all or he does not fully tested the PB as well :?

PB is already powerful and it can do it a lot or endless possibility :)

And AI in PB maybe it is not good, we can do it for ourself as tool to automate, right ?
User avatar
CDXbow
Enthusiast
Enthusiast
Posts: 100
Joined: Mon Aug 12, 2019 5:32 am
Location: Oz

Re: Review Purebasic by a programmer

Post by CDXbow »

threedslider wrote: Sat Mar 15, 2025 3:00 am @CDXbow : Ok thank you for your info, sure Luis doesn't know at all or he does not fully tested the PB as well :?

PB is already powerful and it can do it a lot or endless possibility :)

And AI in PB maybe it is not good, we can do it for ourself as tool to automate, right ?
There so much ai can offer, the difficult thing is finding what's best and practical at this stage of development, and what can help PB grow, both in capability and as a community. Unfortunately my crystal ball is a bit foggy but there are some obvious areas of code generation, aiding development, ensuring quality, project management, document generation etc. Even the simple act of documenting you own work, keeping copies of all your steps is incredibly useful if you are one of he folks who are bad at documentation like I am.
User avatar
skywalk
Addict
Addict
Posts: 4218
Joined: Wed Dec 23, 2009 10:14 pm
Location: Boston, MA

Re: Review Purebasic by a programmer

Post by skywalk »

Hard to disagree with Luis. He is and was an excellent forum tutor when I started using Purebasic. While his opinion and forum presence has changed somewhat over the years since I last visited his page, he speaks from a vested user experience. Much more relevant than fly by web reviewers and their "first looks".

My apps require speed, accuracy, database read and writes, simple threaded guis, and canvas reporting pages.

I do not rely on modules since I found them cumbersome and limiting. It is far simpler in my mind to create a mock namespace with "mylibnamehere_" prefixing. I suffer no interrupts in technical debt when combining libs this way.

Near OOP is sufficient for me with prototypes in structures or if I must, Interfaces. Even then, I rarely use OOP.

I agree the many included libs offer basic exposure, and often require custom prototyping to deliver necessary functions. But, this is supported well within PB.

I often review the alternative software development landscape and I still find Purebasic to be the quickest to deliver working apps. Python is too slow without Cython and I prefer strongly typed languages.
C still requires so much customization to improve the dev experience.
C++ has the built-in missing C libs, but it is too heavy for my needs.
Typescript is a better JavaScript, but not fast. Certainly better for web dev.

My nirvana would have Purebasic do multipass compiling to eliminate unused variables, procedures, and hard to find uninitialized objects.
The speed hit with the C back end is so minor to me I rarely use the ASM option.

I hope to see more great stuff from Fred and team. It truly is a RAD tool that sometimes has too many features making it more rAD than RAD.
The nice thing about standards is there are so many to choose from. ~ Andrew Tanenbaum
AZJIO
Addict
Addict
Posts: 2191
Joined: Sun May 14, 2017 1:48 am

Re: Review Purebasic by a programmer

Post by AZJIO »

skywalk wrote: Sat Mar 15, 2025 4:25 pm My nirvana would have Purebasic do multipass compiling to eliminate unused variables, procedures, and hard to find uninitialized objects.
I have a suspicion that if C-Backend removes unused functions, it probably removes unused variables.
tj1010
Enthusiast
Enthusiast
Posts: 716
Joined: Mon Feb 25, 2013 5:51 pm

Re: Review Purebasic by a programmer

Post by tj1010 »

Where can I see their C or C++ work?
threedslider
Enthusiast
Enthusiast
Posts: 397
Joined: Sat Feb 12, 2022 7:15 pm

Re: Review Purebasic by a programmer

Post by threedslider »

tj1010 wrote: Sun Mar 16, 2025 1:12 pm Where can I see their C or C++ work?
Maybe in Github if you mean that :shock:
tj1010
Enthusiast
Enthusiast
Posts: 716
Joined: Mon Feb 25, 2013 5:51 pm

Re: Review Purebasic by a programmer

Post by tj1010 »

threedslider wrote: Sun Mar 16, 2025 3:45 pm
tj1010 wrote: Sun Mar 16, 2025 1:12 pm Where can I see their C or C++ work?
Maybe in Github if you mean that :shock:

The only github link is the one to PB on the free shell page.. Are you shocked I didn't follow links that never existed? Was I suppose to copy it from an AI prompt along with full working code for a AAA game and the solution to poincaré conjecture(don't suggest the two-latter aren't possible on these forums for the love of god)? :lol:

In fact here is every a.href on the page I'll wait for you to show me which one is their github account..

Code: Select all

VM56:2 http://www.purebasic.com/
VM56:2 http://en.wikipedia.org/wiki/BASIC_programming_language
VM56:2 http://www.purebasic.com/documentation/reference/osspecific.html
VM56:2 http://www.purebasic.com/documentation/system/cocoamessage.html
VM56:2 https://github.com/fantaisie-software/purebasic
VM56:2 http://www.purebasic.com/documentation/gadget/index.html
VM56:2 https://www.purebasic.com/documentation/engine3d/index.html
VM56:2 http://flatassembler.net/
VM56:2 https://gcc.gnu.org/
VM56:2 https://www.purebasic.fr/blog/?p=502
VM56:2 http://www.purebasic.fr/english/viewtopic.php?f=5&t=58252
VM56:2 http://en.wikipedia.org/wiki/One-pass_compiler
VM56:2 http://en.wikipedia.org/wiki/Scintilla_%28editing_component%29
VM56:2 https://www.purebasic.com/documentation/reference/ide_debugger.html
VM56:2 https://en.wikipedia.org/wiki/Memory_debugger
VM56:2 http://www.purebasic.fr/blog/?p=237
VM56:2 https://www.purebasic.fr/english/viewtopic.php?p=598147#p598147
VM56:2 https://www.purebasic.com/documentation/reference/ide_files.html
VM56:2 http://www.purebasic.com/documentation/gadget/canvasgadget.html
VM56:2 https://www.purebasic.com/documentation/2ddrawing/index.html
VM56:2 https://en.wikipedia.org/wiki/Cross_compiler
VM56:2 http://www.purebasic.com/documentation/reference/macros.html
VM56:2 https://www.purebasic.com/documentation/index.html
VM56:2 http://www.purebasic.com/documentation/linkedlist/index.html
VM56:2 http://www.purebasic.com/documentation/map/index.html
VM56:2 http://www.purebasic.com/documentation/reference/module.html
VM56:2 http://www.purebasic.fr/english/viewtopic.php?p=416292#p416292
VM56:2 http://www.purebasic.com/documentation/
VM56:2 https://www.purebasic.fr/english/viewtopic.php?p=594087#p594087
VM56:2 https://www.purebasic.fr/english/viewtopic.php?p=245779#p245779
VM56:2 http://www.purebasic.fr/english/viewtopic.php?f=3&t=48234
VM56:2 http://www.purebasic.fr/english/viewtopic.php?p=300303#p300303
VM56:2 http://www.purebasic.fr/english/viewtopic.php?f=3&t=56680
VM56:2 https://www.purebasic.fr/english/viewtopic.php?f=3&t=35703
VM56:2 http://www.purebasic.com/documentation/window/windowevent.html
VM56:2 http://www.purebasic.com/documentation/window/eventtype.html
VM56:2 http://www.purebasic.fr/english/viewtopic.php?p=296495#p296495
VM56:2 http://www.purearea.net/pb/english/interview_fred_2012.htm
VM56:2 http://www.purebasic.fr/english/viewtopic.php?f=3&t=55335
VM56:2 http://en.wikipedia.org/wiki/Generic_programming
VM56:2 http://www.purebasic.fr/english/viewtopic.php?f=3&t=65686
VM56:2 http://www.purebasic.fr/english/viewtopic.php?f=14&t=60214
VM56:2 http://www.purebasic.fr/english/viewtopic.php?p=489153#p489153
VM56:2 http://www.purebasic.fr/english/viewtopic.php?f=14&t=60171
VM56:2 http://www.purebasic.fr/english/viewtopic.php?p=450129#p450129
VM56:2 http://www.purebasic.fr/english/viewtopic.php?p=450234#p450234
VM56:2 http://www.purebasic.fr/english/viewtopic.php?p=450367#p450367
VM56:2 http://www.purebasic.fr/english/viewtopic.php?p=451636#p451636
VM56:2 http://en.wikipedia.org/wiki/Namespace
VM56:2 http://www.purebasic.fr/english/viewtopic.php?f=3&t=64991
VM56:2 http://www.purebasic.com/documentation/reference/module.html
VM56:2 http://www.purebasic.com/documentation/reference/residents.html
VM56:2 https://www.purebasic.fr/english/viewtopic.php?p=504720#p504720
VM56:2 http://www.purebasic.fr/english/viewforum.php?f=22
VM56:2 http://www.purebasic.com/documentation/reference/ide_form.html
VM56:2 https://www.purebasic.fr/english/viewforum.php?f=30
VM56:2 https://www.spiderbasic.com/
VM56:2 http://www.purebasic.com/
VM56:2 http://www.purebasic.fr/english/index.php
VM56:2 http://www.purebasic.fr/blog/
VM56:2 http://www.purearea.net/pb/english/interview.htm
VM56:2 http://www.purearea.net/pb/english/indexitvw3.htm
VM56:2 http://www.purearea.net/pb/english/interview_fred_2012.htm
VM56:2 http://purearea.net/
VM56:2 http://purearea.net/pb/CodeArchiv/CodeArchiv.html
VM56:2 http://www.ninelizards.com/purebasic/
I'm sorry I have a habit of asking for portfolios when I meet people who are so good with optimization and compiler design. You should see me when someone says "nothing is better than assembly"! I'm just a fan, and maybe a little nostalgic for all the other times I've seen this over half a century and it never not played out like this is going to..
User avatar
idle
Always Here
Always Here
Posts: 5899
Joined: Fri Sep 21, 2007 5:52 am
Location: New Zealand

Re: Review Purebasic by a programmer

Post by idle »

Umm just ask Luis he's still around.
threedslider
Enthusiast
Enthusiast
Posts: 397
Joined: Sat Feb 12, 2022 7:15 pm

Re: Review Purebasic by a programmer

Post by threedslider »

@tj1010 : Are you looking this : https://github.com/search?q=tutorial+la ... &l=C%2B%2B then you will learn a lot from all it :shock:
Post Reply