Aspects du système APL 90 : Une extension orientée objet du langage APL

Le langage APL a été défini en 1962 par K.E. Iverson dans un ouvrage intitulé " A Programming Language " [Iverson62]. En dépit des difficultés nouvelles que ce langage posait aux concepteurs, des interprètes APL furent rapidement disponibles chez I.B.M. [Chomat71, Iverson73]. Ce langage s'étant d'emblée révélé intéressant pour toutes les applications réclamant plus de programmation que de longs calculs, plusieurs systèmes virent le jour chez d'autres constructeurs [Martin72, Girardot76]. Réalisés pour la plupart sur de gros ordinateurs, ils réclament des ressources hors de proportion avec les moyens habituels mis à la disposition des ingénieurs ou des étudiants. Parallèlement de nombreux travaux de recherche ont été menés afin d'accélérer l'interprétation du langage. P.S. Abrams fut le premier à introduire certaines notions fondamentales d'optimisation comme le beating devenu classique de nos jours. Il a également envisagé la construction d'un matériel muni d'un code machine très voisin du langage APL [Abrams70]. D'autres approches ont consisté à réaliser un maximum de fonctions au niveau matériel, en microprogrammant un sous-interprète scalaire ou vectoriel, et en rédigeant ensuite, dans l'APL restreint ainsi obtenu, l'interprète complet. L'étude des divers systèmes existants montre que les architectures purement logicielles, utilisant presque toujours une technique d'interprétation naïve sont les plus répandues. Cependant, même si les architectures sont restées identiques, l'évolution des techniques d'implantation a permis des progrès considérables. De fait, il semble assez difficile de progresser beaucoup dans une voie purement logicielle si ce n'est par des approches radicalement différentes comme celles décrites dans [Hewlett77]. Ce système APL réalisé sur HP 3000 est en fait un compilateur incrémental générant pour chaque ligne de code qu'il exécute pour la première fois, un fragment de code machine. , Une signature associée à ce code permet de savoir ultérieurement si la réutilisation de ce code est possible.

Data and Resources

Additional Info

Field Value
Source https://theses.hal.science/tel-00829941
Author Sako, Séga
Maintainer CCSD
Last Updated May 10, 2026, 21:13 (UTC)
Created May 10, 2026, 21:13 (UTC)
Identifier tel-00829941
Language fr
Rights https://about.hal.science/hal-authorisation-v1/
contributor Département Informatique - ENSMSE ; École des Mines de Saint-Étienne (Mines Saint-Étienne MSE) ; Institut Mines-Télécom [Paris] (IMT)-Institut Mines-Télécom [Paris] (IMT)
creator Sako, Séga
date 1986-12-05T00:00:00
harvest_object_id 784e1512-129d-4f6f-9c51-f1bec425e4fe
harvest_source_id 3374d638-d20b-4672-ba96-a23232d55657
harvest_source_title test moissonnage SELUNE
metadata_modified 2026-01-19T00:00:00
set_spec type:THESE