Extrait de l'émission CPU release Ex0174 : Basic pour débutants.
Bonjour à toi, Enfant du Futur Immédiat, et d'ailleurs, regarde ce que j'ai ramené… Mon premier ordinateur : un Sanyo de 1982. Eh oui, de mon temps, un 8 bits avec 8 ko de RAM, c'était largement suffisant pour jouer !
Tu es devant un ordinateur du début des années 1980s qu'on vient de te brancher, face à un grand mystère à ce jour pour toi : Que va-t-il se passer quand tu vas l'allumer l'ancêtre de 40 ans ? (si les condos ne crâment pas d'entrée)
Quand tu allumais un des premiers micro-ordinateurs familiaux, la grosse télé du salon commutait de Michel Drucker (eh oui, déjà !) vers sa péritel et tu tombais sur un curseur clignotant après le message Ready.
C'était une invite de commande. Mais on n'avait pas d'OS. Non, il n'y avait souvent aucune notion de fichier, on avait un langage frustre de programmation : le Basic.
Ah, des fois, il avait quelques notions graphiques genre point, ligne et rectangle. Faire des bips ou changer le glyphe d'un caractère. Et c'est tout.
Ah si, on pouvait charger voire enregistrer son programme en Basic avec la commande load
, t'appuyais sur la touche ⏵Play du lecteur à cassette, mais fallait compter 10 minutes avant de pouvoir effectivement jouer.
Le Basic, le Beginner's All-purpose Symbolic Instruction Code, est cette madeleine de Proust qui fait oublier combien ta petite machine était poussive, désuète, dépassée.
Mais c'est oublier surtout que le Basic est un langage incroyablement simple à apprendre et a donné le marchepied à toute une génération vers la programmation informatique.
Ça n'est pas rien.
Tiens, la notion de commande immédiate ou de programme par exemple : Si ta ligne de commande commençait par un numéro, ce numéro indiquait une position dans un programme, les instructions de la ligne ne seront pas immédiatement exécutés quand t'appuiera ↵Entrée mais que quand tu auras tapé RUN
. D'ailleurs, si tu retapes le même numéro de ligne, tu écraseras les instructions qui y étaient stockées (un peu comme en Cobol, d'ailleurs).
Et que c'est comme ça que toute une génération a appris les variables, les conditionnelles, les structures et le débogage à grand coup de PRINT
et de Ctrl+C frénétiques sur un clavier mou et fragile.
Enfant du Futur Immédiat, le Basic est un langage extrêmement frustre, à l'implémentation souvent ultra minimaliste : le Basic Integer écrit par Steve Wozniak pour l'Apple II n'est pas capable de travailler les nombres non-entiers ou d'utiliser les sous-routines comme GOSUB
, ce qui encourage à des méthodes de développement… pas forcément propres.
Par contre, ce Basic-là est d'une vitesse d'exécution stupéfiante, alors que pendant encore 8 ans, les autres Basics vont être d'une lenteur proverbiale.
Et la faute ne venait pas du principal éditeur du langage pour micros, Microsoft, mais de la caractéristique principale de ce langage :
Le Basic est interprété.
Le langage interprété permet de pouvoir répondre immédiatement à la ligne de commande et de ne pas avoir à faire d'efforts pour lancer un programme, autrement qu'en tapant RUN
. Par contre… c'est lent. Et ceux qui croyaient se mettre à la programmation en Basic pour faire des jeux aussi fous fous que les jeux commerciaux sur Apple II, ZX Spectrum, Commodore 64 ou Amstrad CPC… ils ont été déçus. Bon, dans le lot, y'en a qui ont sauté vers le langage machine ou des langages compilés comme le C.
C'est un peu ça qu'on a oublié dans notre nostalgie formicapunk : le Basic est un outil d'initiation, un langage pour apprendre la logique du développement informatique. Tu vas pas t'amuser à courir une course professionnelle avec les petites roues de ton vélo de quand tu étais tout petit. Surtout le Paris-Roubaix, y'a des pavés partout. Tu vas pas construire un immeuble complet rien qu'en briques Lego.
(ouais, je sais, rien que le fait que j'écrive cette idée incongrue, va avoir des audilecteurs zélés qui vont tenter le défi juste pour se moquer de moi.)
Enfant du Futur Immédiat, ce qui conviendrait le mieux pour décrire le langage Basic, c'est le fun de l'apprentissage. Très peu de mots, pour les apprendre vite, pour se lancer vite et donc… très vite en atteindre les limites. Mais une fois que tu es dedans, t'as envie d'aller au-delà, de passer de l'amateur-grammation
à la pro-grammation
.
Et c'est par là, Enfant du Futur Immédiat, qu'on est allés. Avec un outil rustique, linéaire, uniquement textuel. Bien loin de ton Scratch favori.
Texte : Da Scritch
Photo : Sanyo PHC-25, CC Da Scritch