KPerry
Or use a string with delimiters and parse out the value between delimters x and x+1 (not sure if doable either, but...)?
Unfortunately there's next to no string handling routines in CAL either.
I've got a rough design for a LUA replacement for CAL, using the Control Surface API as this gives access to most of the menu based routines that CAL does. It would also involve programatically writing CAL scripts on the fly, running them, then picking up the results via files (not sure if these could be memory based or not). It would also rely on the fact that a control surface DLL is kept in memory, so state can then be passed between subsequent calls to the CAL DLL function.
However, not only is it a fairly big job, I seriously doubt I'll have the spare time to work on this any time soon.
If I do get anything working though, I'll make it available.