What do you like about BlitzMax?

Miscellaneous Forums/General Discussion/What do you like about BlitzMax?

-Support for all variable types.
-Compiles DLLs.
-Import precompiled BMX code or C code.
-Interfaces with C++ libraries.
-Very good OOP design. If you get into a big project you will really start to appreciate the way it is set up.
-MaxGUI is awesome. I can make a quick little GUI app in no time at all, whereas a lot of C++ apps that should use a Windows interface don't because it would take to long to set up. I can run a 3D app with a standard Windows interface with no problem, whereas this is almost unheard of outside BlitzMax.
-Approximately 30% the code volume of C++, with the exact same results = <30% the development time of C++ = fewer bugs, easier changes, easier feature addition. (Compare MaxGUI.win32maxgui and MaxGUI.win32maxguiex.)

- Superstrict to eliminate spelling errors.
- A very elegant system of handling pointers and passing by reference.
- Inbuilt support for lists and modules a big advantage over previous Blitz incarnations.
- Easy to use Lua module allows you to write as much or as little code as you want in Lua.
- Huge code base already. Everything from commercial-grade 3D engines, audio engines, XML, scripting libraries, and the huge and awesome WXWidgets.
- Blide is so good it's worth using BlitzMax just to use it.
- Modules. Seriously how good are modules? Ten times as elegant as a class library, in my opinion, and they still have their own namespaces.

Compiles DLLs - how's that done?

Compiles DLLs - how's that done?


http://www.blitzbasic.com/Community/posts.php?topic=50045&hl=dll

OOP, Fast, easy 2d (in 3D), Source code, Modules, Methods, Multiple lists, TMAPs, tutorials on this site (at least some of them), DX and OGL drivers, MaxGUI/LogicGUI and much more

- Small apps thanks to Frameworking. Only import what you need
- Logical commands/functions which are easy to remember
- OOP is indeed a great feature
- The use of . rather than \ which makes code more readable for me
- Garbage collection
- Quick compiling. Previously compiled code does not need re-compiling

I'm easy to please :)

-It's easy to make a game with.
-It's got a great speedy 2D engine BUT *feature request* would love to be able to rotate sprites/images on all axis.

i like lists and modules,
cross-platform
nice 2d image commands rotation-alpha blending

- 2D-in-3D for real-time alphablending, scaling, rotations
- Easy to add 3rd party custom modules
- Framework -> compile only the libraries you need for smaller exe's

Fast multi-operating system system is the most important part...

- OS X support and the fact that it creates real Cocoa apps
- Nice and easy OO-model with GC
- A programming language that is very natural to me
- A great community

- The code is simple, sparse and visually pleasing.
- I can look under the bonnet to find out what is going on.
- Brucey's modules

and I'll second Winni on the great community point.

It makes a lots of the hard/fiddly/complex stuff easy, without stopping you getting your hands dirty should you want/need to. :)

It keeps the B3D gurus around these forums such that they might hear the cries of those of us who are yet to master the old girl.

Otherwise they'd likely be lost to elsewhere.

Thanks for sticking around, peeps. :o)

+) Name, low price, generous old skool licence, module sources, weird community, crossplatform support, easy coding, nice syntax, object orientation, hw accelerated 2d, beeing able to produce small files, performance, it's simply fun to use.

-) List handling, documentation, that i can't write 5. instead of 5.0, lack of 2d pyhsics, lack of 3d/physics engine, no threading support, communication skills from BRL, lame ide & debugger, it would be nice beeing able to compile from one to all the other platforms, lack of updates lately, project management, support for the iPhone/iPOD touch.

it (BMax) enabled me to make my educational application when I got a bit too ambitious with B3d.. The way computer specs keep increasing my B3D app might see the light of day yet.

It made me love Blitz3D - thank you BRL.

On a hill, a small boy clutches his Blitz3D, turns and walks into the cold, dark night - stooped and hunched, his shoulders crushed by the weight of his loss - what does tomorrow bring him? What future has he - this lost lamb of Blitz?


IDE that remembers the projects you have open

Pretty much everything.

I like that I can work quickly in it without troubling myself with strings, some aspects of memory management (in complex projects where memory use is much more important, it can be difficult to sometimes work with the garbage collector, but it's usually fine), and that a great deal of code is provided for you (streams, array/string manipulation as mentioned, filesystem functions [they could use work], etc.) so you don't have to do it yourself.

Most of the work I do with BMax, however, is very small and tends to be CLI utilities to accomplish larger tasks (code generation, documentation, file cleanup, etc.- things you just don't want to do by hand). I've written a lot of different things in it, however, and considering there have only been a handful of instances I've had to stop using BMax, I'd say it's one of my favorite languages to work in.

How's that for a testimonial?

The language! :)

- Works on Linux.
- Garbage collection.
- Compiled language.

-Fixes a few of my gripes from the original blitz's.
-Works good for prototyping and testing things. I can fire up the default ide real quick, and have easy access to a gl context, and any necessary input. Just type in a few lines, and I'm off and away.

- Works on Linux !

Good cross-platform capabilities - write once, run everywhere :-)
Source available - makes for easy customization/fiddling/improving.
Ease of integrating 3rd-party libraries !

I feel like I'm doing small chunks of procedural code when im using Bmax; when each type has it's own internal variables, functions and methods. For each little bit, it feels just like the old days. But I still get to code in a fairly modular way.

Other languages may behave the same way, but it's hard to motivate myself to learn one when I know I haven't scratched the surface of what I could do with Bmax.

I also didn't find it hard. The lack of global lists of types but the presence of a general list type seemed like a natural progression to me.