Home   News   Concept   AMIGA-Compatible   Hardware   Forum   Questions+Answers   Pictures   Contact & Team

Welcome to the Natami / Amiga Forum

This forum is for AMIGA fans interested in the new NATAMI platform.
Please read the forum usage manual.



All TopicsNewsQAFeaturesTalkTEAMLogin to post    Create account
The team will post updates and news here

Monkey Multiplatformpage  1 2 
Tony Smits
Netherlands

Posts 39
13 Mar 2011 09:53


The creator of Blitzbasic, BlitzMax etc. has a new multi platform language out called Monkey and I think it's great. I am a longtime user of his products starting from the Amiga and my hope is that Monkey some how will make it to the Natami!

Check it out!

EXTERNAL LINK 
If you want to know what is possible with this language check out a little game I made with it :

EXTERNAL LINK

Joel Edberg
Sweden

Posts 59
13 Mar 2011 10:03


Very nice!!

Wojtek P
Poland

Posts 1597
13 Mar 2011 10:14


Tony Smits wrote:

The creator of Blitzbasic, BlitzMax etc. has a new multi platform language out called Monkey and I think it's great. I am a longtime user of his products starting from the Amiga and my hope is that Monkey some how will make it to the Natami!
 
  Check it out!
 
  EXTERNAL LINK 
  If you want to know what is possible with this language check out a little game I made with it :
 
  EXTERNAL LINK 

Incredibly multiplatform, targeted to environment that have little to each other and is COMPLETELY different than exposed-hardware no abstraction layer natami.

Porting to natami of course would be possible but don't expect blazing performance.

The name... well, is it targeted to monkey-programmers? :)


Tony Smits
Netherlands

Posts 39
13 Mar 2011 10:28


Haha, yes monkey programmers maybe. Also programmers who are tired of learning all kind of languages again and again. It's about productivity and fun for me. Performance wise, I think it's perfect for the natami.

Ralph Ewers
Germany

Posts 42
13 Mar 2011 10:58


So do i get it right that this is basically Java reloaded: You write in a universal sourcecode and have it compiled to a variety of destination platforms, with Monkey explicitly targeting the major mobile platforms and app stores as well. Unless Java though Monkey will compile to native code (not bytecode), which is executed directly.
 
  Will be interesting to see first benchmarks and resource footprints. Might also be an alternative to Purebasic ( EXTERNAL LINK ) on the desktop.

Tony Smits
Netherlands

Posts 39
13 Mar 2011 11:28


Not only Java. It can export source code for Xcode, Flash, C, XNA etc.  As a result it can be compiled natively to other platforms if you install the SDK. For example Xcode exports need to be compiled on the Mac iOS SDK and you have a native version and past experience with Mark's products it's FAST!


Thierry Atheist
Canada

Posts 1828
14 Mar 2011 08:34


Wojtek P wrote:

The name... well, is it targeted to monkey-programmers? :)

Tony Smits wrote:

Haha, yes monkey programmers maybe.

Weeeelllll, in that case, expect that "an infinite amount of monkeys typing on an infinite amount of typewriters......" will one day write the ULTIMATE OS..... ----> AOS!!!!!! :-DDDD

Thierry Atheist
Canada

Posts 1828
14 Mar 2011 08:46


Monkey Code Sample wrote:

Method OnCreate:Void()
' Store the device width and height
SCREEN_WIDTH = DeviceWidth()
SCREEN_HEIGHT = DeviceHeight()

Seed = Millisecs()
dt = New DeltaTimer (60)

' Load the image
backgroundImg = LoadImage("bg.jpg")

' Create the ball
ball = New Sprite(LoadImage("ball.png", 1, Image.MidHandle), SCREEN_WIDTH / 2, SCREEN_HEIGHT / 2)
ball.dx = RndMin(-5,5,2)
ball.dy = RndMin(-5,5,2)


Uh oh, coding cardinal sin violation alert!

I can NOT CODE with languages that have commands that have parentheses that sometimes to never have amounts/variables in them. It's a logic bomb for my mind that I cannot circumvent.
RndMin(-5,5,2)
has parameters
DeviceWidth()
I believe probably never has any entered, hence the UNNEEDED parentheses.

Joe M
Norway

Posts 500
14 Mar 2011 09:48


Hi Tony,

Tony Smits wrote:

The creator of Blitzbasic, BlitzMax etc. has a new multi platform language out called Monkey and I think it's great. I am a longtime user of his products starting from the Amiga and my hope is that Monkey some how will make it to the Natami!

I agree we should have a "easy to learn" programming language for the Natami like Monkey, BUT then it has to be made from scratch (or at least be optimized) to make full use of the Natami's features. To my understanding a plain port will not make much sense unless we want slow and jerky games.

Tony Smits wrote:

If you want to know what is possible with this language check out a little game I made with it :

Your game looks great. :) I think the Natami will be an excellent machine for this kind of games. In fact, the Natami's strength is that it cannot be considered to be "multi-platform". With independent hardware, programmers can have full control without losing resources on the way.

I wanted to try out the demo of your game but I'm not sure if my PC is equipped with a graphics card that is powerful enough to handle the task. I assume an on-board GFX chip will not do? ;) Does everything move around smoothly on screen if you have the correct hardware?

Almost every game has different system requirements in the PC world. :( This is one of the reasons why I hope the Natami will be a great success. :)

JeeBee McJibble
United Kingdom

Posts 85
14 Mar 2011 11:39


DeviceWidth() is just a function / procedure, and the parentheses help visually with this. It probably has a signature in the Monkey API like:
 
  int DeviceWidth();
 
  I hate it when functions don't have parentheses - in languages where functions with parameters have them.
 
  I hate languages that don't have types, where new variables just 'appear':
 
  dt = new DeltaTimer(60); // ugh; Is this an object? ... Timer dt = new DeltaTimer(60);
  backgroundImg, ball, Seed, etc. And the example has strange casing - Seed. dt. SCREEN_WIDTH.

Jakob Eriksson
Sweden
(Moderator)
Posts 1097
14 Mar 2011 11:53


Monkey is just another compiled language. It converts the Monkey code to for example C. Then the C code is compiled on the Amiga/Natami like usual. So there is nothing inherent in Monkey code that should make it especially slow on Amiga/Natami.

You could even code directly for the hardware with it.

Wojtek P
Poland

Posts 1597
14 Mar 2011 12:29


Tony Smits wrote:

Haha, yes monkey programmers maybe. Also programmers who are tired of learning all kind of languages again and again. It's about productivity and fun for me. Performance wise, I think it's perfect for the natami.

Fun - yes. productivity - no.
Just like AMOS. Great to quickly create simple things.
Definitely no to create something that will well use hardware capabilities.

Still - AMOS fits well in amiga hardware.
monkey does not. But again - porting would be possible if someone wish.

Wojtek P
Poland

Posts 1597
14 Mar 2011 12:30


Jakob Eriksson wrote:

Monkey is just another compiled language. It converts the Monkey code to for example C. Then the C code is compiled on the Amiga/Natami like usual. So there is nothing inherent in Monkey code that should make it especially slow on Amiga/Natami.


Yes it will be same on any platform.


Team Chaos Leader
USA
(Moderator)
Posts 2094
14 Mar 2011 12:47


How does Monkey compare to Hollywood?

Tony Smits
Netherlands

Posts 39
14 Mar 2011 13:34


'Fun - yes. productivity - no'

I thought the Natami was about fun?

I did a game called Extrial on the Amiga and I used nothing but machine code. It's easy and fast. But not for everyone. That is why we need something like Monkey. Why, because if people write 2D games like we did with Defenstar it's nice to be able to reach as many markets as possible (productivity). If Monkey would support the Natami it would be great. You can always choose not to use it :)

And BlitzMax has proven to me it can be used for professional games. Monkey looks al lot like BlitzMax.

So for me:

Fun - YES. productivity - YES

Tony Smits
Netherlands

Posts 39
14 Mar 2011 13:37


Joe M wrote:

  Hi Tony,
 
 
Tony Smits wrote:

  The creator of Blitzbasic, BlitzMax etc. has a new multi platform language out called Monkey and I think it's great. I am a longtime user of his products starting from the Amiga and my hope is that Monkey some how will make it to the Natami!
 

  I agree we should have a "easy to learn" programming language for the Natami like Monkey, BUT then it has to be made from scratch (or at least be optimized) to make full use of the Natami's features. To my understanding a plain port will not make much sense unless we want slow and jerky games.
 
 
Tony Smits wrote:

  If you want to know what is possible with this language check out a little game I made with it :
 

  Your game looks great. :) I think the Natami will be an excellent machine for this kind of games. In fact, the Natami's strength is that it cannot be considered to be "multi-platform". With independent hardware, programmers can have full control without losing resources on the way.
 
  I wanted to try out the demo of your game but I'm not sure if my PC is equipped with a graphics card that is powerful enough to handle the task. I assume an on-board GFX chip will not do? ;) Does everything move around smoothly on screen if you have the correct hardware?
 
  Almost every game has different system requirements in the PC world. :( This is one of the reasons why I hope the Natami will be a great success. :)
 

 
Thanks! Defenstar can be scaled down. You can choose resolutions, limit particles and set detail.

Samuel D Crow
USA
(Natami Team)
Posts 1295
14 Mar 2011 15:41


Team Chaos Leader wrote:

How does Monkey compare to Hollywood?

Since Hollywood is based on the Lua scripting engine, I'd say that Monkey is probably faster than Hollywood.  Monkey compiles to C/C++ and then the rest of the way down to machine language while Hollywood is stuck in interpreted bytecode execution.  Lua is fast but it cannot compete with C or C++ for execution speed.

My main concern with both Monkey and Hollywood is that the runtime engine of Monkey is based on OpenGL and Hollywood is always in TrueColor resolutiuons also.  No palette support here, folks.  It may not affect future versions of Total Chaos but other games that require palette cycling will fall flat on their face on either one.

My secondary concern is the cost.  Monkey and Hollywood both cost something while you can get C++ and a third-party library such as Irrlicht, SFML or SDL to do the task of either one for next-to-nothing.  I'm not fond of C++ syntax but apparently some people are.

Samuel D Crow
USA
(Natami Team)
Posts 1295
14 Mar 2011 16:23


Has anyone else here hard of haXe?  See EXTERNAL LINK for details.

Cesare Di Mauro
Italy

Posts 526
14 Mar 2011 19:30


Samuel D Crow wrote:

Team Chaos Leader wrote:

  How does Monkey compare to Hollywood?
 

  Since Hollywood is based on the Lua scripting engine, I'd say that Monkey is probably faster than Hollywood.  Monkey compiles to C/C++ and then the rest of the way down to machine language while Hollywood is stuck in interpreted bytecode execution.  Lua is fast but it cannot compete with C or C++ for execution speed.

It isn't true: EXTERNAL LINK ;)

Team Chaos Leader
USA
(Moderator)
Posts 2094
14 Mar 2011 20:35


@Cesare

His Holy Majestic Royal Highness, Steve Jobs, has issued a Proclamation that all his subjects are banished from using LuaJIT on any iPhone or iPad device.


posts 24page  1 2