Fiche technique | |
---|---|
Type de produit : | Langage de programmation |
Auteur : | Pure Software |
Date de publication : | 1992 |
Introduction
Le langage de programmation PURE Pascal un langage de programmation compatible Turbo Pascal 7 mais pour les micro-ordinateurs de la famille des Atari ST proposé par Pure Software.
Quelles sont les différences entre PURE Pascal 1.1 et Borland Pascal 7.0
Malgré la compatibilité, il existe quelques différences entre PURE Pascal et Borland Pascal. Pour la plupart, ils sont soit dictés par l'architecture de l'ordinateur et le système d'exploitation, soit liés à des constructions de langage qui ne peuvent de toute façon pas être portables.
- Chaque fois que les fonctions de la bibliothèque attendent la taille des objets comme paramètre ou la renvoient comme résultat, Borland Pascal 7.0 utilise le type de données Word, tandis que PURE Pascal utilise le type de données Longint. Cela concerne les fonctionnalités :
- Lorsque des adresses mémoire absolues sont spécifiées, Borland Pascal s'attend à ce que l'adresse soit spécifiée sous la forme d'une paire segment:déplacement. Le PURE Pascal ne prend pas en charge cette syntaxe et n'attend à la place qu'un nombre, à savoir l'adresse absolue. Cela concerne les constructions suivantes :
- Déclaration de variables absolues
- La fonction System.Ptr
- Dans le PURE Pascal, un sous-ensemble des fonctions de l'unité CRT est également implémenté dans l'unité SYSTEM. C'est pour la compatibilité avec Maxon Pascal sur Atari ST. Les fonctions suivantes sont affectées :
- ClrEol, ClrEos, ClrScr, Delay, DelLine, GotoXY, InsLine, KeyPressed, ReadKey
- Le PURE Pascal vérifie les variables de contrôle des boucles FOR plus strictement que Borland Pascal. Dans Borland Pascal, il est possible d'utiliser des variables globales et même des champs d'enregistrements comme variables de contrôle. De telles constructions conduisent à des avertissements ou des erreurs sous PURE Pascal.
- En Borland Pascal, il est possible de changer la variable de contrôle d'une boucle FOR en lui attribuant une valeur dans le corps de la boucle ou en la passant comme paramètre VAR. Certains programmes Borland Pascal l'utilisent pour quitter les boucles FOR plus tôt. En PURE Pascal, cela conduit à un message d'erreur du compilateur.
- La structure de la table des méthodes virtuelles diffère entre PURE Pascal et Borland Pascal.
- Le PURE Pascal ne prend pas en charge les méthodes dynamiques. Dans Borland Pascal, cette construction est utilisée pour une programmation pratique sous Windows.
- Les pseudo-tableaux Mem, MemW, MemL, Port et PortW de Borland Pascal, permettant un accès direct à la mémoire, ne sont pas implémentés dans Pure Pascal.
- Le PURE Pascal ne prend pas en charge l'assembleur (mots réservés ASM, ASSEMBLER) en ligne ou les directives en ligne. Bien sûr, les programmes utilisant ces constructions ne seraient de toute façon pas portables.
- Le Borland Pascal ne remarque pas si la même constante est utilisée plusieurs fois comme étiquette CASE dans une instruction CASE. Le PURE Pascal détecte cette erreur.
- Dans PURE Pascal, les variables et les champs d'enregistrement sont automatiquement alignés sur les limites des mots s'ils ont une taille de deux octets ou plus. Cet alignement est obligatoire pour le processeur 68000, sur les processeurs 68020, 68030 et ultérieurs, il augmente l'efficacité du code machine généré. Dans Borland Pascal, les variables sont alignées sur les limites des mots uniquement lorsque le drapeau $A+ est défini, mais jamais les champs d'enregistrement. Cette incompatibilité peut entraîner des difficultés, par exemple, lorsque des fichiers contenant des données binaires doivent être échangés entre les deux systèmes. Cependant, cela est de toute façon très difficile.
- En raison du processeur 68000, le PURE Pascal entrepose en interne des objets de données de deux octets ou plus différemment que Borland Pascal. Dans PURE Pascal, l'octet le plus significatif se trouve dans l'adresse la plus basse, dans Borland Pascal, c'est l'octet le moins significatif. Cette incompatibilité peut entraîner des difficultés, par exemple, lorsque des fichiers contenant des données binaires doivent être échangés entre les deux systèmes.
- Les types de données ByteBool, WordBool et LongBool ne sont pas pris en charge dans PURE Pascal. Dans Borland Pascal, ils ne sont utilisés que pour la programmation pratique de programmes pour Windows. De tels programmes ne peuvent de toute façon pas être portés sur l'Atari ST, Windows n'y est pas disponible.
- Contrairement à Borland Pascal, le Pure Pascal ne prend pas en charge les bibliothèques de liens dynamiques (DLL) car celles-ci ne sont pas disponibles sur l'Atari ST.
- Le type de données Comp (entier 64 bits) n'est pas disponible sur l'Atari ST car le coprocesseur 68881/2 ne prend pas en charge ce type de données.
Dans tous les cas, il est possible d'utiliser à la place des paramètres de type de données Word ou d'affecter les résultats à des variables de type Word. La taille des objets doit alors naturellement être inférieure à 64 Ko.
Les programmes développés sous Borland Pascal et utilisant CRT peuvent toujours être compilés sous PURE Pascal sans aucun problème - l'unité CRT est entièrement disponible. Si nécessaire, l'instruction "Uses Crt" doit être insérée dans les programmes ayant été développés sous PURE Pascal afin qu'ils puissent également être compilés sous Borland Pascal.
Liste des versions
Nom | Date de publication |
---|---|
PURE Pascal 1.0 | 1992 |
PURE Pascal 1.1 | 1993 |
Pure Pascal 1.1.1 | 1995 |