09-30-2016, 03:16 AM
sorry for my bad English =[
Hi, HP-RPL users and RPN lovers, Please comment on each point exposed
I have not tried yet NEWRPL because I have not a hp50real and the NewRPL-DEMO app for windows not have a keyboard =(
these suggestions are based on what has the hp 50 and that I would like to see in newRPL or in a future firmware upgrade from HP
1: Use an operator optional as end line, semicolon (; ) for example. Where the program editor can format each sentences, and thus to adjust the code vertically, my HP48/50 programs always the editor adjusted to line the width of the screen and not as I wrote in the source code =(
'RCUADRATIC' RCL
->
=)
And not
=(
2: Do not delete comments to store programs
'RCUADRATIC' RCL
->
=(
3: use a different delimiter between variables & symbolic expression, for example a polynomial 'x^1' -> 'x' would be treated as algebraic expression and non-variable
delimiters `` for storage
delimiters '' for algebraic expression
should return the same data type (9), the solution to the ambiguity of a variable as algrebaica expression is solved with my idea
Hold right key (hp50)+ [''], put the backtick or reverse quotes
4: use "ENDIF" "ENDCASE" "ENDWHILE" "ENDDO" ETC as option to visually and detect the body block, also this allows easier code converters
The following code is very difficult to know which end is up to each block when no indentation
->
5: A flag to maintain always a complex number in format (x, y) dupla
(x, y) [ENTER] (x, y) and not x+y*i and not (r, angle theta)
6: a new type of data is needed tripla (x,y,z) for geometric objects
7: Local storage in RPN
==
1 2 3 `A` `B` `C` → @ RPN NOTATION =)
==
1 2 3 → A B C @ infix notation =(
Hi, HP-RPL users and RPN lovers, Please comment on each point exposed
I have not tried yet NEWRPL because I have not a hp50real and the NewRPL-DEMO app for windows not have a keyboard =(
these suggestions are based on what has the hp 50 and that I would like to see in newRPL or in a future firmware upgrade from HP
1: Use an operator optional as end line, semicolon (; ) for example. Where the program editor can format each sentences, and thus to adjust the code vertically, my HP48/50 programs always the editor adjusted to line the width of the screen and not as I wrote in the source code =(
Code:
«
3 →LIST;
{ A B C } STO;
B NEG B 2 ^ 4 A * C * - √ + 2 A * /;
B NEG B 2 ^ 4 A * C * - √ - 2 A * /;
{ A B C };
PURGE;
»
'RCUADRATIC' STO
'RCUADRATIC' RCL
->
Code:
«
3 →LIST;
{ A B C } STO;
B NEG B 2 ^ 4 A * C * - √ + 2 A * /;
B NEG B 2 ^ 4 A * C * - √ - 2 A * /;
{ A B C };
PURGE;
»
And not
Code:
« 3 →LIST { A B C } STO B NEG B 2 ^ 4 A * C * - √ + 2 A * / B NEG B 2 ^ 4 A * C * - √ - 2 A * / { A B C } PURGE ;
»
2: Do not delete comments to store programs
Code:
«@ inicio de programa
3 →LIST @ creación de una lista con 3 objetos que deben estar en pila
{ A B C } STO @ (STORE) almacenamiento global paralelo
B NEG B 2 ^ 4 A * C * - √ + 2 A * / @ cálculo de la raiz1
B NEG B 2 ^ 4 A * C * - √ - 2 A * / @ raiz2
{ A B C }
PURGE
»
`RCUADRADIC` STO
'RCUADRATIC' RCL
->
Code:
«
3 →LIST
{ A B C } STO
B NEG B 2 ^ 4 A * C * - √ + 2 A * /
B NEG B 2 ^ 4 A * C * - √ - 2 A * /
{ A B C }
PURGE
»
3: use a different delimiter between variables & symbolic expression, for example a polynomial 'x^1' -> 'x' would be treated as algebraic expression and non-variable
delimiters `` for storage
Code:
`RCUADRADIC` STO
delimiters '' for algebraic expression
Code:
'X' STO
Code:
'X^1' EVAL TYPE @ returns 6
'X^2' EVAL TYPE @ returns 9
should return the same data type (9), the solution to the ambiguity of a variable as algrebaica expression is solved with my idea
Code:
'X' EVAL 'X'TYPE @ returns 6
`X^1` EVAL `X` TYPE @ returns 9
`X^2` EVAL `X^2` TYPE @ returns 9
Hold right key (hp50)+ [''], put the backtick or reverse quotes
4: use "ENDIF" "ENDCASE" "ENDWHILE" "ENDDO" ETC as option to visually and detect the body block, also this allows easier code converters
The following code is very difficult to know which end is up to each block when no indentation
Code:
IF
THEN
CASE
THEN
END
THEN
END
END
WHILE
REPEAT
DO
UNTIL
END
END
END
->
Code:
IF
THEN
CASE
THEN
ENDCASE
THEN
ENDCASE
ENDCASEBLOCK
WHILE
REPEAT
DO
UNTIL
ENDDO
ENDWHILE
ENDIF
5: A flag to maintain always a complex number in format (x, y) dupla
(x, y) [ENTER] (x, y) and not x+y*i and not (r, angle theta)
6: a new type of data is needed tripla (x,y,z) for geometric objects
7: Local storage in RPN
Code:
«
`A` `B` `C` →
«
...
»
»
==
1 2 3 `A` `B` `C` → @ RPN NOTATION =)
Code:
«
→ A B C
«
...
»
»
==
1 2 3 → A B C @ infix notation =(