View unanswered posts | View active topics It is currently Jun 18th, '13, 15:39




Reply to topic  [ 2 posts ] 
 MacroMonkey gaining momentum! And a dev roadmap of sorts 
Author Message
Site Moderator
User avatar

Joined: Aug 18th, '09, 03:32
Posts: 1201
Post MacroMonkey gaining momentum! And a dev roadmap of sorts
MacroMonkey hit a milestone of over 17,000 downloads and had a recent surge of growth with this number growing
by around fifty to hundred every week!



A simple development roadmap for the future; mainly things I need to address:
1) I plan on releasing a new version soon with some bug fixes, a few minor changes, and update to the latest LuaJit.

2) I need to update the documentation. There have been some small changes and few new features added
that have not made into the documentation yet. These are listed in the "Changes:" section of "MacroMonkey.txt" though.
I'm thinking of switching to a Wiki type documentation format that has nice Lua code formatting options.
I know some of these options have a nice feature to export the context directly to HTML or PDF for local/off-line copy.
If anyone has experience with one of these good solutions, please post about here, and, or, send me a PM with the details.

3) A few other things on the docket:
I'd like to update the memory management of the built-in modules to my latest research and understanding.
Then maybe, finally, get around to making an optional Integrated development environment for MacroMonkey where one could edit,
run, and debug scripts in the same environment.
And perhaps add some sort of graphics drawing widget to the GUI system to draw dynamic maps and what not.

Any glaring missing features that you want added to MacroMonkey?
If so post them in this thread, and, or PM them to me.


Nov 1st, '12, 07:15
Profile
Site Moderator
User avatar

Joined: Aug 18th, '09, 03:32
Posts: 1201
Post Re: MacroMonkey gaining momentum! And a dev roadmap of sort

MacroMonkey 2.2
1) Updated to LuaJIT 2.0.0.
2) Enabled the LuaJIT extension for Lua 5.2 "Features that are unlikely-
to break existing code.."; like the "goto" with "::labels::", etc.
See http://luajit.org/extensions.html for more info.
3) Now using the built-in LuaJit BitOp lib instead of my customized one that
supported 52 bits since the LuaJit one is internally integrated for better
performance.
If you need to do bitwise operations for values larger then 32bits you can
use the equivalent MM "uint64" extension unsigned int 64bit value container
methods instead.
See http://bitop.luajit.org for more info.
4) Added internal versions of "printf()" and "printfc()" for the C like
"printf()" output (and "printfc()" with color) to console.
See "console" documentation for color definitions et al.



Uses the new full (out of beta) LuaJIT 2.0 version.

All the example and tests pass fine, but I don't currently have any major script setup running to do a real burn-in test yet.
If you find any issues please make a post in detail.

Note some new changes have a small chance of breaking existing MacroMonkey scripts:
A) Using the built-in LuaJit BitOp extension now that only supports 32 bits max sized values.
Previously I built a customized version that supported up to 52 bits (hard number limit for double floats before loosing precision, see Double-precision floating-point format).
The built-in one is integrated into the JIT system so should be relativity faster; especially for scripts that use a lot of bit operations.
If you need more then 32bits, and full 64 bits vs 52 anyhow, please use the MM uint64 extension that has bit operations in 64 bits. Will probably effect very few people if any at all.

B) Enabled the "Extensions from Lua 5.2" for some nice useful 5.2 features.
My favorite (but, vilified by some) is the "goto" feature that should be handy for jumping out of deep nested blocks, etc.
See http://luajit.org/extensions.html "Extensions from Lua 5.2" for a breakdown of the features.

The 5.1.x script breaking difference that stands out the most is: "debug.getlocal() accepts function instead of level."
Compare:
http://www.lua.org/manual/5.1/manual.ht ... g.getlocal
http://www.lua.org/manual/5.2/manual.ht ... g.getlocal
The 5.1 uses an level index, and 5.2 uses a function.
Again probably something that effects very few people but needed to be pointed out.

As it says in the LuaJit FAQ, LuaJit is 5.1 compatible.
There are some differences between 5.1 and 5.2 that break compatibility.
There somewhat disagreeable changes (like the removal of "module()") similar to why many Python programmers stick with the 2.x generation vrs using the newer 3.x.


Jan 3rd, '13, 12:23
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 2 posts ] 

Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Based on design by STSoftware, modded by Sirmabus Copyright© 2009-2011