Recursividad en SuperBASIC

Subforo oficial del Sinclair QL: realiza aquí las consultas relativas a tu QL.

Moderador: Sir Cilve Sinclair

Responder
afx
Sabreman
Mensajes: 396
Registrado: Dom Feb 24, 2008 10:56 pm

Recursividad en SuperBASIC

Mensaje por afx » Vie Dic 12, 2008 8:40 pm

He realizado la traducción de un artículo de Dilwyn Jones sobre recursividad en SuperBASIC. El SuperBASIC es un lenguaje muy pedagógico, fantástico para enseñar algunas técnicas de programación (muy tipo Pascal). Una pena que ya esté desfasado y que no se use para enseñar programación a los chavales de hoy en día.

Le he enviado el artículo a badaman para colgarlo en sinclairql.es, mientras tanto lo podeis ver en este link.
http://217.126.211.48/DocsQL/Recursividad.pdf

¿Qué opináis de estas cualidades del SuperBASIC?

Avatar de Usuario
badaman
Sabreman
Mensajes: 499
Registrado: Mar Ene 29, 2008 10:58 am
Contactar:

Re: Recursividad en SuperBASIC

Mensaje por badaman » Sab Dic 13, 2008 1:20 am

Gracias por el envío Afx. Ya está subido a la web:

http://www.speccy.org/sinclairql/docs/p ... ividad.htm

Sobre tu pregunta, no hay más que ver los ejemplos que acompañan al artículo para darse cuenta de la potentísima herramienta que es la instrucción PROCedure.

Poder crear nuevos "comandos" desde el mismo SuperBASIC y que estos a su vez se llamen a si mismos desde su mismo código es verdaderamente potente.

Si, por aquello de la compatibilidad, no hubiesen existido números de línea en SuperBASIC seguramente nadie podría haber llamado BASIC a eso.
Sinclair QL, la respuesta profesional de los 80

Zerover
Jack The Nipper
Mensajes: 112
Registrado: Mar Abr 08, 2008 9:00 am

Re: Recursividad en SuperBASIC

Mensaje por Zerover » Mar Dic 16, 2008 1:32 pm

Para mí lo mejor es declarar locales las variables y poner nombres descriptivos a las subrutinas.

afx
Sabreman
Mensajes: 396
Registrado: Dom Feb 24, 2008 10:56 pm

Re: Recursividad en SuperBASIC

Mensaje por afx » Mar Dic 16, 2008 8:21 pm

A parte de lo estructurado, a mi me gusta también el tema del tratamiento de ventanas y canales. Lo encuentro muy práctico y a lo que se le puede sacar mucho provecho.

¿Que cosas que me hubieran gustado en caso de que hubieran existido nuevas versiones? Pues las siguientes:
- Que se eliminaran los números de línea.
- Que la declaración de variables no fuera implícita sino explícita (al menos esto último que pudiera ser opcional).
- Y que fuera modular (compilar módulos por separado y luego poderlos ensamblar, aunque no sé si esto ya lo hace Turbo o QLiberator; o que se pudiera hacer una especie de "using" o "include" de otros módulos desde un programa Basic).

Avatar de Usuario
badaman
Sabreman
Mensajes: 499
Registrado: Mar Ene 29, 2008 10:58 am
Contactar:

Re: Recursividad en SuperBASIC

Mensaje por badaman » Mar Dic 16, 2008 9:18 pm

Sobre lo último, lo más cercano a lo que propones e la posibilidad de pasar parámetros a ficheros compilados mediante pipes, como por ejemplo cuando cargas un texto con qed, o descomprimes un archivo zip...

Ejemplo: EX flp1_qed_exe;"flp2_fichero_txt"

ver: http://www.speccy.org/sinclairql/man/tk2/sec8.htm

O esta otra posibilidad del TK2, la de usar el comando DO con un programa en SuperBASIC externo como lo harías con EX.

ver: http://www.speccy.org/sinclairql/man/tk2/sec6.htm

El ficherio a ejecutar con DO no puede contener números de línea, asi pues debe separar los comandos con ":"

Estos programas sin números de línea se pueden crear con PRINT, abriendo OPEN un canal a un fichero al que mandar el texto del programa, o bien mediante un editor de texto como qed.
Sinclair QL, la respuesta profesional de los 80

afx
Sabreman
Mensajes: 396
Registrado: Dom Feb 24, 2008 10:56 pm

Re: Recursividad en SuperBASIC

Mensaje por afx » Dom Dic 21, 2008 12:47 pm

badaman escribió:Sobre lo último, lo más cercano a lo que propones e la posibilidad de pasar parámetros a ficheros compilados mediante pipes,

Para un apaño, o para determinadas tareas está bien. "¡Pero! ... :( " ... es una pena que no exista algo para hacer referencia a una librería de rutinas sin tener que hacer un MERGE de otros ficheros con el consecuente engorro de los número de líneas.

Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 10 invitados