Monkey programming language round 2...

For everything that's not in any way related to PureBasic. General chat etc...
User avatar
Joakim Christiansen
Addict
Addict
Posts: 2452
Joined: Wed Dec 22, 2004 4:12 pm
Location: Norway
Contact:

Re: Monkey programming language round 2...

Post by Joakim Christiansen »

A great read on LLVM:
http://www.aosabook.org/en/llvm.html
Making a programming language has never been easier if you just convert it to their IR language.

I am thinking about making a language my self, but I almost feel that using LLVM IR is like cheating since I then doesn't really learn how to write a compiler. But it will probably do a greater job at being an optimizer and compiler than anything I could write. Maybe I for the fun of it would make a version using LLVM and another one using my own compiler.
I like logic, hence I dislike humans but love computers.
User avatar
Tenaja
Addict
Addict
Posts: 1959
Joined: Tue Nov 09, 2010 10:15 pm

Re: Monkey programming language round 2...

Post by Tenaja »

Joakim Christiansen wrote:...I am thinking about making a language my self, but I almost feel that using LLVM IR is like cheating since I then doesn't really learn how to write a compiler. But it will probably do a greater job at being an optimizer and compiler than anything I could write. Maybe I for the fun of it would make a version using LLVM and another one using my own compiler.
On the other hand, it will greatly increase your chance of (any kind of) success. You can always build your own back-end later, if you want. If you want to learn to write a toy compiler (much more manageable) then read Crenshaw's Let's Build a Compiler. Trond (on here) even wrote a comparable (yet slightly less detailed) article using PB:
http://pbtut.blogspot.com/2009/08/base.html
User avatar
Danilo
Addict
Addict
Posts: 3036
Joined: Sat Apr 26, 2003 8:26 am
Location: Planet Earth

Re: Monkey programming language round 2...

Post by Danilo »

Joakim Christiansen wrote:A great read on LLVM:
http://www.aosabook.org/en/llvm.html
Making a programming language has never been easier if you just convert it to their IR language.
See also:
"Getting Started with LLVM Core Libraries" [Packt] [Amazon]
and the upcoming LLVM Cookbook.

- LLVM Related Publications
- LLVM Documentation - Overview
- Projects built with LLVM
User avatar
Danilo
Addict
Addict
Posts: 3036
Joined: Sat Apr 26, 2003 8:26 am
Location: Planet Earth

Re: Monkey programming language round 2...

Post by Danilo »

Krix wrote:Interesting read from Mark Sibly who decided to work on the next version of the Monkey programming language.

http://marksibly.blogspot.co.uk/
Another blog post, Mojo2 is coming: http://marksibly.blogspot.co.uk/

Image
User avatar
Danilo
Addict
Addict
Posts: 3036
Joined: Sat Apr 26, 2003 8:26 am
Location: Planet Earth

Re: Monkey programming language round 2...

Post by Danilo »

edited by fred: talking about another programming language is one thing, askign for funding it here is not the right place, thank you.
HanPBF
Enthusiast
Enthusiast
Posts: 570
Joined: Fri Feb 19, 2010 3:42 am

Re: Monkey programming language round 2...

Post by HanPBF »

Indeed, should be kept in context with PB.
Last edited by HanPBF on Sun Dec 13, 2015 3:19 pm, edited 1 time in total.
User avatar
yoxola
Enthusiast
Enthusiast
Posts: 386
Joined: Sat Feb 25, 2006 4:23 pm

Re: Monkey programming language round 2...

Post by yoxola »

Mark is a good coder.

But in real life I personally need a real thing for quick development,
so I switched to GameMaker Studio and done a few contracts faster.

As to application programming, PureBasic is always the first thing I use,
for example, for making a basic game level editor, in PB it usually takes a week,
but in BlitzMax it takes much longer to do it correctly, doesn't mean BMax is not good,
but it's way too cryptic and the docs is second to none if you actually try to use it.

I think I can't actually utilize Monkey (1 or 2) very well yet.
This field was left intentionally as signature.
tj1010
Enthusiast
Enthusiast
Posts: 716
Joined: Mon Feb 25, 2013 5:51 pm

Re: Monkey programming language round 2...

Post by tj1010 »

I never understood why Monkey isn't mega-popular. A single-source platform for pretty much every platform and a very clean syntax and IDE.. Everyone goes to PhoneGap or those .NET solutions from what I've seen as a freelancer.
User avatar
TI-994A
Addict
Addict
Posts: 2704
Joined: Sat Feb 19, 2011 3:47 am
Location: Singapore
Contact:

Re: Monkey programming language round 2...

Post by TI-994A »

tj1010 wrote:I never understood why Monkey isn't mega-popular.
Because it isn't mega-popular; and partly because of the developer's poor support record. :lol:
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too! Please visit my YouTube Channel :D
DontTalkToMe
Enthusiast
Enthusiast
Posts: 334
Joined: Mon Feb 04, 2013 5:28 pm

Re: Monkey programming language round 2...

Post by DontTalkToMe »

While I admire the scope of the project, all the possible targets, the modern features of the language, etc. I dislike the fact it's not 'really' a compiler but just generates code for n different compilers on the various platforms.
I understand this makes all a lot easier for him and at the same time takes advantage of years of work already spent on the respective compilers, translates to a higher quality of code generated and help enormously in importing source code available in other languages.
But I can't picture myself using something which has to go through all these intermediate steps, with all these dependencies.
Maybe it looks more productive, but it's not for me as a hobbyist. It's just a philosophical thing maybe, but it goes against my idea of lean and mean programming.
If it were a true compiler I would at least try it out.
juankprada
User
User
Posts: 62
Joined: Tue Mar 18, 2014 4:25 pm
Location: Bogotá, Colombia

Re: Monkey programming language round 2...

Post by juankprada »

DontTalkToMe wrote:While I admire the scope of the project, all the possible targets, the modern features of the language, etc. I dislike the fact it's not 'really' a compiler but just generates code for n different compilers on the various platforms.
I understand this makes all a lot easier for him and at the same time takes advantage of years of work already spent on the respective compilers, translates to a higher quality of code generated and help enormously in importing source code available in other languages.
But I can't picture myself using something which has to go through all these intermediate steps, with all these dependencies.
Maybe it looks more productive, but it's not for me as a hobbyist. It's just a philosophical thing maybe, but it goes against my idea of lean and mean programming.
If it were a true compiler I would at least try it out.

Then you should pretty much stop programming at all. The majority of compilers "compile" to some other kind of "language". The most popular being Java and C#, both of which compile using their standard tools to some intermediate language (Java bytecode and .Net Msil). Which is the same for Scala, F#, Boo, VB.net Groovy. Even C/C++ calls in Assembler in the Compilation process, and I assume that PB does that too.
DontTalkToMe
Enthusiast
Enthusiast
Posts: 334
Joined: Mon Feb 04, 2013 5:28 pm

Re: Monkey programming language round 2...

Post by DontTalkToMe »

Thanks for quoting my complete message just one post above :D
juankprada wrote: Then you should pretty much stop programming at all.
I can do that. Or continue as I'm doing now (see below).
juankprada wrote: I assume that PB does that too.
I know it does it, that's ok. I'm not extremist up to that point. Generating binary code directly or using an ASM + linker are both acceptable. Invoking a C++ compiler it's my breaking point, it's not exactly small or fast to work with like an assembler, especially if it's the backend of what it's called a compiler.
I like to use something working at most one step above ASM, let's say it that way. And not too fat (current MS products are so off-limits to me). Else it's not fun, for me. Just stress and house keeping to maintain some behemoth in a working state instead of programming.
tj1010
Enthusiast
Enthusiast
Posts: 716
Joined: Mon Feb 25, 2013 5:51 pm

Re: Monkey programming language round 2...

Post by tj1010 »

TI-994A wrote:
tj1010 wrote:I never understood why Monkey isn't mega-popular.
Because it isn't mega-popular; and partly because of the developer's poor support record. :lol:

Compared to what? How many native single source cross-compilers are there? AGK and others make the support of Monkey X look great.. Monkey X also has the cleanest IDE and syntax of anything I've seen.

I cringe at the thought of having to use the JS and .NET app tools and using Android Studio and Xcode directly just isn't realistic unless you have a team or are doing a small project.
User avatar
TI-994A
Addict
Addict
Posts: 2704
Joined: Sat Feb 19, 2011 3:47 am
Location: Singapore
Contact:

Re: Monkey programming language round 2...

Post by TI-994A »

tj1010 wrote:AGK and others make the support of Monkey X look great..
If, by great support, you mean consistently abandoning their products every few years, then, absolutely.
tj1010 wrote:I cringe at the thought of having to use the JS and .NET app tools and using Android Studio and Xcode directly just isn't realistic unless you have a team or are doing a small project.
Being an active user of Visual Studio, Android Studio, and XCode, I honestly can't relate to your cringe factor. Granted, the languages need some getting used to, but their respective IDEs, with their drag-&-drop UI designers, make it so easy; even for substantial projects. Moreover, these power-packed behemoths are absolutely free!

Perfectly suited for solo, kitchen-table developers; no teams required. :lol:
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too! Please visit my YouTube Channel :D
tj1010
Enthusiast
Enthusiast
Posts: 716
Joined: Mon Feb 25, 2013 5:51 pm

Re: Monkey programming language round 2...

Post by tj1010 »

TI-994A wrote:
tj1010 wrote:AGK and others make the support of Monkey X look great..
If, by great support, you mean consistently abandoning their products every few years, then, absolutely.
tj1010 wrote:I cringe at the thought of having to use the JS and .NET app tools and using Android Studio and Xcode directly just isn't realistic unless you have a team or are doing a small project.
Being an active user of Visual Studio, Android Studio, and XCode, I honestly can't relate to your cringe factor. Granted, the languages need some getting used to, but their respective IDEs, with their drag-&-drop UI designers, make it so easy; even for substantial projects. Moreover, these power-packed behemoths are absolutely free!

Perfectly suited for solo, kitchen-table developers; no teams required. :lol:
How many apps do you currently have on the market? I wan't to see what you've made by writing two times on different machines on your own.

Learning the languages isn't the problem. It's time. I've used most of the dev tools as a freelancer and for my own products.The whole problem and reason for demand is shorter time.
Locked