Discussion:Basic (langage)

Dernier commentaire : il y a 5 mois par JulesROGUE dans le sujet Bonjour,Basic ou basic , pourquoi y'en n'a t'il deux ?
Autres discussions [liste]
  • Admissibilité
  • Neutralité
  • Droit d'auteur
  • Article de qualité
  • Bon article
  • Lumière sur
  • À faire
  • Archives
  • Commons


compilateur GNU de BASIC modifier

Est-ce qu´il ya un compilateur GNU de BASIC, qui produit directement de la langage de la machine?

Bonjour, Il y a FreeBasic, qui est très bien guffman 24 octobre 2005 à 03:12 (CEST)Répondre


Sur ma version de QBasic, il y a un compilateur (la 4.5)

Basic ne contient pas de ramasse-miettes modifier

L'article indique que basic inclut un ramasse-miette. Il me semble que c'est une erreur. La gestion de la mémoire est réduite à sa plus simple expression : la mémoire n'est pas désallouée avant la fin de l'exécution du programme.


réponse : ça dépend sûrement

Basic est un langage, l'existence d'un ramasse-miette dépend de l'implémentation dont on parle. Pour le Basic historique (celui avec les numéros de lignes et tout ça, pas les trucs modernes des années 80 vaguement imités de Pascal) il me semble qu'un tableau était alloué lors de sa déclaration, et qu'il était défendu de le réallouer. Les tableaux étant les seuls objets alloués dynamiquement, ramasse-miettes, pourkoifère ? --Schtong 4 février 2006 à 18:31 (CET)Répondre

QBASIC et Quick BASIC modifier

conduisent à des articles séparés

sont-ce des dialectes différents? to£°$ç 12 avr 2005 à 23:26 (CEST)

Oui. Les articles de Wikipedia Anglais indiquent que en:QBasic est basé dessus en:QuickBASIC. Comparé à QuickBASIC, QBASIC est limité. Ae-a 14 avr 2005 à 00:04 (CEST)

BASIC ou Basic?? modifier

Je pencherai pour la premiere solution, le nom étant également un acronyme.

Bug lien modifier

Salutations,

il y'a un problème avec le lien vers la "communauté QBasic mourante", si quelqu'un pouvait trouver le problème...

Joachim Desoutter (Jojosan) 11 décembre 2005 à 10:43 (CET)Répondre

Interpréteur modifier

Je ne suis pas certain du fait que le BASIC interprété n'est apparu qu'avec les premiers ordinateurs individuels (exemple Apple II, PET de Commodore). J'ai utilisé dés 1973 un système de temps partagé chez Télésystème (TS) qui avait un BASIC ou il suffisait de taper (sur un télétype)les lignes de programme puis RUN pour avoir le résultat immédiatement. Je me souviens également que TS a ensuite utilisé (1976 ?) un nouveau système appelé DTSS pour Dartmouth Time Sharing System qui avait un BASIC interprété. Pour le Fortran qui était également disponible, il fallait d'abord utiliser une phase de compilation (COMPILE) avant de pourvoir exécuter le programme.

Je confirme,

pour avoir utilisé à la fin des années 70 un Basic sur un IRIS 80 de notre vénérable compagnie nationale avec un accès en temps partagé (CN/SSTS) sous Siris 7/8. Il y avait des choses du même genre sur Mini-6. C'est terrible quand on vieillit, les cauchemards de jeunesse reviennent :-) --Schtong 4 février 2006 à 18:37 (CET)Répondre

Lien externe mort modifier

Bonjour,

Pendant plusieurs vérifications automatiques, un lien était indisponible. Merci de vérifier si il est bien indisponible et de le remplacer par une version archivée par Internet Archive si c'est le cas. Vous pouvez avoir plus d'informations sur la manière de faire ceci ici. Merci également de vérifier que d'autres liens de l'article ne sont pas morts. Les erreurs rapportées sont :

  • http://www.nupedia.com/
    • Dans Basic, le Fri Jan 20 21:32:54 2006, Socket Error: (110, "Connexion termin\xc3\xa9e par expiration du d\xc3\xa9lai d'attente")
    • Dans Basic, le Sat Jan 21 11:06:47 2006, Socket Error: (110, "Connexion termin\xc3\xa9e par expiration du d\xc3\xa9lai d'attente")

Eskimbot 21 janvier 2006 à 12:21 (CET)Répondre

Le lien Français --> Anglais marche entre Français et Anglais mais pas dans le sens inverse modifier

Bonjour,

J'ai remarqué que le lien de la page Anglaise vers la page Française n'existait pas. Alors que l'inverse existait. Comment remédier au problème?

Salutations

  Fait. Jean-Christophe BENOIST (d) 23 février 2010 à 09:26 (CET)Répondre

problème dans l'article modifier

Le problème de cet article est qu'il mélange bien des aspects du BASIC et certains ne sont pas trop développés.

De mon point de vue (personnel),

  • Le langage BASIC à une importance considérable étant donné qu'il était le système de base de pratiquement tous les ordinateurs 8 bits et qu'il équipait aussi les premiers IBM PC (on peut dire qu'à cette époque le BASIC servait d'interface avec le système d'exploitation et jouait un rôle similaire au COMMAND.COM du MS-DOS).
  • ensuite, on ne peut pas mélanger le langage BASIC utilisant les numéros de ligne (BASIC non structuré par nature) avec le BASIC structuré ressemblant au Pascal
  • Par la suite Microsoft a utilisé le langage BASIC comme support de macrocommandes et (c'est pas trop mon domaine) de programmation disons objet et événementielle

On voit donc que l'utilisation que Microsoft fait aujourd'hui (VB .NET) est diamétralement opposée à l'utilisation qu'en faisait Microsoft au début des années 90 avec Quick BASIC (dont les descendants aujourd'hui sont des logciels open source comme FreeBASIC ou QB64).

pour résumer on a trois périodes :

  • BASIC utilisé comme interpréteur de commandes, et un listing linéaire sans structure
  • un BASIC structuré mais ayant toujours un listing
  • un BASIC "objet" où il n'y a plus vraiment de listing mais des procédures attachés à des objets

cela reste mon avis.

Zizomis (d) 1 septembre 2010 à 01:14 (CEST)Répondre


Tout à fait d'accord sur pas mal de points! cet article me semble complètement à recycler.
La simple traduction des "interprètes" me hérisse le poil!
On dit "interpréteur" (certes à tort d'un point de vue purement académique) dans le Jargon depuis... aussi loin que je me souvienne!
interpréteur
Qu'il utilise ou non les numéros de ligne est un faux problème! TOUS les langages (Windev, Java, Perl, etc...) utilisent des numéros de lignes, fut-ce en interne...
Il faut arrêter avec ces âneries!
Autrefois, il fallait les entrer à la main, certes.
Maintenant, les Environnements de développement intégrés le font à votre place, c'est tout!
Prenez pour exemple un Business Basic (en) des années 80: listez un programme, collez-le dans l'IDE d'un BBJ ou ProvideX et lancez une macro de retrait des numéros de lignes... Ô miracle, âpu numéro! Mais alors, c'est plus du BASIC?
Ben si... Sauf que son interpréteur est écrit en Java
Ce n'est pas à ça que l'on reconnaît un BASIC!

La notion d'Objet est une évolution on ne peut plus notable, là, je suis d'accord à 100%.

Mais dire qu'il est impossible de faire des programmes structurés avec des "BASICs utilisant des numéros de lignes" est faux depuis que des éditeurs ont intégré à leurs langages la notion de fonctions (def fn, par exemple).
De tels programmes, écrits dans les années 1980, ont évolué et évoluent encore aujourd'hui (c'est partiellement mon job)!

Je suis également d'accord sur l'importance considérable du BASIC, en particulier dans les années 1970-1980, et as seulement pour les PC... Bon nombre de machines s'en servaient comme d'une interface avec les couches inférieures (on peut citer notamment les machines MAI (en)

En bref, je suis d'accord, il y a beaucoup à réécrire, de préférence par des acteurs de l'époque ou des utilisateurs actuels!

Amicalement (même si je m'emporte parfois... et je m'en excuse)!

--Isharfoxat (d) 27 octobre 2010 à 03:01 (CEST)Répondre

PS: j'ai beaucoup apprécié ta Liste_des_dialectes_BASIC, que je recommande chaudement aux amateurs avertis et que je compléterais avec plaisir si j'en trouve le temps!
Plutôt d'accord avec ce que tu dis, sauf sur l'aspect "impossible de faire des programmes structurés avec des "BASICs utilisant des numéros de lignes est faux". Avec les Basic originaux, qui ne supportent QUE les n° de lignes et pas les structures évoluées do..while ou les def fn, c'est vrai, à moins d'affirmer qu'il est possible de faire de la programmation structurée en langage machine, ce qui peut aussi se défendre, mais qui est abusif. De toutes manières, je pense qu'un des points les plus important est de commencer à trouver une bonne SOURCE sur le sujet, et de travailler à partir de celle-ci pour ce genre d'affirmations "qui se discutent". Cordialement JC
En effet, il y a un continuum entre des langages dans lesquels le flot de contrôle n'est manipulé que par des GOTO (programmation « totalement » non structurée) et des langages dans lesquels il n'y a plus ni GOTO ni labels (« vraie » programmation structurée). BASIC a clairement évolué, passant de dialectes et d'utilisations peu structurées, pour aboutir aux dialectes de type Quick Basic qui sont équivalents à Pascal du point de vue de la structuration. Mais on peut quand-même dire que la suppression des numéros de ligne représente une étape à partir de laquelle le programmeur est vivement incité à programmer de façon structurée.
ChrisJ (d) 27 octobre 2010 à 19:48 (CEST)Répondre

plusieurs erreur sur l'article modifier

1. En basic "non structuré" la boucle for/next n'était pas la seule existante. La plupart des basics supportaient soit while/wend soit repeat/until. 2. Il etait possible d'executer plusieurs instructions lors d'un test. Elles devaient se trouver sur la même ligne que le test. Le nombre de caracteres par ligne etant limité il fallait souvent avoir recours à des sous programes via l'instruction gosub. 3. Le basic n'est pas sensible a la casse ainsi la variable ETOILE ou etoile ou Etoile représentent la même antitée. 4. Dans le programme exemple, l'utilisation des variable n'est pas optimisée. Ainsi la variable Etoile$ ne devrait pas etre reutilisé pour le test final permettant de recommencer. Ceci afin d'éviter des effets de bords sur des programmes plus complexes et d'en améliorer la lisibilité 5. En parlant d'effets de bords, il etait de bon alloi d'initialiser toutes les variables avec des valeurs de départ en début de programme. Meme si cette étape n'était pas obligatoire. Par la suite certains basic structurés rendront même la déclaration de ces variables obligatoires à l'instar du Pascal

1. faux pour les BASICS avant 1970 --Lf69100 (discuter) 17 février 2015 à 11:09 (CET)Répondre

Acronyme ou rétroacronyme ? modifier

Le changement (s'il y a lieu devrait être supporté par une source), mais la phrase suivante aurait aussi besoin d'une source (j'ai jeté un coup d’œil rapide sur wp:en, rien de très sérieux, mais j'ai peut-être loupé quelque chose).

L'acronyme BASIC est lié au titre d'un article de Kurtz qui n'a pas été publié et n'a aucun rapport avec les séries intitulées « Anglais basic » de Charles Kay Ogden. Les concepteurs du langage souhaitaient qu'il soit du domaine public, ce qui favorisa sa diffusion.

J'ai trouvé un article intéressant, mais il ne tranche pas la question:

Murnane, John S. "And They Were Thinking? Basic, Logo, Personality and Pedagogy." History of Computing. Learning from the Past. Springer Berlin Heidelberg, 2010. 112-123. pdf

À suivre... --Anneyh (discuter) 22 janvier 2014 à 00:06 (CET)Répondre


Bonjour,
À partir du moment où on écrit « BASIC est un acronyme pour Beginner's All-purpose Symbolic Instruction Code », alors on peut écrire « est un rétroacronyme » sans risque d'erreur... par définition même du rétroacronyme (le terme « basic » existant bien avant le langage informatique du même nom).
GerardVinci (discuter) 29 janvier 2014 à 23:33 (CET)Répondre

perspectives biaisées modifier

Au départ, Basic a été puissamment promu par GE et Hewlett-Packard, par le biais du temps partagé, qui ne demandait qu'une connexion et un téléscripteur. Sur son réseau, GE mit en ligne un des premiers didacticiels : basic en 29 leçons, qui visait l'utilisateur de base par dessus les informaticiens.

IBM, plus centraliste, voulait se limiter au télétraitement, qui demandait lecteur de cartes et imprimante, et prit ombrage du Basic, l'ignorant puis le Fortranisant.

Sur l'IBM 5100 (petit écran, texte jaune sur fond vert) le choix était entre Basic et APL (en ROM sélectionnée par commutateur, sans code commun).

Au fil des ans, les langages évoluent sous l'influence des fournisseurs (qui veulent toujours offrir "toujours plus" que le voisin ou que la norme, en proposant une abondance confuse de standards), de gros clients jaloux de leur indépendance, favorables aux normes, et d'universitaires pour qui la rationalité est importante.

La tendance Dijkstra/Lecarme correspond à la tendance rationaliste.

Il est d'ailleurs intéressant de confronter les motivations des langages "didactiques" comme Basic, LSE, Logo ou Pascal. Tandis que Basic encourage un développement par approximations successives, Wirth prône qu'un programme dont l'analyse n'est pas terminée ne mérite pas d'être écrit.

Basic reste utile et intéressant s'il reste dans son domaine : petite programmation et maquettage. La programmation lourde exige d'autres langages -- notamment en ce qui concerne la fiabilité des applications, ou l'emploi de modules génériques.

Enfin, sur divers points polémiques, chacun a raison dès lors qu'il précise de quel Basic il parle (nom, système, année). Si on chantait la gloire passée des GOSUB n°de ligne qui permettaient de multiplier les points d'entrée d'un même sous-programme ? Ou du RETURN n°de ligne, permettant de sortir d'une subroutine en continuant ailleurs qu'au point d'appel - par exemple en cas d'erreur?

Peut-être faudrait-il clarifier le texte, en chassant des détails dans des tableaux (comparatifs ou chronologie).

--Lf69100 (discuter) 14 février 2015 à 16:15 (CET)Répondre

Sources modifier

Il manque beaucoup de sources à cet article. Est-ce quel aurait des sources à proposer ? Jeanne Angerie (discuter) 18 juillet 2022 à 11:48 (CEST)Répondre

Bonjour,Basic ou basic , pourquoi y'en n'a t'il deux ? modifier

Tout est dans le titre. JulesROGUE (discuter) 6 décembre 2023 à 16:31 (CET)Répondre

Revenir à la page « Basic (langage) ».