Is it safe to say...

Monkey Forums/Monkey Beginners/Is it safe to say...

En929(Posted 2014) [#1]
I’m new to the Monkey Programming language and I think it's brilliant that it can output code in the major platforms such as C++, Java, JavaScript, Flash, Consoles, and Lord knows how many other devices because of this. I’ve been programming games in Java, but I’m coming to the conclusion that I almost have no real reason to continue programming in Java if Monkey does all the above things and I am sort of considering abandoning Java programming and concentrate more time developing in this. This seems like a wave of the future and for all I know it IS the new Java, and since I’m a hobby game programmer anyway that likes making web games, and this monkey programming language does that and more, I don't see the use for other platforms now and top that with this language is sure to get better as time goes on for ANYTHING it would be needed for (is this correct)? So, do any of you think it’s safe to go ahead and abandon the other platform? That is, has anybody here done that?


AdamRedwoods(Posted 2014) [#2]
For game programming, Monkey is excellent. But I've actually started using Java + AvianVM + SWT for gui cross-dev development. quite impressive.


En929(Posted 2014) [#3]
AdamRedwoods, is that a particular program? BTW, I'm also wondering more about Java converter programs that could convert Java code into other languages with a click of a button.


Aman(Posted 2014) [#4]
Just keep in mind that no matter how good a cross platform tool get. It will never reach the efficiency of the native tools. You don't only gain advantages, you give up stuff too. It is up to the programmer to weigh the advantages/disadvantages and choose whether or not to make the move.

You could say Monkey to Java could be like Java to Assembly. Assembly will always be more efficient but the vast majority of developers do not think it's worth it. But some disagree.

I am not pushing you away from monkey. It is one of the best programming projects I ever encountered in my life. I am just asking to keep an open mind and be patient if you face any issues moving from native to cross platform.


AdamRedwoods(Posted 2014) [#5]
AdamRedwoods, is that a particular program?

AvianVM is a java virtual machine like Oracle's JVM.
with Avian, I can get a GUI program down to about 8MB, whereas Qt is about 30MB+, and wxWidgets is about 3-4MB (16MB with dlls). But BlitzMax GUI takes the cake with file sizes less than 1MB.

AvianVM can also do native compilation for iOS, but RoboVM is ahead in iOS java development.
https://github.com/ReadyTalk/avian
http://www.robovm.org/
What cool about Java is the fast compilation times, Monkey GLFW is slow.


Gerry Quinn(Posted 2014) [#6]
If your target is web-games with cross-platform options, Monkey seems hard to beat. It's hard to think of anything that makes this easier. Certainly Java is getting a bit overshadowed in this area anyway, so you might have to change from it at some stage anyway.

All languages are just tools for getting your ideas implemented. The more you know, the easier the next one will come. You can't actually abandon a platform, you know! Your Java skills will still be in your head if you need them again.


Wylaryzel(Posted 2014) [#7]
I agree with the others. It really depends what you want to achieve. If you want to create games which - who knows - get popular and you want to be able to easily deploy it on as many plattforms as monkey is a very good choice as it takes away the heavy lifting of getting to know the many different native languages.
One the other hand, the more dedicated languages you know, the easier it gets to learn another one. And you can better optimize - if needed - or make use of individual functions in the native language compared to monkey :-)

As I'm in the same situation like you, doing game programming as a hobby and just for fun, monkey is enough of an beast to tackle with.


En929(Posted 2014) [#8]
Thanks for all the input. I guess it is true that if I’m still programming ANYTHING, then I’m not actually abandoning Java since it is all relates to scripting. I’m already picking up Monkey very quickly and it’s super fluid and very fast when it comes to use (I’m already on trying to learning animations and collision detection now). I think I’m going to try to remake a game I made in Java and then might try posting a link to it here when I’m done.


zoqfotpik(Posted 2014) [#9]
I don't think MonkeyX is the new Java but for development of small-to-medium sized games on numerous platforms I don't see anything out there that's remotely comparable, at least in terms of number of targets. It's certainly good enough for my purposes.


Aman(Posted 2014) [#10]
If you compare monkey to java, they both have similar main objectives. Sun launched Java with the objective of making applications that can run on all of the supported platforms "the same way". Monkey's approach is different but it still aims to make applications that run on all of the supported platforms.


En929(Posted 2014) [#11]
That's true zoqfotpik and Aman . Aman, that's the reason I chose Java as a platform because I wanted toolset that can do many things in one for our today's world of technology and .Zopfotpik, I agree. I'm underway in making games in Monkey already. Just in 2 days I already figured out timers, animations, collision detection and I like how games could be put together quickly. I'm making a game featuring martial arts lol. I'm glad I rediscovered this and this already seems to be something perfect enough for all my game making needs.


zoqfotpik(Posted 2014) [#12]
Java does have Java GL which is really nice from what I hear (especially if you're a certain bearded Swede who goes by Notch... sucks to be him.)

For 2D games I don't know of anything that comes close to Monkey or I'd be using that instead. I am also constantly amazed that everyone doesn't know about it.


Gerry Quinn(Posted 2014) [#13]
One point about efficiency: Monkey -> Java is a MUCH smaller step than Java -> Assembler.


Samah(Posted 2014) [#14]
zoqfotpik: especially if you're a certain bearded Swede who goes by Notch... sucks to be him

Yeah, sucks to have millions of dollars, eh... :)
Minecraft is written with LWJGL, which I believe has its own native bindings.
http://lwjgl.org/


En929(Posted 2014) [#15]
I guess as I've picked up Monkey fairly quickly, I still tend to use Java for some things too. In fact, I'm writing two games now. One I'm finishing in Java and the other is completely in Monkey. Thus, my worry has faded. I truly like how both tool sets are versatile.