lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index] wrote:
> On Thu, 2005-01-27 at 14:05, André de Leiradella wrote:
>> But is there a script language out there that:
>> 1) Has a clear syntax
>> 2) Has a small footprint
>> 3) Doesn't come with lots of modules that you can't remove from the
>> core 4) Has garbage collection
>> 5) Compiles in almost every plataform/compiler
>> 6) Is designed to embeded or is extremely easy to embed 9) Has a
>> nice API 10) Is easy to extend
>> 11) Is (not necessarely only) object oriented
> Felix satisfies all these requirements except (11).

The documentation shows an example of OOP, but it's very small and don't
cover all aspects of OOP.

> For (2) YMMV: the run time is much smaller than Lua,
> but then it generates fully compiled code which can
> be larger than bytecode, and also need extra run
> time support (eg C++ runtime).

Needing C++ runtime is an issue to me.

> (3) is extreme in Felix. There are not really any built-in data
> types, not even int, bool or string, so there's no problem 'removing'
> them, since they're not there in the first place.  


> (9) is difficult, since there is not really any API.
> To use a C function you need to declare it, but
> it is compile time only:
> 	fun sin: double -> double;

By API I mean the C functions you call to initialize the language (like
lua_open), call functions etc.

> Choose between Felix and Lua based on the scale of
> your application. For a small device, such as
> a mobile phone or PDA, choose Lua. For a large
> and complex application (such as a serious game)
> use Felix.
> If you're in the middle or need a mini-language,
> use Felix AND Lua together. (Felix comes with
> Lua builtin at the moment). From Felix point
> of view Lua CAPI is just another library.

I need just one language.

> On (11): neither Lua nor Felix need OO as much
> as OO language because they have other alternative
> techniques such as closures and coroutines.
> However Felix binds 'seamlessly' to C++ so you can
> always use C++ for OO. You can also do this in Lua,
> although the bindings are harder to construct.

My customers will be the ones doing OOP to extend the application in
whatever language I present to them. They won't program in C++.