4 ms·
Has anyone used this or PureBasic?
by 7thaccount 6y ago
Has anyone used this or PureBasic?
- 13415 6y agoI've owned PureBasic for many years and sometimes use it for personal tools. Lack of object-oriented features make it a bit old-fashioned and not a good replacement for Realbasic (which I really found useful when it was still affordable). However, the biggest drawback that holds this Basic dialect consistently back is that the cross-platform functionality is always only 85% there. It's cross platform, just not enough cross-platform. There are hacks to get functionality on Windows that won't work on Mac and Linux, and vice versa, and some essential functionality has never been implemented. Most importantly, a working cross-platform rich text editor widget with image support is missing. Other smaller things are also missing or not fully featured enough. All of the missing cross-platform functionality could have been implemented years ago, but the very nice main developer seems to have other priorities. There are just too many hacks and tricks that only work on Windows. It's fine for small tools and quick hacks, though, and has a lot of supporting libraries. Among the existing cross-platform Basic dialects, it's probably the most complete.
- 7thaccount 6y agoHow is it so fast and with tiny executables. My assumption is that even though this is BASIC, there is no REPL/SHELL like you would get with BASIC on a C64 right?
- 13415 6y agoSorry, late reply - I'm only in this account once a day. Purebasic compiles to assembly code in flat assembler format using yasm.[1] Some of its support libraries were even directly written in assembler. That accounts for speed and compact executables. Unfortunately, it also prevents retargeting and sophisticated compiler optimizations. [1] http://yasm.tortall.net/ http://yasm.tortall.net/
- JohnDeHope 6y agoI taught computer programming in a high school for a year. We used pure basic in the class, mainly for it's great support for making games easy. This was all on desktop PCs and pure basic "just worked". I never had a compiler or other technical problem. The kids loved making sprite based 2d games with it. The debugging utilities were more than sufficient. Thanks to the pure basic team for the couple dozen students they helped to educate!
- bartread 6y agoI don't know much about the company - I've never come across either PureBasic or SpiderBasic before - but they remind me very much of tools like Blitz BASIC and AMOS on the Amiga, or STOS on the Atari ST back in the early 90s. All of these are dialects of BASIC very much geared towards games and multimedia. Don't think any of the same people are involved but the similarities are striking, and I'm somewhat heartened to see there's still a market for these kinds of programming environments. They're certainly great for teaching and getting kids interested in computing because of the almost instant results you can achieve.
- the_af 6y agoI'm talking without any knowledge here, pedagogical or otherwise, but how difficult would it be to teach kids to make simple sprite based 2D games using a set of free, open source tools? For example, say Python and some wrapper over SDL? (Or something like Squeak smalltalk; I'm not hung up on Python, just on free & open source).
- 7thaccount 6y agoI've played around in Pharo which should be similar to Squeak and would not recommend for kids. Scratch or Python should work. Smalltalk's complete focus on objects will likely confuse kids. I find the object inspector and the class browser and the whole class heirarchy thing is only useful after you know all the basics. I'm also a big fan of open source, but it sounds like the license cost here was negligible and the important part is that the kids learn the concepts. They can always take that knowledge home and program in whatever tools they want.
- sivizius 6y agoLong time ago, I used PureBasic. It was easy to write simple GUI-applications with a bit of network stuff. But some day I had an issue and had to look at the assembly-output (it uses flat assembler as the backend) and saw something like `push eax` immediately `pop eax` and somehow I started to write stuff in fasm before I finally settled with rust. Yet I miss the simplicity of writing GUI-applications with pb in Rust.