Les archives du langage de programmation cT

[Page d’accueil VPython]

Bref historique de cT

Le langage de programmation cT a été développé entre 1985 et 2000 au Centre de conception d’informatique pédagogique de l’Université Carnegie Mellon de Pittsburgh (le Centre a été renommé plus tard Centre de l’innovation en apprentissage; il a cessé ses activités en 2002). Les développeurs étaient David Andersen, Bruce Sherwood, Judith Sherwood et Kevin Whitley. L’impulsion initiale était la nécessité d’un environnement de programmation convivial, orienté souris et graphiques, destiné aux professeurs et aux étudiants utilisant les stations de travail Unix « 3M » de la nouvelle génération (un million d’octets de mémoire, un million de pixels et un million d’instructions par seconde). ).

La facilité d’utilisation était importante car l’alternative, écrire en C et utiliser des bibliothèques graphiques très complexes, dépassait les capacités de la plupart des utilisateurs. Un autre problème était qu’à cette époque le logiciel de fenêtrage évoluait rapidement, de sorte que les programmes écrits en C qui utilisaient des graphiques ou la souris devenaient rapidement obsolètes. De plus, il est vite devenu évident que tout le monde n’utiliserait pas les stations de travail Unix, grâce aux capacités croissantes des micro-ordinateurs populaires, notamment Macintosh et IBM PC. Cela donnait la priorité à l’exécutabilité multiplate-forme de programmes graphiques, ce que C n’offrait pas, mais cT.

cT était basé sur des langages antérieurs utilisés par les auteurs de matériel pédagogique informatique écrit pour le système d’enseignement informatisé PLATO mis au point à l’Université de l’Illinois à Urbana-Champaign. cT est une petite-fille du langage TUTOR initié en 1967 et une fille du langage MicroTutor initiée en 1977. cT diffère des dialectes précédents en ce qu’elle est conçue pour l’interface utilisateur graphique moderne (fenêtres et souris). Voici une reproduction du manuel The TUTOR Language écrit en 1977 par Bruce Sherwood.

Le cT a été utilisé à diverses fins, mais son principal créneau était la création de programmes d’éducation. De nombreux programmes éducatifs primés ont été écrits en cT, en particulier dans le domaine de la physique.

À l’automne 1997, Ruth Chabay et Bruce Sherwood ont enseigné le cT à des étudiants d’un cours d’introduction à la physique à Carnegie Mellon. Ils ont également utilisé cT pour modéliser des systèmes physiques à l’aide d’animations graphiques du comportement du système. Grâce à sa facilité d’utilisation, il était possible en une heure ou deux d’enseigner un sous-ensemble adéquat de cT aux étudiants pour les besoins du cours de physique, même pour les nombreux étudiants qui n’avaient jamais écrit un programme informatique auparavant.

Cette approche a été répétée à l’automne 1998. David Scherer, étudiant en première année en informatique, était inscrit au cours. L’année suivante, il recherchait un projet intéressant sur lequel travailler et proposait de créer un environnement de programmation alternatif que les étudiants pourraient utiliser dans le cours de physique. Son espoir était de rendre la programmation encore plus facile pour les novices, tout en leur permettant de créer des animations 3D navigables en temps réel, alors que cT n’offrait que des graphiques 2D. Avec l’aide de David Andersen, Ruth Chabay, Ari Heitner, Ian Peters et Bruce Sherwood, au printemps et à l’été 2000, Scherer a créé l’environnement de programmation VPython, qui a été déployé lors du cours de physique de l’automne 2000. La nette supériorité de VPython, avec ses graphiques 3D orientés objet faciles à utiliser, a conduit à la décision d’arrêter le développement de cT et de se concentrer sur VPython.

Archivées ici sont des versions de l’environnement de programmation cT pour Windows, Macintosh et Linux, ainsi que le code source du domaine public pour ces environnements. Aucun support n’est actuellement disponible pour ces matériaux, mais vous êtes libre de faire ce que vous voulez avec eux.

Informations complémentaires:

vpython.org Télécharger VPython

glowscript.org Un environnement de programmation 3D similaire à VPython, mais s’exécutant dans un navigateur

matterandinteractions.org Informations sur le programme de physique

Vue d’ensemble de cT

Vous ne devriez pas commencer à utiliser cT maintenant, car il n’est plus pris en charge. Voir vpython.org à la place. Les documents suivants sont disponibles sous forme d’archives présentant un intérêt historique.

Le langage de programmation cT est un langage algorithmique tel que C, Pascal, Fortran et Basic, mais considérablement enrichi par des fonctionnalités multimédias, notamment une prise en charge conviviale des graphiques couleur, des interactions de souris et même des films au format QuickTime ou Vidéo pour Windows.

Le langage de programmation cT offre facilement

programmabilité des programmes multimédia, avec
la portabilité sur Macintosh, Windows, Linux et Unix.

L’environnement de programmation cT offre

aide en ligne avec des exemples de programmes exécutables,
un éditeur graphique pour la génération automatique de commandes graphiques,
la compilation incrémentielle pour permettre des délais rapides, et
diagnostic d’erreur détaillé.

cT a été développé par David Andersen, Bruce Sherwood, Judith Sherwood et Kevin Whitley au Centre d’innovation en apprentissage de l’Université Carnegie Mellon à Pittsburgh. cT est une marque commerciale de Carnegie Mellon University.

1. Quand est-ce que cT était le bon outil?
2. Principales caractéristiques du langage cT
3. Principales caractéristiques de l’environnement de programmation cT
4. Obtenir du cT gratuitement
5. Exemples de programmes inclus avec cT
6. cT Références
_______________________________________________________________________
Quand est-ce que cT était le bon outil?

Il ne serait pas prudent de commencer à utiliser cT maintenant, car il n’est plus pris en charge. Les documents suivants sont disponibles sous forme d’archives présentant un intérêt historique.

Il existe de nombreuses excellentes applications disponibles pour créer des images et des diagrammes, ainsi que pour réaliser des présentations multimédias, sans avoir à écrire votre propre programme informatique.

Cependant, il est parfois difficile de faire quelque chose de vraiment nouveau et différent avec ces applications non programmables, car elles ne permettent souvent pas un contrôle suffisant des interactions et une capacité de calcul suffisante pour faire ce que vous voulez vraiment.

cT offre la flexibilité et la puissance illimitées associées aux langages de programmation, mais élimine bon nombre des difficultés et complexités généralement associées à l’utilisation d’un langage de programmation.

Principales caractéristiques du langage cT

graphiques interactifs dans des environnements fenêtrés
portabilité instantanée sur Macintosh, Windows, Linux et Unix
support pour QuickTime et Video for Windows
animation d’images bitmap
Prise en charge de la couleur pour la palette et la vraie couleur
prise en charge intégrée des boutons, des curseurs et des panneaux de texte défilants
variables de texte et de chaînes de caractères à polices multiples
Texte « à chaud » (pour les applications hypertextes)
menus déroulants
entrées souris et clavier
redimensionnement facultatif du texte et des graphiques pour s’adapter à la fenêtre
analyse de mots et de phrases
analyse des nombres et des expressions algébriques
options de séquençage riches
capacités de calcul standard
fichiers numériques et texte

Principales caractéristiques de l’environnement de programmation cT

environnement intégré d’édition et d’exécution
compilation incrémentale pour une révision et une exécution rapides
manuel de référence en ligne avec des exemples exécutables
éditeur graphique qui génère des instructions graphiques cT
diagnostic d’erreur précis et informatif
une suite complète de programmes exemples sous forme de source

Obtention de cT

Téléchargez gratuitement cT 3.0 pour Windows, Macintosh ou Linux: Cliquez ici pour afficher le contrat de licence et télécharger cT.

Les programmes écrits en cT s’exécutent de manière compatible sur toutes ces machines, sans aucune modification. Il suffit de transférer le fichier et de le compiler.

cT était auparavant distribué par Physics Academic Software, que nous remercions pour leur travail professionnel au nom de cT. L’utilisation très répandue du Web a rendu approprié le recours à un mécanisme de distribution réseau.

Exemples de programmes inclus avec cT 3.0

Voici une description des programmes cT disponibles sur la page de téléchargement de cT pour vous donner des idées pour votre propre travail:
Général

échantillon – Ce programme est un échantillonneur de nombreuses fonctionnalités de base de cT: graphiques couleur, animations, menus déroulants, clics et déplacements de souris, texte multi-polices, texte « chaud », calculs, représentation graphique des fonctions et réponses une analyse. Après avoir exécuté le programme, vous voudrez peut-être étudier le code du programme pour voir comment les effets sont obtenus.
exercice – Une série d’exercices pour vous aider à apprendre les concepts de base de la programmation dans cT. Le programme contient un certain nombre d’unités incomplètes avec des suggestions sur la façon de les compléter. L’aide cT contient les informations nécessaires pour effectuer ces exercices.
editfile – Une version plus complexe de l’exemple décrit dans « Une application d’édition de fichier ». La version de editfile.t lit et écrit des fichiers stylisés contenant plusieurs sections (c’est-à-dire créées avec plusieurs dataout-s).
showicon – Un programme qui affiche les icônes dans un fichier d’icônes. Cela peut être utile pour sélectionner des numéros d’icônes à utiliser dans une commande de tracé, de déplacement, de curseur ou de motif.
icon – Programme de conception d’icônes, de curseurs et de modèles, sauf sur Macintosh, pour lequel le programme Icon Maker est fourni.
japan – Ce programme affiche les caractères japonais « Kanji » à l’aide d’un ensemble d’icônes « KANJI18.FCT ».

Graphique

draw – Editeur de dessin de base, avec de nombreuses fonctionnalités des éditeurs de dessin commerciaux, telles que le regroupement d’objets, l’application de motifs, de couleurs et de flèches et la conception de votre propre palette de couleurs. Les dessins sont enregistrés sous la forme de code source cT, vous pouvez donc trouver draw.t utile dans la création de portions de vos propres programmes, y compris les commandes de la palette de couleurs. Ce programme illustre également une approche de la programmation « orientée objet » dans cT.
map – Un petit programme qui affiche une carte des 48 états contigus des États-Unis, avec une possibilité de zoom avant et arrière.

Couleur

palette – Un fichier d’utilisation qui fournit un ensemble de couleurs supplémentaires utiles au-delà des huit couleurs de base cTT, y compris les versions rouge foncé, vert foncé et clair, normales et sombres de cerise.
setcolor – Un fichier d’utilisation qui vous permet de tester la couleur d’un objet dans le contexte de votre programme en cours d’exécution. Ceci est utile pour décider de la couleur exacte de l’objet par rapport aux autres éléments de votre affichage.
chaos – Un complot du chaos dans un schéma simple de croissance démographique. Habituellement, ce qui est tracé est juste la population de l’état final. Ce programme utilise des teintes allant du bleu au rouge pour montrer l’approche à l’état final. Les points rouges correspondent à l’intrigue habituelle.
spiro – Créez des motifs colorimétriques en choisissant le nombre total de sommets et le nombre de sommets à ignorer. Il utilise le fichier d’utilisation colorpic.t.

Vidéo

video – Un programme qui donne un exemple sur la façon de construire votre propre contrôleur vidéo à usage spécifique, en utilisant les commandes vidéo de base. Ce fichier peut être utilisé comme fichier d’utilisation par d’autres programmes. Un court clip vidéo à des fins de test est fourni pour Macintosh et Windows.

Jeux

BigForty – Un jeu de cartes solitaire qui utilise des zones tactiles pour que les routines de gestion d’événements soient automatiquement pilotées. il n’y a pas de commandes de pause dans le programme. Le programme utilise le fichier d’utilisation animate pour offrir la possibilité de faire glisser des cartes en douceur sur l’arrière-plan sur des ordinateurs suffisamment rapides.
rilato – Un jeu de type Mah Jong dans lequel vous associez des paires de tuiles correspondantes. Les paires peuvent être des éléments chimiques et leurs symboles, les présidents américains et leurs années de mandat, les rois anglais et leurs années de règne, ou les États américains et leurs capitales. Vous pouvez également créer vos propres listes de paires.

Physique et maths

grapher – Résout et représente graphiquement des systèmes d’équations différentielles algébriques ou ordinaires. Ce programme a été primé au concours de logiciels éducatifs de la revue Computers in Physics de 1990 (sept./oct. 1990, p. 540). Le programme comprend une explication interactive sur la façon d’utiliser le programme.
colline – Dessinez une colline avec la souris, placez un bloc sur la colline, donnez-lui une vitesse initiale et regardez-la bouger. S’il y a une vallée, le bloc peut bouger d’avant en arrière pour toujours (pas de friction) ou s’immobiliser lentement (si vous ajoutez une friction avec le curseur). Pendant que le bloc se déplace, des graphiques à barres affichent l’énergie cinétique, potentielle et totale. Au début du programme, le programme effectue une mesure pour déterminer la taille de l’étape d’animation, afin que l’animation s’exécute à peu près à la même vitesse sur les ordinateurs rapides et lents.
orbite – Lancez un satellite près de deux « terres » immobiles et observez les orbites inhabituelles qui en résultent. À la fin du fichier se trouve une procédure d’intégration numérique Runge-Kutta du 4ème ordre qui peut être utile dans d’autres contextes.
optique – Placez l’objectif et les miroirs le long d’un banc, puis faites un flash. Les rayons sont dispersés et courbés par les éléments optiques, produisant une tache sur un morceau de film. Il y a une explication interactive sur la façon d’utiliser le programme.
quantumw – Etudiez le comportement quantique d’un électron dans divers types de puits potentiels. Si le puits est symétrique, les états liés ont des fonctions d’onde symétriques.
sonar et tension – Exemples simples de logiciels de laboratoire basés sur micro-ordinateurs. Connectez une interface de laboratoire universelle (ULI) et Sonic Ranger (distribuée par Vernier Software de Portland, Oregon, téléphone 503-297-5317) au port série d’un ordinateur Macintosh ou MS-DOS, et le sonar suivra votre mouvement devant le détecteur de mouvement. Si vous ne possédez pas cet équipement, utilisez la souris pour créer des mouvements représentés à l’écran. La tension de programme utilise ULI pour tracer la tension en fonction du temps.
xyplot – Trace une fonction de deux variables, f (x, y), en utilisant un ensemble d’icônes de densités de points différentes (fichier d’icônes aléatoire).

Programmes inter-ordinateurs utilisant des sockets

InterDraw – Exécutez ce programme sur deux ordinateurs Macintosh différents dans la même zone AppleTalk, ou sur deux stations de travail Unix différentes sur le même réseau (à condition qu’un serveur cT ait été établi), et que deux personnes puissent dessiner l’une sur l’autre ou exécuter deux copies. du programme sur un poste de travail Unix. Ce programme est un exemple simple d’utilisation de la commande socket pour lier des programmes distincts.
Battleship – Le jeu de « cuirassé » classique joué sur deux Macintosh différents dans la même zone AppleTalk ou sur deux stations de travail Unix en réseau (à condition qu’un serveur cT ait été établi). Ceci est un autre exemple d’utilisation de la commande socket. Il fournit également un autre exemple de la programmation orientée objet dans cT. Le programme utilise le fichier d’icônes SHIPicn.
_____________________________________________________________
cT Références

Le numéro de mars / avril 1993 de la revue « Computers in Physics » (p. 136) contient un article de Bruce Sherwood et David Andersen décrivant cT et diverses applications écrites en cT.
Un article de David Andersen et Bruce Sherwood dans le numéro de novembre 1991 de Byte Magazine (p. 221) contient des informations sur certaines des questions liées à l’indépendance des machines.

Page source: http://vpython.org/contents/cTsource/cToverview.html


Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *