IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Le langage BASIC célèbre son cinquantième anniversaire
Historique d'un langage qui a ouvert l'informatique aux non-initiés

Le , par Hinault Romaric

402PARTAGES

16  0 
Le langage de programmation BASIC a soufflé sur sa cinquantième bougie hier, 1er mai 2014.

BASIC (Beginner's All-purpose Symbolic Instruction Code, qui peut se traduire par « code d'instruction symbolique à tout faire pour débutant ») a vu le jour le 1er mai 1964 et a été créé par John George Kemeny et Thomas Eugene Kurtz au « Dartmouth College » aux États-Unis.

Développé à l’origine pour permettre aux étudiants qui ne font pas une filière ayant trait à l’informatique d’utiliser plus facilement les ordinateurs, le langage a contribué largement à la démocratisation de l’informatique, rendant celle-ci accessible à un public beaucoup plus large.

Avant la création du langage BASIC, la programmation se faisait essentiellement en langage assembleur ou en Fortran, des langages dont la maîtrise n’était pas évidente pour les non-informaticiens. BASIC est un langage de programmation de haut niveau, qui s’inspire du Fortran et de l’ALGOL 60.

En plus d’être un moyen facile pour développer des applications, les créateurs du langage ont publié gratuitement son compilateur, ce qui a permis au langage de rapidement gagner en popularité, pour se retrouver dans les années 70 et 80, sur littéralement tous les ordinateurs et même sur quelques calculatrices programmables.

Plusieurs variantes de BASIC ont vu le jour au fil des années, avec des améliorations conséquentes par rapport à la version originelle. Microsoft, dont les premiers pas en tant qu’entreprise ont été de développer l’interpréteur Altair Basic pour le Altair 8800, à la demande d’un constructeur en 1975, a publié plusieurs versions populaires de BASIC.

Le langage avait également ses détracteurs, qui l’ont accusé de transmettre de mauvaises pratiques. C’est notamment le cas du célèbre informaticien hollandais Edsger Dijkstra, qui avait déclaré qu’il « est pratiquement impossible d’enseigner la bonne programmation à des étudiants qui ont été exposés antérieurement au BASIC ». Pour lui, ces « potentiels programmeurs étaient mentalement mutilés. »

Au fil du temps, avec l’essor des autres langages de programmation, notamment le langage Pascal qui avait été adopté pour l’enseignement dans les années 80 et offrait de meilleures performances que le BASIC, le langage a commencé à voir sa popularité chuter.

Néanmoins, celui-ci demeure encore très ancré dans les produits de Microsoft notamment Visual Basic Application (VBA) dans la suite Microsoft Office et Visual Basic .NET sur la plateforme .NET.

En tant que communauté de développeurs, souhaitons un joyeux cinquantenaire au langage BASIC.

Source : Dartmouth

Et vous ?

Avez-vous connu le langage BASIC ? Qu'en pensez-vous ?

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de comtois
Responsable Purebasic https://www.developpez.com
Le 02/05/2014 à 22:04
Avez-vous connu le langage BASIC ? Qu'en pensez-vous ?
N'étant pas informaticien, et n'ayant pas le temps (ou l'envie) d'apprendre un autre langage, j'en suis resté au BASIC. Il me donne entière satisfaction pour mes besoins.

Je souhaite longue vie au BASIC
7  0 
Avatar de captaindidou
Inactif https://www.developpez.com
Le 09/05/2014 à 18:19
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration", Edsger W. Dijkstra

Et bien, ce qui veut dire que Mr Dijkstra peut aussi dire des inepties.

Car moi aussi, j'ai commencé comme beaucoup d'autres par le Basic et même pire, l'Assembleur Z80 par la suite. Ce qui ne m'a pas empêché de ressentir l'adoption du Pascal (que j'ai aussi appris en auto-didacte) comme un véritable soulagement grâce à la programmation structurée. Langage que j'ai appris tout seul dans mon coin sur un Amstrad.
Mes facultés de développement s'en sont trouvées immédiatement décuplées. J'en veux pour preuve les programmes dans lesquels je me suis lancé : jeu d'escrime (3000 lignes de code), un raytracer, de la reconnaissance de caractères par réseau de neurones, un simplifieur de formules logiques (avec analyseur syntaxique fait à la main) par table de Karnaugh, le jeu graphique du hasami shogi... et d'autres encore que j'ai oublié.

Et surtout ce qui ne m'a pas empêché de suivre une carrière d'ingénieur en développement logiciel sur le centre de mission Hélios ...

Je ne suis pas un génie non plus, pas même surdoué mais bel et bien ordinaire.

Je pense que tout ceux qui ont commencé par le BASIC pensent comme moi parce que cela ne les a pas empêché de faire carrière.

Mr Dijkstra, le génie sous-estime le potentiel du cerveau humain ordinaire.
7  0 
Avatar de MIG86
Membre régulier https://www.developpez.com
Le 01/07/2015 à 17:08
Écolier, j'étais curieux de tout et studieux. Notre classe a eu une introduction à l'informatique sur des Thomson en nano-réseau (ceux du plan Informatique pour tous). L'instituteur nous installait deux par micro. L'entrée d'un langage sibyllin pour qu'une tortue dessine une rosace à l'écran me barbait ; je laissais donc mon camarade s'en occuper.
Avant de partir au collège, un camarade travaillant aujourd'hui dans la conception informatique et moi-même eurent la possibilité de jouer à GORILLA sous QBasic dans une fenêtre de Windows. C'est chez cet ami que j'ai connu le TO-8 puis Windows 95.
Une fois arrivé au lycée, nous nous sommes enfin rendu compte que le CD-ROM détenait ce vieux QBasic. Là j'ai enfin été enthousiasmé de faire faire ce que je désirais à l'ordinateur mieux qu'avec les batch du DOS. J'avais alors une petite expérience de la programmation via les manuels du TO-8 et de la calculatrice TI-82. Avec le BASIC de cette dernière, j'ai simulé l'expérience de l'aiguille de Buffon, écrit un jeu où on était le mitrailleur arrière d'un bombardier et amélioré la convergence de la formule Gregory (calcul de Pi). Les livres que je lisais faisaient état du BASIC pour Thomson et du langage LSE (BASIC à la sauce française) : je n'ai donc pas su exploiter le potentiel de QBasic qui était la version bridée (sans compilation) de l'environnement QuickBASIC 4.5 de Microsoft.

Récemment, la nostalgie de GW-BASIC m'a touché. Par exemple, j'ai pris plaisir à concevoir une démonstration d'animation graphique avec interception d'erreur, échange de pages vidéo, interception de codes make et break du clavier, masque ET et sprite OU. C'est à ce moment-là que j'ai vu que mon programme tournait mieux sur le BASICA d'IBM, QuickBASIC 4.5 et par conséquent QBasic. En effet, lors de l'échange des deux pages, je ne souhaitais perdre ni ma palette ni de temps, même s'il fallait s'occuper de la synchronisation verticale avec l'instruction WAIT &H3DA,8 juste après (test sur un 486-25SX). J'ai ainsi simulé le début de la ROM BASIC d'IBM pour BASICA de PC-DOS 5 puisque GW-BASIC ne pouvait me convenir.

L'intérêt que je trouve à QBasic est l'usage de programmes trouvés sur le Net. Les sources en C et ASM de cet EDI y sont disponibles. Je souhaiterais débrider son instruction VIEW PRINT prévue à l'époque pour que GW-BASIC puisse gérer les fenêtres sans avoir à écrire dans les données réservées au BASIC.

À présent, j'ai développé une tare comparée à une régression mentale ! J'utilise le vieux BASIC Microsoft pour MS-DOS qui est directement dérivé de la version CP/M qui était le dénominateur commun à plusieurs vieux systèmes : ni gestion d'écran ni usage des spécificités du micro-ordinateur, seulement des appels au rudimentaire système d'exploitation. Ce BASIC-86 appelle souvent les API du DOS comme s'il s'agissait de CP/M. Tim Paterson avait écrit le 86-DOS, ancêtre direct de MS-DOS, dans ce sens-là en utilisant une astuce liée au fait que le dernier segment du microprocesseur 8086 pointait le début de la mémoire. C'est pourquoi, sur un PC/AT équipée d'un processeur 80286 ou plus, il faut soit désactiver la ligne A20 soit charger DOS dans la mémoire haute pour que BASIC-86 fonctionne. C'est grâce à ce logiciel que je me suis rendu compte que la fonction 26h de DR DOS 6 était boguée. Je suis allé jusqu'à réécrire le patch PAT312 pour y remédier.

Par conséquent, je considère encore le BASIC Microsoft comme une bonne initiation à la programmation, voire une solution pour beaucoup de problèmes de l'utilisateur lambda. Il offre beaucoup de fonctions, une gestion simple des fichiers, des instructions de boucle, de menu et de débogage, une interception d'erreur, un éditeur de ligne original et, pour les persévérants, le chaînage de programmes et des possibilités diverses d'inclure du langage machine. N'oublions pas que ses numéros de lignes, justifiées à l'époque par une simplicité d'édition, permettent de différencier différents blocs. Ainsi, j'emploie généralement cette forme classique :
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
0 ON ERROR GOTO 1000
...
100 'Programme principal
110 GOSUB 2000 'Entrées
120 GOSUB 3000 'Traitement
130 GOSUB 4000 'Sorties
140 END
...
1000 'Erreurs
...
2000 'Entrées
...
2980 RETURN
2990 '
3000 'Traitements
...
3980 RETURN
3990 '
4000 'Sorties
...
4980 RETURN
...
Sans oublier l'indentation et les commentaires qui sont malheureusement consommateurs de mémoire (limitée à un segment de données). Le problème ne se pose évidemment pas avec le compilateur.
Le Baron rouge n'avait-il pas dit que le zinc ne faisait pas le chasseur.
5  0 
Avatar de tomlev
Rédacteur/Modérateur https://www.developpez.com
Le 05/05/2014 à 11:29
Citation Envoyé par Shuty Voir le message
Ayant que très peu connu le VB, dû surement à mon jeune age. Je n'ai spécialement d'avis sur la chose.

Après avoir fait plusieurs fois joujou avec VB .Net, je n'accroche pas du tout avec la syntaxe... Ca ne tiens surement qu'à moi mais je trouve la langage un peu bordélique syntaxiquement parlant.
En fait VB/VB.NET n'ont qu'un lointain rapport avec le BASIC original dont il est question ici
4  0 
Avatar de g.besoindair
Futur Membre du Club https://www.developpez.com
Le 30/11/2014 à 16:00
Je ne suis pas informaticien, seulement ingénieur DPE, (Diplômé par l’Etat). Pour moi un langage de programmation c'est comme les math, un tournevis ou une clé à molette, c'est un outil. J'ai réalisé grâce au Basic un mémoire d'ingénieur DPE en 1994, dont le titre est : "Étude et Correction des Coupleurs Directifs à Trous Circulaires sur Guides d'Ondes Rectangulaires". Le jury de ma soutenance me fit remarquer que le choix du Basic n'était pas élégant, mais après tout c'était un mémoire d'électronique, pas d'informatique, même si l'élément important du mémoire était un programme de calcul, réalisé en Basic.
Cependant après un essai infructueux en assembleur, j'avais opté pour le Basic pour sa simplicité, sa facilité à être compilé, et le fait que l'on pouvait résoudre des formules mathématiques complexes malgré tout.
Mon programme de calcul sur guide me permettra de calculer le coupleur du radar de surveillance du Porte Avion Charles De Gaulle ainsi que le coupleur de commande du LINAC (Accélérateur Linéaire du Département National à l’Énergie du gouvernement U.S. situé aux États Unis à Argonne).
Pas mal pour du Basic et un petit ingénieur Français !...
Beaucoup d'ingénieurs ont utilisés le Basic, un grand nombre l'utilise encore !!!
4  0 
Avatar de Obsidian
Modérateur https://www.developpez.com
Le 02/05/2014 à 23:28
Citation Envoyé par Auteur Voir le message
J'ai étudié le Basic sur des MO6 et des TO7 au collège (ordinateur sans lecteur de disquette ni disque dur, mais avec un lecteur de cassette !).
Moi aussi j'ai débuté sur Thomson et y suis resté longtemps. J'ai vu l'apparition du TO7 quand j'étais en classe de CP, travaillé sur des MO5 et MO6 au CMx et au collège, avant d'avoir les miens. C'est sur ces machines que j'ai commencé à apprendre la programmation, d'abord par le BASIC puis l'assembleur 6809 pour l'exploiter pleinement. Ce n'est que beaucoup plus tard (après mon service national) que je me suis mis au langage C et les années d'assembleur qui précédaient ont bien sûr grandement facilité la chose.

par contre, je ne sais plus comment on compilait ça.
On ne compilait pas : le BASIC est en fait un langage interprété. Le BASIC intégré à nos machines, en ROM, était un peu le Python de l'époque. Pas dans son typage, mais dans son accessibilité et sa versatilité. On pouvait soit saisir directement des commandes en mode direct qui étaient alors exécutées immédiatement, soit débuter les lignes par un numéro pour les enregistrer en mémoire dans un programme qu'on lançait avec RUN et qu'on listait avec LIST.

Avez-vous connu le langage BASIC ? Qu'en pensez-vous ?
Que du bien ! Même si je ne l'utilise plus du tout aujourd'hui. Je n'ai jamais retrouvé d'environnement de développement en ligne de commande qui soit aussi facile à utiliser pour un débutant. Le nombre de primitives était limité mais très diversifié. On faisait SCREEN ou COLOR pour changer les couleurs de l'écran, LINE, CIRCLE et BOX pour tracer des formes à l'écran, PLAY pour jouer de la musique, etc.

La gestion de fichier était elle-aussi, rétrospectivement, très intéressante. Il y avait d'un côté les OPEN "I" et OPEN "O" pour les accès séquentiels et, de l'autre, OPEN "R" ou OPEN "D", synonymes, pour les accès dits « directs » ou « aléatoires ». C'était très proche dans le concept de ce qui se fait en C et avait le mérite de bien montrer la différence entre les accès séquentiels à coup de PRINT et INPUT du reste. Du coup, on pouvait piloter n'importe quoi avec : écrire sur un lecteur de cassette (oui, oui, de « cassette » audio), utiliser un port série et même piloter un modem. Comme souvent, quand on a entre les mains un langage relativement simple que l'on peut assimiler en un temps raisonnable et que, parallèlement, on était plus ou moins obligé de s'y tenir, alors on finissait tous par développer des capacités permettant de produire des choses qui allaient bien au delà de ce pourquoi le langage avait été pensé au départ. Avec mon bon vieux modem MD90-333, j'avais écrit un petit serveur Minitel à quatre voies, en mettant en place une boucle principale et en gérant toutes les connexions de façon coopérative.
3  0 
Avatar de Obsidian
Modérateur https://www.developpez.com
Le 05/05/2014 à 23:39
Citation Envoyé par Vetea Voir le message
... Mais je pleure encore mon CPC 6128 qui j'ai gardé plus de 10 ans avant de m'offrir mon premier 386 DX 40 ... Le malheureux a fini chez mon petit cousin et ... dans la benne ... !
Pour les nostalgiques du CPC :

http://www.cpcbox.com/
3  0 
Avatar de chrtophe
Responsable Systèmes https://www.developpez.com
Le 10/05/2014 à 16:21
Regardez ce que Andrew Tanenbaum disait de Linus Torvalds ...
3  0 
Avatar de patrickbaras
Membre éprouvé https://www.developpez.com
Le 17/05/2014 à 0:50
Il a fort fort longtemps, j'ai aussi commencé a programmer en Basic sur un TRS-80 Level I (une quarantaine d'instructions) avec 4 KB de mémoire et des K7 audio en guise de support de sauvegarde.

Et je me souviens de folles nuits à chercher comment économiser un byte par-ci un byte par la pour pouvoir caser les instructions nécessaires à réaliser ce que je voulais, ou, a traduire en peek et poke du langage machine Z80 pour accélérer la vitesse d’exécution de programme sur ce processeur tournant à 1,77 Mhz (pas Ghz).

Ensuite je suis passé au Level II, 4 fois plus de mémoires et finit les interminables codes a introduire pour créer une sous-routine pour calculer un cosinus/sinus/tagente avec +-*/, le basic étant étendu avec ces nouvelles instructions (cos/sin/tan).

Je pense bien que tout ce temps à me creuser les méninges, les tonnes de nom d'oiseau quand ce stupide ordinateur ne fessait pas ce que j'avais envie qu'il fasse (mais seulement ce que j'avais programmé), m'ont donné le goût de la programmation, de l'informatique et l'envie d'y faire carrière.

J'ai appris depuis d'autres langages, d'autres manières de programmer, d'autres manière de réfléchir, mais je ne renie pas mes débuts.
3  0 
Avatar de alchimyste
Nouveau Candidat au Club https://www.developpez.com
Le 18/05/2014 à 8:24
C'est vrai que Steve Wozniak était un génie en électronique. Non seulement il excellait en électronique analogique et digitale, mais aussi en programmation assembleur. A l'époque, les programmes étaient fait sur des bandes perforées !!!!! sur une sorte de machine à écrire !

Regardez le film : " les pirates de la silicon valley "



Même si Steve Jobs était un visionnaire au niveau marketing et interface utilisateur, au niveau technique, c'était Wosniak le génie, du point de vue purement technique.

Les derniers Basic ( Visual Basic, Gambas ) ne sont pas si mal foutus que cela.

De toute façon, il vaut mieux maîtriser à la perfection un langage "peu performant" ou "mal foutu" comme le BASIC que de programmer "comme un pied" dans un langage évolué.

J'ai vu des programmes fait par des ingénieurs en C beaucoup plus lent que ce que je savais faire en BASIC....

Oui, c'est vrai, au début, il y avait des goto, mais bon, il fallait voir les ordinateurs de l'époque, c'était déjà pas mal.

Au niveau du .net, il y a mono, mais bon, j'ai entendu beaucoup de mal sur mono, car même s'il est libre, il y a toujours Microsoft qui continue à imposer ses lois.

voir le liens suivant :

http://sebsauvage.net/rhaa/index.php...debat-sur-mono
4  1