Calculadoras RPN para Linux
ArticleCategory: Hardware
Applications
AuthorImage:[Here we need a little image from you]
TranslationInfo:[Author + translation history. mailto: or
http://homepage]
original in en Guido
Socher
en to es
Juan José Marí Morate
AboutTheAuthor:[A small biography about the author]
Mi primera calculadora RPN (Notación Polaca Inversa) fue una HP15c y fue
amor a primera vista.
Abstract:
RPN (NPI) proviene de Reverse Polish Notation (Notación Polaca Inversa). La
Notación Polaca Inversa fue desarrollada en 1920 por Jan Lukasiewicz como
método para escribir expresiones matemáticas sin la necesidad de emplear
paréntesis. Lleva unos minutos aprender a utilizarla, pero en breve se puede uno percatar de que el método es ampliamente superior al formato algebraico.
ArticleIllustration:
ArticleBody:
Introducción
Las calculadoras RPN de bolsillo se hicieron muy populares gracias a HP. HP
empleó este sistema de cálculo para su primera calculadora en 1968. Si se
realiza una búsqueda en Internet se puede comprobar la existencia
de verdaderos clubs de fans de estas calculadoras de HP. He recabado un buen
número de enlaces disponibles al final del artículo. Muchas de ésas
calculadoras de HP hoy en día son artículos de coleccionista y se venden
por un precio sumamente más elevado que el original.En este
artículo, presentaré algunas de las calculadoras de escritorio RPN
disponibles para Linux. No vamos a fijarnos únicamente en los emuladores de
HP que hay al alcance puesto que además existen otras calculadoras RPN que
son totalmente independientes de HP.
¿Qué es RPN?, ¿Por qué RPN?
Las calculadoras RPN usan una pila de memoria y todas las operaciones
matemáticas son inmediatamente ejecutadas en el bajo nivel de esta. Esta
pila es usada como memoria para salvar los resultados los cuales son necesarios
para calcular la fórmula. De esta forma no es necesario utilizar paréntesis
en una calculadora RPN. Primero ingresas los números, después presionas en la
memoria y entonces le dices a la calculadora que es lo que deseas hacer con esos
números. Vamos a decirle que calcule la siguiente operación:
(( 3+1 ) ^2 +1) * 4. Para realizar esta operación se deben ingresar los parámetros de la siguiente manera:
3 intro
1 + (inmediatamente se muestra el resultado de esta operación: 4)
x^2 (inmediatamente se muestra el resultado de esta operación: 16)
1+ (inmediatamente se muestra el resultado de esta operación: 17)
4* (Resultado final: 68)
Para realizar esta operación se requieren 9 entradas y es posible observar todos los
resultados intermedios de las operaciones. Básicamente es útil para evaluar una fórmula de la misma manera que se haría cuando se realiza el cálculo sin calculadora, es decir, en la cabeza. En otras palabras. Este tipo de calculadoras, "calculan" de una manera mucho más natural. Funcionan de la misma manera que el cerebro humano calcula.
Si se intenta realizar la misma operación con una calculadora algebraica y se calcula la fórmula exactamente como está escrita, sería necesario presionar 12 teclas y no será posible observar los resultados intermedios.
Las ventajas son, en otras palabras:
- RPN ahorra tiempo y pulsaciones. Nunca se verá uno obligado a emplear paréntesis mientras calcula. El proceso de cálculo es mucho más similar al aprendido cuando se estudian matemáticas en un papel.
- Es posible ir observando los resultados según son obtenidos, en contra de la respuesta total al final. En ocasiones esto es extremadamente útil.
- Un resultado intermedio le permite al usuario comprobar y corregir los posibles errores mucho más fácilmente. Es más fácil seguir el desarrollo del cálculo. El usuario define las prioridades de las operaciones.
- RPN es un sistema más lógico porque los usuarios dan los números y luego deciden que operaciones desean hacer con ellos.
- Los errores de entrada son mucho más detectables y obvios porque las subexpresiones son calculadas cuando son ingresadas en la calculadora.
Las calculadoras
Comencemos con algunas calculadoras simples que se pueden probar en un navegador web, mientras lee este artículo. Más adelante le mostraré máquinas más "poderosas".
rpnjcalc
Esta calculadora utiliza JavaScript. Es de diseño propio y debería funcionar en cualquier
navegador moderno (!), (No funciona correctamente con Opera 5/6, Netscape 4, Konqueror). Es diferente de otras calculadoras JavaScript porque puedes emplear el teclado para ingresar los números y las operaciones matemáticas básicas.
Sólo haz click aquí para
jugar con rpnjcalc
hp-35
Esta calculadora usa JavaScript también pero pone mucho más énfasis en
su similitud con la antigua calculadora de bolsillo (la real) HP-35.
Puedes probarla conectado
haciendo click en este enlace
Si realmente se desea emplear con frecuencia, recomiendo que se descarge el archivo
ZIP, porque emplea imagenes GIF y su respuesta es considerablemente más rápida cuando la instalas en un disco local.
Es bueno percatarse de que esta calculadora no ofrece la misma funcionalidad que
una HP35 real. Por ejemplo sólo puede calcular trigonometría en los grados de (0-360).
Nombre: | hp-35 |
Página web: | Desconocida, conseguida de www.hpmuseum.org. Descarguela de aquí: hp-35.zip |
Licencia: | GPL |
dc
Esta calculadora es un viejo comando de Unix. Es posible encontrarla incluso en los
sistemas Unix más antiguos. Sólo puede realizar aritmética básica pero puede manejar números
muy grandes. Para iniciarla basta con escribir dc y entonces el número seguido de una "k".
(Ejemplo: 6k y presionar intro). Este comando ajusta la precisión. Ahora es posible realizar
los cálculos ( + - * / ) e imprimir el más bajo nivel de la memoria con "p". Para finalizar
es necesario presionar crtl-d.
Nombre: | dc (calculadora de escritorio) |
Página Web: | Forma parte de todos los sistemas Unix. Bajo Linux, el paquete de dc se conoce como bc |
Licencia: | Por norma la misma que la de tu sistema Unix |
vc.pl
Esta calculadora está escrita en Perl. Es una implementación interesante porque es una auténtica calculadora de vectores. Es posible, por supuesto, emplearla como una calculadora aritmética normal porque un único número es como vectores unidimensionales. Tiene una ayuda integrada (basta con escribir help). La instalación es muy sencilla puesto que sólo emplea los modulos de Perl comunes.
x48
Esta es una emulación de la calculadora HP-48. Esto quiere decir que se ejecuta el
código real de la ROM de HP. La calculadora en sí, únicamente ejecuta el emulador, por lo que es necesario cargar la ROM de la HP-48. x48 es licencia GPL pero la ROM es por supuesto propiedad de HP. La original hp48 ya no es comercializada por HP y esta empresa no permite desde el año 2000 más descargas de las imágenes de sus ROM.
Nota: Es interesante contar con una calculadora en la pantalla del escritorio pero eso no reemplaza a las originales HP-48 porque x48 no tiene una buena interfaz. Lo más probable es que te encuentres la mayor parte de las veces haciendo clicks con el ratón y eso ralentiza considerablemente el trabajo.
Como x48 es un emulador, es capaz de efectuar todas las operaciones exactamente igual que lo haría la original HP-48. La última versión que pude encontrar fue la 0.4 que ya cuenta con algunos años. Funciona sin ningún tipo de problemas. La versión 0.4 requiere un pequeño parche para que se deje compilar en un sistema Linux moderno. Se puede encontrar un manual original, algunas imágenes ROM, el parche y algunas instrucciones adicionales en la siguiente
página web:
hp67
Esta calculadora cuenta con todas las funcionalidades de una auténtica HP67
pero ha sido completamente reescrita con un código totalmente independiente
del código de la HP67. No se trata de un emulador. La interfaz peca de parecer
algo básico (ncurses) pero tiene una excelente funcionalidad. Proporciona una
excelente documentación en forma de una página de manual. (Ver enlace más abajo).
Incluso es posible programarla como una auténtica HP67.
Para iniciar su programación es necesario presionar "prog" y ingresar el programa
deseado, comenzando con un nombre de etiqueta. Para abandonar el modo programación
de debe seleccionar "immed", para ejecutar el programa hay que usar "run labelname".
Aquí tenemos un ejemplo, el cual es poco práctico pero puede proporcionar una fiel
idea de como programar la HP67.
prog (entrando al modo programa)
label myprg
ENTER
*
rtn
immed (fin del modo programa)
Ahora se puede emplear "run myprg" para ejecuar x^2.
kalc
kalc se ejecuta desde la linea de comandos. Utiliza la librería readline y tiene
"completado de comandos", muy interesante. Funciona como números reales y complejos, integrales de tamaño ilimitado y números reales de precisión arbitraria.
Se puede calificar como muy buena excepto por la documentación (ver archivo PDF más abajo).
dcalc
Esta calculadora tambien está basada en ncurses para que sea posible ejecutarla en una ventana de terminal. No es programable como la HP67 pero es muy efectiva para transformar números de hexadecimal a binario y decimal.
rpncalc
Esta es otra calculadora para ejecutar en una ventana terminal pero no está basada en ncurses. Es muy similar a la calculadora de comandos "dc". Incluye la funcionalidad de las HP28.
Por supuesto, es una calculadora mucho más avanzada que la "dc". Puede manejar números complejos, vectores y matrices.
rpncalc forma parte de Debian.
gdcalc
Esta es una bonita calculadora con interfaz gráfica de usuario GTK.
Se puede configurar para emplearla como calculadora RPN o como calculadora algebraica. Ofrece 4 modos: científico, financiero, estadístico y un modo de conversión numérica llamado método de programación. Este método de programación no tiene nada que ver con programar la calculadora (como X48 o HP67). Ofrece todo lo que se le puede pedir a una calculadora de escritorio.
grpn
Esta también es otra calculadora RPN basada en interfaz gráfica de usuario GTK.
Ofrece funciones básicas de algebra y trigonometría.
galculator
Esta calculadora es en su funcionabilidad muy similar a gdcalc.
Utiliza las últimas librerias GTK (GTK 2.2)
Es muy probable que obtengas problemas al instalarla en sistemas Linux antiguos.
Está bien diseñada y tiene una agradable interfaz de usuario.
Para utilizar los menús de conversión de unidades es necesario instalar el comando de unidades (1) de ftp://ftp.gnu.org/gnu/units/, pese a que forma parte de la gran parte de las distribuciones Linux.
Nombre: | galculator |
Página web: | http://galculator.sourceforge.net/ |
Licencia: | GPL (nota: En la web se habla sobre GPL, no obstante en su manual se habla de licencia shareware. Supongo que se aplica a la versión de Windows). |
calcoo
Esta es una vieja máquina. Puedes configurarla para funcionar como RPN o en modo algebraico. Muy útil para álgebra básico y trigonometría.
Kalk
Esta no es una básica, (pero gratuita) calculadora RPN para los Palm Pilot.
Los Palm no ejecutan Linux pero presento esta calculadora aquí puesto que
está disponible bajo licencia GPL (algo poco común para los programas para Palm).
GCalc
Esta no es una calculadora RPN del todo pero es muy práctica y útil.
Esta basada en una calculadora gráfica Java. Para usarla es necesario el plugin de Java para Mozilla o Netscape que forma parte del paquete jre de blackdown.org.
Será posible dibujar gráficos instantaneamente en un navegador Java.
Conclusión
Como se puede observar, existen calculadoras RPN disponibles para todos los gustos.
probablemente existen muchas más calculadoras RPN pero todas las aquí expuestas son
de licencia GPL.
Referencias
- Página de descarga, Las versiones disponibles de las calculadoras a la hora de la redacción de este artículo
- imágenes ROM HP48, de hpcalc.org
- http://www.hpmuseum.org/, Museo en línea sobre todas las calculadoras HP
- area48.com/history.html, Historia de las famosas calculadoras HP48
- www.transnull.com/hp48.html, Preguntas más frecuentes e imágenes ROM para la HP48
- www.hp-collection.org/hewlettpackard.htm, Una colección privada con casi todas las calculadoras HP, (página en Alemán).
- www.limov.com/rcl20/, RCL 20:
Gente, sueño y calculadoras HP. Es un libro (sin versión en línea),
sobre la conocida HP41
- www.finseth.com/~fin/hpdata.html, Base de datos sobre todas las calculadoras HP
- www.hp.com/calculators/, El sitio oficial de las calculadoras HP.(Todos los enlaces anteriores son iniciativas privadas de fanáticos de las calculadoras RPN de HP). No hay demasiado disponible de HP actualmente. Verdaderamente, una mala página.