Friendly greetings !
i'm currently working on a little projects (i'm not sure about the name yet. internally it's "wxFractal").
Why ? Tired of rewritting a full program everytime i have an idea
I started it as a blitzMax program + the Lua blitzmax module.
If you don't know about lua :
http://www.lua.org/ , roughly said : it allow to embed a scripting language (lua) easily. Lua can call C code, and C code can call Lua code.
Blitzmax is awesome, but have some limitation that can't fit in my project. (32bits only, old lua version, ...)
I discovered more and more about lua and found that there is a tons of lua library :
http://lua-users.org/wiki/LibrariesAndBindingsThe most interestings for me are :
1) WxLua :
http://wxlua.sourceforge.net/ 2) lots of good math library :
- lqd - a high-precision (double-double & quad-double) mathematical library for Lua based on [qd].
- lbc - a big-number library for Lua.
- lmapm - an arbitrary precision library that contains transcendental functions.
- ldecNumber - wrapper for IBM [decNumber]. Implements General Decimal Arithmetic standard IEEE 754r. Full control over rounding modes and working precision.
- LGMP - use [GMP] the GNU multiple precision arithmetic library from Lua.
- lmathx - an extension of the standard math library based on C99.
- lcomplex - a library for mathematical operations with complex numbers based on C99.
- linterval - an interval arithmetic library based on [PROFIL/BIAS]; implements interval type, vectors and matrices of this type. Includes an implicit curve plotter.
- lgpc - a library for Boolean operations on polygons based on [GPС] the General Polygon Clipper library.
- Numeric Lua - a numeric package for Lua with support for complex numbers, multidimensional matrices, random number generation, and special functions. Most of the routines are wrappers for the Netlib libraries.
- LuaMatrix - matrix operations in pure Lua. [*L]
Enough to use Lua as the primary language for my application.
The application itself will embed a Lua editor, a graphic output, and some usefull stuff around it (a lua interpreter, some logging facility, ...)
(See attachment)
It's planned to be multiplatform (thank you lua)
It will have multiple mode of operation.
The first one will be as simple as "for each pixel : execute the code written in the editor" (think about it like a shadder, or ultraFractal code).
i'm planning other mode of operation like : execute the code once for the whole graphic buffer, allowing to read/write any pixel anywhere (eg: for buddhabrot)
Since the application allow to write lua code, it will allow to call C library. So you can write your "pixel code" in C, C++, or anything that lua can call.
Hopefully including OpenCL code (in the far future unless someone write an openCL binding for lua before me)
Ho... it will be opensource, of course
More to come soon.