casio fx700p
this was a real classic. one of the first basic
programmables and very versatile too.
only 1536 bytes of program storage, they were useful enough for a large
repertoire of programs. there were program shortcuts like IF x>=0 THEN
20. rather than GOTO 20. all keywords tokenised and were on actual keys to
accelerate program entry.
26 memories by default (ram could be partitioned) labelled A thru' Z.


interestingly, the named memories AZ could be addressed using the array
operator, so A(0) = A, A(1) = B, A(2)=C and B(1)=C and so on. at first, this
seems weird, but pretty soon this trick could be used to save a lot of storage
by using the appropriate letter whenever the array index was constant.
here's an example program:
10 VAC:INPUT Z
20 H=1:A=1:B=2
30 N=EXP 5.5/SQR 5.5
40 W=N/2:Y=.5:X=1:U=1
50 X=X*(Z+(1U))/(Z+U)
60 N(U)=Y*EXP(U+5.5LN(U+5.5)*(U+.5)):Y=Y*(U+.5)
70 FOR V=0 TO U:W=W+X*A(V)*N(V):NEXT V
80 IF U=6 THEN 130
90 T=A:FOR V=0 TO U
100 H(V)=2*TH(V):T=B(V)
110 B(V)=2*H(V)B(V):NEXT V
120 A=A:U=U+1:GOTO 50
130 T=Z+.5:T=2*W*EXP(T*LN(T+5)T5)/Z
140 PRINT T
this computes the gamma function of the prompted input. it uses all 26
memories and exploits memory aliasing heavily.
