Monkey kicks arse!

Monkey Archive Forums/Monkey Discussion/Monkey kicks arse!

GfK(Posted 2011) [#1]
...which is a good thing!

OK it might be missing one or two "nice to have's" (virtual keyboard support*, render to texture, proper file-handling etc) but its really cool to use and with the exception of the virtual keyboard problem, I've so far managed to get around everything else.

I've only been using Monkey for about three weeks, and already my Blitzmax game is about 50% converted to Monkey and its running surprisingly well even in HTML5. The game represents almost 20,000 lines of code and I was fearing a complete rewrite but it just hasn't been necessary.

My biggest gripe with Monkey is the IDE. Monkey is case-sensitive, and while Monk might do the job, it makes little effort to help with capitalization on anything that lies beyond the Monkey module. Fortunately JungleIDE makes up for it. Before I'd used Monkey I didn't realise how sloppy I was with camelcase and pascalcase but its come back to bite me in the arse now that I've had to go through and correct it all. It would've been a nightmare to have to do all that in Monk.

I don't find Monkey *that* different to Blitzmax, which only helps to make code conversion easier. Once I'd worked out the many subtle differences, porting code from one to the other became pretty easy.

9/10 from me! There's a point off for the IDE which feels very "raw", and I'd really like to see its featureset improve in the future with essentials such as keyboard support*. The ever-growing codebase is encouraging.

* = added in v45 \o/

slenkar(Posted 2011) [#2]
aye its the best thingy out there alright

matty(Posted 2011) [#3]
Yes...I love it too! (and am working on a game that our staff at work really love playing which is good...a lot more depth to this one than anything I've written before)...

Having not used blitzmax, but used blitz3d and blitzplus - this OOP thing is so much nicer than procedural code...not exactly new for the rest of you but it is for me....

therevills(Posted 2011) [#4]
I do like the language... its a lot better now than at release :)

What I would like to see is a native Monkey target, which compiles and runs Monkey code without translating it into another target - this would allow a proper debugger and could even supersede BlitzMax.

matty(Posted 2011) [#5]
Interesting thought therevills but how would it handle target specific code?

therevills(Posted 2011) [#6]
how would it handle target specific code?

It wouldn't ;) It would need its own Extern stuff like BlitzMax.

matty(Posted 2011) [#7]
Okay...I've not used blitzmax so I'm not sure how it does this in its own way.

Playniax(Posted 2011) [#8]
I agree with therevills. a native Monkey target could supersede BlitzMax. But I think Mark has to be careful not te get offtrack and forget his goals for Monkey.

ziggy(Posted 2011) [#9]
Maybe a fast Monkey interpreter would do the thing, but given how flexible Monkey is, a fast interpreter would be very hard to get going (not to talk about a native compiler). Also, going native on a language like monkey fells somehow wrong...

slenkar(Posted 2011) [#10]
A native monkey target would take a long time to make and wouldnt offer anything much over the GLFW target

therevills(Posted 2011) [#11]
But I think Mark has to be careful not te get offtrack and forget his goals for Monkey.

True, its out of scope for Monkey but it would be cool... I can dream ;)

wouldnt offer anything much over the GLFW target

What about dlls, a proper debugger, Direct X and OpenGL drivers, control over the actual system without the constraints of another target, fast compile time (BlitzMax compiles really quick!) etc

slenkar(Posted 2011) [#12]
What about dlls, a proper debugger, Direct X and OpenGL drivers, control over the actual system without the constraints of another target, fast compile time (BlitzMax compiles really quick!) etc

but then it would be Blitzmax..

unless you really miss generics and interfaces in blitzmax?

therevills(Posted 2011) [#13]
I prefer the syntax of Monkey now over BlitzMax, also it means you code your project in Monkey(Max) and it will also work in the existing targets (Flash, Android, iOS etc).

Dabz(Posted 2011) [#14]
I like monkey too, but when I first played with it, it did seem a bit, well, short... For me though, therevills and Samah have made a fantastic job on their Diddy framework, and because of that, it has fast-tracked the language to something which I would happily work with.

Obviously I've singled them two out, because Diddy is the only third-party monkey thing I tend to keep an eye out for, but I'm sure others have ploughed loads in too, which is hats off to them as well!

Alls good! :)


Skn3(Posted 2011) [#15]
Monkey is totally awesome! Been using it for over a year and enjoyed every minute! I think the only place it is lacking is the framework for extending the language and associated things like not compiling code that hasn't changed. It would also be interesting to know what the roadmap is for monkey...

slenkar(Posted 2011) [#16]
yeh any chance of a blog post mark?

QuickSilva(Posted 2011) [#17]
Mark used to have a really nice blog going when he was developing Blitz3D. I would love for the same to be true for Monkey. I always used to enjoy hearing what Mark was up to and he seemed so enthusiastic about it at the time.

I`m sure that he is just as positive now but we rarely get to hear his thoughts which is a shame as he is obviously a very talented guy.


therevills(Posted 2011) [#18]
Mark does have a blog, but rarely "blogs" in it ;)

QuickSilva(Posted 2011) [#19]

Check out how frequently his old worklog was updated,

I miss those days as they were always a good read.