SyntaxBomb - Indie Coders

Languages & Coding => BlitzMax / BlitzMax NG => Topic started by: Xaron on September 14, 2017, 20:11:23

Title: What do you like about BlitzMax
Post by: Xaron on September 14, 2017, 20:11:23
Hey there,

out of curiosity, what do you like about BlitzMax most? What do you "hate"?
What makes it superior over BB3D for instance (let the outdated DX7 stuff aside for now).

So, is it that cross platform feature? Or are there any language features you like? Do you need OOP or not?

Thanks!
Title: Re: What do you like about BlitzMax
Post by: Steve Elliott on September 14, 2017, 20:29:16
Cross platform on Windows, mac and Linux were great positives...Until Linux support fell away.

The downside for me was it seemed more biased towards BASIC, than C++.  So it was neither a BASIC or a modern OOP Language (so fell between two stools) and lost sight of the goal - an easy to use (modern) game language.

OOP, but not every single feature - because that over-complicates design choices.
Title: Re: What do you like about BlitzMax
Post by: Henri on September 14, 2017, 20:46:17
Why, it's like the old Chinese saying;

* It don't mean jax, if it ain't got the max  :D

-Henri
Title: Re: What do you like about BlitzMax
Post by: sphinx on September 14, 2017, 21:56:49
Cross platform
Extensible 
Title: Re: What do you like about BlitzMax
Post by: IanMartin on September 14, 2017, 23:43:22
"what do you like about BlitzMax most?"
It's super fast.  I think it was the best solution for 2D Windows desktop games.
IncBin.  Almost anyone who you can buy assets from, like art or sound, wants them included in the binary, not loaded at runtime and exposed in your folders for anyone to access.
You can add things like mods, call C code, use Windows system functions.

What do you "hate"?
Some bugs were never fixed, some features never added.
'Real world features': Features that are necessary for shipping a game in Current Year.  I.E.: Steam integration which had to be shoehorned in.  Steam features were never added to the language's built-in Functions.  Built-in controller support does not work correctly with the PC standard Xbox 360 controller, etc. 
Does not export to web out of the box.
Does not export to Android out of the box.
The developer has made it pretty clear he wants to work on what he wants to work on, not necessarily what people shipping games with the product want or need.
The website was taken down without so much as an email to let me know it was being taken down.  I can no longer download all of my files (BlitzPlus, Blitz3D, BlitzMax, Monkey-X) that I previously bought from any computer in the world through the website.  Yes, I bought them all. 
BlitzMax was given away free.
No interest has been shown in added BlitzMax to Steam, despite it being Greenlit.
Little to no interest shown in marketing Blitz languages.  Despite how good BlitzMax was, almost no other devs even know it exists (Source: I started and ran a PC Game Developers group on Facebook).
You can't export to Mac from the Windows compiler.  I think you need Linux to export Linux too?

"What makes it superior over BB3D for instance (let the outdated DX7 stuff aside for now)."
Easy scaling and rotation with pixel perfect collision detection. 
IncBin (I think, I'm not sure it was in B3D?)

"So, is it that cross platform feature?"
By cross platform do you mean Win/Mac/Linux?  I usually think of cross platform as being web and mobile too.

"Or are there any language features you like?"
Scaling, rotation, incbin, collision detection.  These are some of the things that are/were missing in Monkey.

"Do you need OOP or not?"
No.  And I very much do not like the OOP direction taken by Monkey and now Monkey2.  I like BASIC's procedural approach.  You can all get pitchforks and torches now if you like.  If I wanted OOP, I would have stuck with C++ (what I made my first PC game with).  If Atari BASIC would compile to IBM compatible machine language, I'd use that ;)
Title: Re: What do you like about BlitzMax
Post by: Xaron on September 15, 2017, 08:18:05
Thanks guys for your input! :)

Title: Re: What do you like about BlitzMax
Post by: degac on September 15, 2017, 08:34:19
Rapid Development

Download and install it, just open IDE, write code, press F5 and you have the results. In few seconds.
You don't need (unless you want to change the source code and compile new modules) to install anything else.
Again, Linux (a wild beast) has more problem (64bit support, many distro etc) - but nothing impossible to resolve.
You can choose what modules Import to get a small final .exe (maybe not so important today, but I'm still thinking that we need some 'ecologic' use of the web - so don't waste band or HD space :D)
You can write 'console' application - just a flag.

Modular design

try to make an application that reads thounsand of .txt file and transform them in PDF (cairo), then upload the results to a website (libcurl), update the database and then send an advice via email (some of work in PHP).
I still haven't found another 'modern' language (from Mark/BRL or doesn't require to rewrite everything!) that allow to make this. And I need for work...

Multitarget

At the time (10 and more years ago) supporting 3 different OS (Windows, Apple and Linux) was the top. Mobile support was very at early stage, with too many strange OS (Symbian, Blackberry ecc). So I don't think that it was (or is) a limit!
Honestly there are better and more designed solution just ONLY for mobile. And Monkey-X shown the limit of the approach of a too wide multi target support (headache to make thing working on everything, low spec feature to be fully complaint with every target and so on)

OS integrated

you can write application that integrates with the OS. MaxGUI sure is not the best solution (it stills have many limits and no grid support for example!) but again, you can improve (via proxygadgets) and write very small application with standard gadgets (compared di WX application the resulting .exe is very very compact!). Again on Linux FLTK support is out-of-time, but there are also alternatives. And HTMLgadget is very limited (for example not all the platforms supports JavaScript, and things - on that side - are gonna ahead! HTML5/CSS/DOM etc

OS support

I'm using it since Windows98 and it still works without problems. The only problems I know is accessing to some 'public/user' folder and permission-rights, but again this is due to changes in the OS (mainly Windows).
At the moment I'm using Windows 10 (64 bit) and I can compile and run everything.

Language

it is NOT keysensitive (believe me, it's important when you need to type faster and make prototype!)
It has reflection!
it has OOP support, not full but the 'useful' things are in.
Someone could critics that lacks of GENERICS (not really, you could use Object keyword with attention and fill your code of IF..THEN :D), and - of course - overloading: personally this kind of feature complicates reading a code, but this is something subjective.

--

I still think BlitzMax is the best product of BRL/Mark: very 'generic' (not targeted on games as Blitz3d for example) and without limit (just look at the modules available...)

And if someone would consider to port to mobile target (or web) should consider BMX-NG.
Or just move to MonkeyX (CerberusX) or Monkey2

We could speak for years about the marketing skills of Mark and his strategic decision, but the things don't change at all.
Title: Re: What do you like about BlitzMax
Post by: col on September 15, 2017, 13:49:33
I like the 'limited' OOP, the module system, the 'easy' interop between 'Max and C, and that you can open the editor type and compile. No need to set up project folders and build systems ( aside from installing gcc ).

Missing features for me are 64bit, stack variables for all types, private and public accessible type members. Better optimisation and assembly output - all fulfilled by Bruceys NG version of BlitzMax.

All that other stuff... overloading, generics et al are syntactic candy that expands to what you would have typed anyway so I'm not so bothered for them - although they are nice  ;)
Writing for mobile hasn't interested me just yet.
Title: Re: What do you like about BlitzMax
Post by: MikeHart on September 15, 2017, 13:59:00
Quote from: col on September 15, 2017, 13:49:33
... and assembly output - all fulfilled by Bruceys NG version of BlitzMax.
And here I sit and thought that BMAX NG was translating to C++.
Title: Re: What do you like about BlitzMax
Post by: col on September 15, 2017, 14:20:21
.
Title: Re: What do you like about BlitzMax
Post by: Xaron on September 15, 2017, 14:29:14
I think translating to assembler would be an overwhelming task. Every C compiler nowadays produces better optimized output than pure assembler coders usually do. Plus you have so many different processor types (beside the Intel ones there is additionally ARM as well) that this would be a lifetime job alone.

So actually translating to C/C++ and building that using a compiler like gcc is the way to go even though it means compile times go up a bit.

Alternatively you could create an interpreter for quick prototyping and almost no compile times and compile the results for release builds. ;)
Title: Re: What do you like about BlitzMax
Post by: col on September 15, 2017, 15:10:00
I agree that the latest compilers do an absolute sterling job in generating optimised assembly, but you can't beat hand written assembler if it's written by an expert. Saying that... because modern compilers do such an excellent job ( regardless or being able to write better assembly ) then there's no real need to write assembly for desktop apps, except maybe for some edge cases where a language don't support a feature, but even then each compiler has its own specific keywords and flags to take care of the majority of those edge cases.

QuoteAlternatively you could create an interpreter for quick prototyping and almost no compile times and compile the results for release builds. ;)
Are you in progress of doing that?  :)

EDIT:
I just saw your other post, and the answer I would guess is 'Yes'  :P
Title: Re: What do you like about BlitzMax
Post by: MikeHart on September 15, 2017, 15:27:19
Yes. He/we are in progress of creating something.
Title: Re: What do you like about BlitzMax
Post by: col on September 15, 2017, 15:42:20
Ok, it's a secret or care to share? or too early and shouldn't have said anything just yet?  :P
I know for sure there are some folk here that still haven't managed to settle comfortably on a language/package just yet.
Title: Re: What do you like about BlitzMax
Post by: Xaron on September 15, 2017, 15:49:27
It's too early to show something but we work on something like BB3D (syntax like) plus cross platform (Windows/Mac, HTML5 via Emscripten, Android, iOS).
Title: Re: What do you like about BlitzMax
Post by: col on September 15, 2017, 15:51:27
Ooohhh, sounds great  :) No Linux?
I'll be sure to be keep an eye open for what arrives :)
Title: Re: What do you like about BlitzMax
Post by: Xaron on September 16, 2017, 09:38:00
Well ya... Linux is kind of a double edged thing for me. I mean it would work technically the way we're doing it, it's just the question how many users out there would actually need it?
Title: Re: What do you like about BlitzMax
Post by: dawlane on September 16, 2017, 10:16:27
Quoteit's just the question how many users out there would actually need it?
I would for one. Most people don't realize that Linux is better suited for cross platform than either Windows or OSX. All you have to do is see the MonkeyX and now Cerberus post for those that had issues every time with either of those operating systems for installation. I would say that the only real reason that developers still ignore Linux is that it's not dominant on desktops. Mark made that mistake twice first with BlitzMax and the failure to maintain Linux, and with Monkey adding Linux support as an after thought when some of us started rolling our own. With Monkey2 it's been there from the start and I know one or two in the forums there that use Linux as development system as they got sick of all the hassle with Windows 10 and OS X.
Title: Re: What do you like about BlitzMax
Post by: Derron on September 16, 2017, 10:58:23
Only executing Windows in the VM for Solidworks, Photoshop and my tax software. All other things I use are executed either via wine (Warcraft 3 :-)) or are native applications for linux.




Post "troublesome" bug reports I get is from Linux-users. They have problems with pulseaudio not being installed - or vice versa have trouble with the alsa-variant. Also odd crashes there most often reported by linuxers - but at least with more verbose information than by windows users. Windows users most often already stumble over things like extracting a patch into a subdirectory of the game compared to the main directory - or they ignore "directories" at all. I wont be too harsh to them, but you see that they are less tech savvy.


Benefit of Linux users is also, they are "used to" have a bit alienated looking software (eg. FLTK GUIs ;-)) - just check the GUI-installer of the nvidia/amd-drivers (looks like motif/fltk too).


What I want to say with that: supporting Linux is important for at least me, an advantage for you (devs/users are often more tech savvy) but also a disadvantage for the language developer if not firm with Linux (the new environment - and of course the variety of distributions with their own ecology). Also I assume that you will find more people using Windows and "bleeding edge" hardware (but of course also the old office-computers) - dunno if this is an advantage of Windows.






PS: I like compilation times the most and afterwards the simple syntax.
[size=78%] [/size]


bye
Ron
Title: Re: What do you like about BlitzMax
Post by: Rooster on September 17, 2017, 01:33:31
Quote from: Xaron on September 16, 2017, 09:38:00
it's just the question how many users out there would actually need it?
I think a better question is how many would want it.
There are people who would use Linux if there was more software/games for it.
Title: Re: What do you like about BlitzMax
Post by: Hardcoal on September 22, 2017, 17:12:30
is blitzmax dying.. ? i see almost no new posts ..
what is the closest thing to blitzmax?
IS javamonkey worthy?
Title: Re: What do you like about BlitzMax
Post by: Steve Elliott on September 22, 2017, 17:16:53
Blitz max was abandoned by Mark - it's currently open source.  Brucey is currently producing his own version of it.

The closest thing being monkey 2...By the same guy that abandoned Blitz max   ::)
Title: Re: What do you like about BlitzMax
Post by: Hardcoal on September 22, 2017, 17:40:48
Ok... But do people are abandoning blitzmax?
I sure hope brucey will make a dedicated website which im willing to pay my share to hold it alive.
If mark asked us to support blitzmax.com instead of silly donate im sure people would too..
Title: Re: What do you like about BlitzMax
Post by: Steve Elliott on September 22, 2017, 17:54:14
If people like Blitz max, they use Brucie's version Blitz max NG.

Last I heard it supports 64-bit and can even run on a Raspberry pi.

Mark is no longer interested in Blitz max, or indeed money (he never was).  He does what interests him, so throwing money at him doesn't work...The original version of Blitz max is dead.
Title: Re: What do you like about BlitzMax
Post by: sphinx on September 22, 2017, 18:14:20
I think (call me crazy!) Monkey 2 days are numbered too!
So do not waste your time and effort in it :(
Title: Re: What do you like about BlitzMax
Post by: Hardcoal on September 23, 2017, 02:57:58
is blitzmax ng have 100% compatibility with blitzmax..?
I mean can i replace my blitzmax with blitzmax ng?

and besides having support for 64 bits.. what other major advantages does it have?

Title: Re: What do you like about BlitzMax
Post by: sphinx on September 23, 2017, 08:38:32
Quote from: Hardcoal on September 23, 2017, 02:57:58
is blitzmax ng have 100% compatibility with blitzmax..?
I mean can i replace my blitzmax with blitzmax ng?

and besides having support for 64 bits.. what other major advantages does it have?
If you use 'SuperStrict' in your projects then I think no problem at all of replacing your Vanilla edition or you will have to review your code and declare every and each variable you use!
Theoretically, NG should build for iOS, Android, HTML5 and RaspberryPi.
My tries weren't successful due to lack of experience with the SDK/NDK of these systems, so I still use BRL edition just to port for Mac OSX and Linux.
Title: Re: What do you like about BlitzMax
Post by: degac on September 23, 2017, 12:52:10
BlitzMax is still used as it's working. So if you are interested in desktop target (Windows, MacOS and Linux) you are ok.
While if your interest is in mobile or web BMX-NG is a possible solution as it grants (with limits due to different interfaces - as touch) to port/compile your code. Of course a desktop application that uses OS-gadget (via MaxGUI) could not be ported.
Title: Re: What do you like about BlitzMax
Post by: Hardcoal on September 23, 2017, 16:59:39
im using xors3d on blitzmax would it work also with blitzmax ng and would it compile into android?
if so.. its worth moving
Title: Re: What do you like about BlitzMax
Post by: sphinx on September 23, 2017, 17:03:38
Quote from: Hardcoal on September 23, 2017, 16:59:39
im using xors3d on blitzmax would it work also with blitzmax ng and would it compile into android?
if so.. its worth moving
It will work with NG on desktop but not on Android AFAIK!
Title: Re: What do you like about BlitzMax
Post by: Hardcoal on September 23, 2017, 17:09:06
oh i see ok thanks
Title: Re: What do you like about BlitzMax
Post by: GreyAlien on September 25, 2017, 23:47:11
Love:
- I love the fact I can still use BlitzMax to make commercial 2D PC/Mac games (I don't really care about Linux, sorry)
- I started with BlitzPlus which was not OOP and so when I starting using BlitzMax it was a great relief to be able to use OOP.
- I love how easy it is to just get going drawing stuff in DirectX or OpenGL and how it does sound, file handling, input etc. and has a bunch of useful basic classes (Types). Though I've still written my own extensive framework on top of that.
- It's fast.
- Also it's good how you can modify the modules if need be, both the .bmx ones and even the C++ or Objective C ones if need be.
- The community has always been super-helpful.

Dislike:
- I wish it was still supported, though by all accounts Brucey is doing a fine job. I've tried out NG, but only briefly and it seems good. I'll probably get into it more after I've shipped my current game.
- The IDE is little more than an editor which is why I've been using BLIDE for years, which is better for larger multi-file projects.
- I wish there was more control over the lower level DirectX/OpenGL stuff without modifying the modules so I could do cool stuff.
- Obviously it would better better if it could work on other platforms too, but NG does that now.
Title: Re: What do you like about BlitzMax
Post by: Steve Elliott on September 26, 2017, 09:29:59
Quote
I'll probably get into it more after I've shipped my current game.

Put something in the gallery  ;D
Title: Re: What do you like about BlitzMax
Post by: MikeHart on September 26, 2017, 10:09:18
Quote from: Steve Elliott on September 26, 2017, 09:29:59
Quote
I'll probably get into it more after I've shipped my current game.

Put something in the gallery  ;D

Shadowhand is beautiful artwork, definitely! Glad to have you with us here Jake!
Title: Re: What do you like about BlitzMax
Post by: GreyAlien on September 26, 2017, 12:33:17
Thanks! OK will post something now.
Title: Re: What do you like about BlitzMax
Post by: ms62 on September 28, 2017, 14:00:21
Thanks for the question, it helped me think deep about myself. Good that the question is personal and is about only feeling ("you + like") not like: why you think BlitzMax is a good programming language.

I write small programs, all in Windows only. So, please consider that limitation, here is my input:

I like BlitzMax for the following reasons:

1 - It is easy to use.
2 - OOP is not mandatory with it.
3 - It has enough primitive data types.
4 - Provides enough for my user data types.
4 - It has worked 100% for me so far.
5 - Adding modules to it is easy, not as Blitz3D for end users, though.

I do not hate BlitzMax, but, I wish I could have:

1 - A modern set of 3D API, like improved Blitz3D.
2 - A good IDE like Netbeans or Visual Studio. 
3 - Modules for data science.

I generally consider BlitzMAX a dead product. But, I will use it as long as Windows kindly let me use it.

How about Monkey I and II?

Monkey I -  Very nice, but BlitzMax is enough for me.
Monkey 2 - I don't need all features of OOP.

Multi-platform things?

I generally don't care.

Will I support BlitzMax NG, the 64-bit version?
Definitely, but I am not optimistic. If I see versions after versions and modules after modules, I will financially help.