On 28/12/2011, at 3:56 AM, Michael Maul wrote: [] I think my reply got lost so:
> On of the things I plan on using felix for is number crunching in an embeded > environment. GSL is my library of choice for this. Was excited to see binding > in felix. However it needed a little love to get it to work. I had to create > typedefs for ptr and cptr Yep, it was autogenerated. Ptr abd Cptr have been removed. Be aware I plan to change the way pointers and related things work a bit. Currently, carray [T] is just a &T. ptr[T] and cptr[T] have been removed. I want to distinguish: pointers to (single) objects (can't be NULL, can't be incremented). Pointer or NULL, like: union Ptr_or_NULL[T] = | NULL | Ptr of &T; (so you're forced to use a match to check for NULL). C style Array pointers (can be incremented). It would also be cool to find some way to bound C array pointers. A change likely soon: at present x . y has three meanings: function composition, reverse application, and structure member selection. This is just too much. Also if x is a pointer to a structure, then x . y is still the field. For structure I may change so if x is a pointer to a structure with field y, then x . y is a pointer to field y, and x -> y is the field value (same as (*x).y). The reason is that this: x.y = 1; is not allowed at present because it means &(x.y) <- 1; // assignment In Felix assignment is a procedure like thing: set(&T,T) which requires the LHS to be a pointer. The operation &v is only permitted for variables (i.e. var things). So it is not possible to assign to a structure component with this model unless I change it so (&var) . field means what &(var.field) would in C. There'll need to be a similar thing for array notation to work properly. These kinds of change will impact library interfaces and code. Sorry! At present it just isn't safe enough, nor really usable enough. (C arrays are really bad safety wise). > In next few days I am going to try cross comple to ARM. Will static build > directive build binary without any external dependencies? Ideally cross > compiling felix runtime would be desireable. ARM building for iPhone appears to work. Felix is set up for cross-cross compilation so it should handle mere cross-compilation :) However the standard "install" only works properly for host=target=run platform. You'll have to hand write scripts for cross compilation (preferably using the installed Felix as the scripting language .. :) -- john skaller skal...@users.sourceforge.net ------------------------------------------------------------------------------ Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language