Comunidad Gambas-es
Números de líneas en el código basic - Versión para impresión

+- Comunidad Gambas-es (https://gambas-es.org)
+-- Foro: Gambas (https://gambas-es.org/forum-3.html)
+--- Foro: General (https://gambas-es.org/forum-4.html)
+--- Tema: Números de líneas en el código basic (/thread-823.html)



Números de líneas en el código basic - Shell - 01-02-2022

Buenas!.

Es una pregunta para programadores que peinan canas. Wink

Como saben, los programas de basic antiguamente incorporaban números de líneas.
Cuando usábamos las instrucciones tales como GOTO y GOSUB le indicábamos a que línea debía continuar
el flujo del programa.

Estuve haciendo un programa en el basic antiguo del Sinclair que convierte de decimal a binario.
Carece de las funciones para poder hacerlo.

Captura en el editor BasinC.

[Imagen: b3RQYMP.png]

Es un programa pequeño que hace su función. ( Siempre me gustan las rutinas cortas ).
Como ven, tiene distintas partes. En este caso estoy usando un Pc para programar en un basic de otro ordenador.
Las herramientas que dispone este editor no tenían por que existir en la época del ordenador que tenía este basic.

Mi cuestión es esta: ¿ Cómo los programadores organizaban el código con los números de líneas ?.
Fijaros en el salto de número de línea que tiene el programa, de la 120 pasa a la 1080. Esto no es por gusto.

La pregunta hace referencia a que el programa "podía" ser mas grande, el número de funciones que realizaban las subrutinas
podían ser mucho mayor y se podía dar el caso de que el número de lineas que llama a las subrutinas podían sobrepasar el
área de líneas donde estaban incluidas las subrutinas. Era como un programa partido en dos.

Existían herramientas para "renumerar" las líneas. Eran herramientas añadidas al lenguaje, principalmente eran
en lenguaje ensamblador (nunca "invadían" el área donde estaba almacenado el programa basic).

El problema de renumerar. Es que es probable que renumerase todo el programa, lo que era un problema.
No es como esto: ( Esto lo hace un programa de pc. Este editor en concreto).

[Imagen: sziAqtb.png]

¿ Cómo el programador evitaba el problema de los números de línea ?. ( Cuando ibas añadiendo líneas y más líneas ).
Como es normal, una técnica es que las líneas iban incrementándose de diez en diez,normalmente.

¿ Como lo solucionaban ustedes en esa época ?.
¿ Imaginaban un programa sin líneas y luego las numeraban ?.

A pesar de tener libros de basic de la epoca de los 80, no encuentro algo que hable más de técnicas aunque si he visto
algo en páginas de Internet.

Saludos


RE: Números de líneas en el código basic - Shordi - 01-02-2022

Con el Vic20 enfrenté a ese problema y decidí incrementar de 100 en 100... pero mi gozo en un pozo cuando me encontré que con más de 3 gosub anidados se colgaba por falta de memoria... es una de las cosas que me llevó a regalárselo a mi cuñado.

Rolleyes Rolleyes


RE: Números de líneas en el código basic - jsbsan - 01-02-2022

Shell:
Cita:¿ Como lo solucionaban ustedes en esa época ?.
¿ Imaginaban un programa sin líneas y luego las numeraban ?.

Yo me hice un programa que dado un archivo sin enumerar (con funciones, goto, gosub, y etiquetas (en vez de numeros, para ir a sitios concretos o usarlas en los gosub) [lo editaba desde un procesador de texto], generaba un listado en basic con las lineas numeradas (y el programa se encargaba de sustituir las etiquetas por los numeros de lineas.)

Era muy chulo  Cool , creaba unos listados muy ordenados y con muchos comentarios tipo "rem ****Subrutina***".
Si tenia que cambiar o añadir algo del programa, me tenia que ir al listado "sin enumerar", cambiar lo que fuera, y volver a generar el listado numerado. 

He escuchado a un programador (rfog) que en unos de sus podcast, comentaba haber hecho algo parecido.

Saludos

Julio

Julio


RE: Números de líneas en el código basic - Shell - 29-05-2022

(01-02-2022, 19:17)Shordi escribió: es una de las cosas que me llevó a regalárselo a mi cuñado.

Que malo eres con tus cuñados. Big Grin
Probablemente "a lo mejor" esa memoria se podía haber ampliado hoy en día por poco precio.
Podía haber usado de 10 en 10 o un poco más.

Remake:



Lo venden algo caro. Fue el segundo después del Commodore Maxi, sin contar con las versiones "mini".
 
(01-02-2022, 21:44)jsbsan escribió: Yo me hice un programa que dado un archivo sin enumerar (con funciones, goto, gosub, y etiquetas (en vez de numeros, para ir a sitios concretos o usarlas en los gosub) [lo editaba desde un procesador de texto], generaba un listado en basic con las lineas numeradas (y el programa se encargaba de sustituir las etiquetas por los numeros de lineas.)

Que bien. Es lo mejor. El mayor problema que veo es en esto, no poder usar un complemento que te permita escribir los comandos rápidamente.
Hoy en día algunos de los editores de programación modernos, permiten con un complemento escribir en el antiguo basic (según máquina ).
El juego de instrucciones. De esta forma te corrige mientras escribes.

Saludos


RE: Números de líneas en el código basic - Shordi - 29-05-2022

Cita:Que malo eres con tus cuñados. Big Grin
Probablemente "a lo mejor" esa memoria se podía haber ampliado hoy en día por poco precio.
Podía haber usado de 10 en 10 o un poco más.

De eso nada. Con las máquinas me pasa como con los libros: Soy lector pero no bibliófilo. En cuanto un libro no me gusta o sé que no lo voy a volver a leer, lo regalo o lo uso para encender la chimenea. Nada de criaderos de polvo en casa, gracias.
Con las máquinas igual o las regalo o a la basura (una excepción son las raspberry pi, que al ser pequeñitas van a un cajón y ya tengo como cinco. Un odroid 1, una raspberripi 2 b, una 3.b y dos 4.b (una de dos gigas de ram y otra de cuatro).

Saludos

Por cierto ese Vic 20 del vídeo y el original se parecen como un gorila y una sardina, o sea: na.  Ya hubiésemos querido esas interfaces con imágenes y menús... por no mencionar que nada de uesebes, hdmises ni nada por el estilo...


RE: Números de líneas en el código basic - Shell - 01-06-2022

(29-05-2022, 17:39)Shordi escribió: De eso nada. Con las máquinas me pasa como con los libros: Soy lector pero no bibliófilo. En cuanto un libro no me gusta o sé que no lo voy a volver a leer, lo regalo o lo uso para encender la chimenea. Nada de criaderos de polvo en casa, gracias.

Big Grin 

Si que tienes mini pc's.
 
(29-05-2022, 17:39)Shordi escribió: Por cierto ese Vic 20 del vídeo y el original se parecen como un gorila y una sardina, o sea: na.  Ya hubiésemos querido esas interfaces con imágenes y menús... por no mencionar que nada de uesebes, hdmises ni nada por el estilo...

Es más cómodo que usar un emulador, sobre todo por como asimilar donde queda cada tecla del vic20/commodore en un teclado de pc.

En parte está máquina es que es más una consola más que un ordenador (por el tema de jugar), si no se quiere llegar a más.
Entonces le añaden el tema de que tiene un teclado ( de verdad, operativo. Ya que existe la versión "mini" del ordenador que es solo para jugar)
y con esto puedes programar en el basic antiguo del ordenador, luego grabas los programas en un usb.

THEVIC20

Es solo para los "enamorados" de estás máquinas. Si, existen los emuladores, indiscutiblemente.
Pero estamos hablando de  no necesitar un pc.

Saludos