ABC (langage de programmation) - ABC (programming language)

abc
Paradigmes multi-paradigme : impératif , procédural , structuré
Conçu par Léo Geurts, Lambert Meertens , Steven Pemberton
Développeur Centrum Wiskunde & Informatica (CWI)
Première apparition janvier 1987 ; il y a 34 ans ( 1987-01 )
Version stable
1.05.02 / 1990 ; il y a 31 ans ( 1990 )
Discipline de frappe fort , polymorphe
Système d'exploitation Unix-like , Windows , MacOS et Atari TOS
Site Internet pages d'accueil .cwi .nl /~steven /abc /
Influencé par
SETL , ALGOL 68
Influencé
Python

ABC est un langage de programmation à usage général impératif et un environnement de développement intégré (IDE) développé au Centrum Wiskunde & Informatica (CWI), Pays - Bas par Leo Geurts, Lambert Meertens et Steven Pemberton . Il est interactif, structuré, de haut niveau et destiné à être utilisé à la place de BASIC , Pascal ou AWK . Il est destiné à l'enseignement ou au prototypage, mais pas comme langage de programmation système.

ABC a eu une influence majeure sur la conception du langage Python , développé par Guido van Rossum , qui avait auparavant travaillé pendant plusieurs années sur le système ABC au milieu des années 1980.

Caractéristiques

Ses concepteurs affirment que les programmes ABC sont généralement environ un quart de la taille des programmes équivalents Pascal ou C , et plus lisibles. Les principales caractéristiques comprennent :

ABC était à l'origine une implémentation monolithique , entraînant une incapacité à s'adapter aux nouvelles exigences, telles que la création d'une interface utilisateur graphique (GUI). ABC n'a pas pu accéder directement au système de fichiers et au système d'exploitation sous-jacents .

Le système ABC complet comprend un environnement de programmation avec un éditeur de structure ( éditeur orienté syntaxe), des suggestions, des variables statiques (persistantes) et plusieurs espaces de travail, et est disponible en tant qu'interpréteurcompilateur . À partir de 2020, la dernière version est la 1.05.02, et elle est portée sur Unix , DOS , Atari et Apple MacOS .

Exemple

Un exemple de fonction pour collecter l'ensemble de tous wordsdans un document :

HOW TO RETURN words document:
   PUT {} IN collection
   FOR line IN document:
      FOR word IN split line:
         IF word not.in collection:
            INSERT word IN collection
   RETURN collection

Les références

Liens externes