I think I remember SmileBoom mentioning that the European version will release about the same time SmileBASIC for Wii U is released. However, we haven't heard much about either for quite a while, so I'm a little worried...
I can only suppose they're working hard to bring us those things.
I've heard the DLC allows WAV format playback, but I don't own it myself so I can't confirm that.
It isn't possible to directly export/import any kind of file between SmileBASIC and a PC. SmileBASIC is very sandboxed within the 3DS system. There are more indirect ways to transfer files, however. Note that these methods aren't endorsed by SmileBoom, but user-made and aren't particularly fast.
E.g.:
DIM ARR[10] 'DECLARES A 10 NUMBER ARRAY
DIM AR$[5,4] 'DECLARES A 5 BY 4 MATRIX OF STRINGS
DIM EMP[0] 'DECLARES AN EMPTY NUMERICAL ARRAY
To reference the elements of the array, simply call the identifier and the element's position within brackets. Be aware that array position numbers start from 0 to the length of the array minus 1.
E.g.: ARR[3]=12 'ASSIGNS 12 TO ARR SUB-ELEMENT 3
You most definitely do not need the DLC to use arrays. Arrays are a fundamental part of SmileBASIC.
You can declare an array by using the DIM instruction, specifying an identifier and the length and dimensions of the array. You can specify up to 4 dimensional arrays, and they can be as big as you want, as long as there is enough memory.
There is currently a DLC for SmileBASIC, the Advanced Sound Processing Unit, which includes various useful functions, specially those that are useful for audio processing. Among these functions are some that make array operations much more convenient, but most, if not all, can be replicated without the DLC.
So, I've looked around for a bit and found out RPL is a stack-based calculator programming language. I can't say I'm familiar with it, or any other calculator-based language, but I can understand a basic concept on how it works. I'd say it's possible to create an RPL/Racket compiler for SmileBASIC, but I'm not too sure about lambda calculus...
Similarly, for product pi, you'd iterate over the array, but you'd scale a variable initialized at 1 per iteration. E.g.:
PRODUCT=1
FOR I=0 TO LEN(ARR)-1
PRODUCT=PRODUCT*ARR[I]
NEXT
PRINT "PRODUCT IS ";PRODUCT
Do ask if you need any further clarification or help.
If you mean storing program variables, I can explain that in detail, but I'm not familiar with terms like sto+ or sto-, so I'd appreciate if you could clarify that to me.
For sum sigma, you'd iterate over the length of the array with a FOR loop, and increment a variable initialized at 0 for each iteration. E.g:
SUM=0
FOR I=0 TO LEN(ARR)-1
INC SUM,ARR[I]
NEXT
PRINT "SUM IS ";SUM
I'd suggest using...
DEF FUNCNAME PARAM
RETURN RETVAL
...rather than...
DEF FUNCNAME PARAM OUT RETVAL
...for functions with a single return value. It's a lot more straightforward in terms of the return value's initialization and the value returned itself.