Précédent Remonter

Références

[1]
Abelson (Harold), Sussman (Gerald Jay) et Sussman (Julie), 1985, Structure and Interpretation of Computer Programs, Cambridge, Massachusetts, MIT Press.
Le livre qui a fait connaître Scheme. À mettre dans la fameuse valise pour passer dix ans sur une île déserte. Il est difficile d'écrire autant de choses intéressantes sur autant d'aspects de l'informatique en si peu de pages. De plus c'est drôle.

[2]
Accart-Hardin (Thérèse) et Donzeau-Gouge Viguié (Véronique), 1992, Concepts et outils de programmation, Paris, Interéditions.
Manuel et méthode d'un enseignement du CNAM, cet ouvrage introduit les concepts fondamentaux de la programmation avec un souci pédagogique qui ne nuit pas à la rigueur.

[3]
Aho (A.V.), Sethi (R.) et Ullman (J.D.), 1986, Compilers: Principles, Techniques, and Tools, Reading, Massachusetts, Addison-Wesley. Traduction française : Interéditions, Paris, 1989.
Une référence classique ; les techniques de compilation ont évolué depuis son écriture ; cet ouvrage reste néanmoins une introduction presque obligée.

[4]
Arsac (Jacques), 1991, Préceptes pour programmer, Paris, Dunod.
Jacques Arsac est le pionnier de l'enseignement de l'informatique en France. Le ministre de l'Éducation Nationale l'a souvent consulté mais n'a pas assez suivi ses recommandations. Ses conseils pédagogiques peuvent être suivis sans hésiter ; c'est en le lisant que l'auteur de ces lignes a compris qu'il devait s'intéresser à Lisp. Les différents ouvrages de J. Arsac, outre leurs qualités scientifiques propres, manifestent avec vigueur les principes d'une exigence appliquée à l'informatique qui ne serait pas simplement intellectuelle mais aussi éthique. Le présent ouvrage tente de s'y conformer.

[5]
Bairoch (Amos), 1996, The Swiss-Prot Protein Sequence Data Bank User Manual. #1 .

[6]
Carrez (Christian), 1990, Les Systèmes informatiques, Paris, Dunod.

[7]
Chazarain (Jacques), 1996, Programmer avec Scheme, de la pratique à la théorie, Paris, International Thomson Publishing.
Ce livre qui nous a servi de modèle en bien des points envisage un champ plus vaste que le nôtre ; il introduit à la logique, au l-calcul, à la compilation, entre autres.

[8]
Clinger (William), Kelsey (Richard) et Rees (Jonathan) (édité par), 1998, Revised 5 Report on the Algorithmic Language Scheme, ACM. #1
La norme en 50 pages.

[9]
Cormen (Thomas), Leiserson (Charles) et Rivest (Ronald), 1994, Introduction à l'algorithmique, Paris, Dunod (pour la traduction française).
Une somme d'une complétude impressionnante ; si les exposés mathématiques des algorithmes sont d'une grande clarté, le passage à la programmation (en pseudo-code) est souvent difficile.

[10]
Crochemore (Maxime) et Rytter (Wojciech), 1994, Text Algorithms, Oxford, Oxford University Press.
Un exposé de référence pour les algorithmes utilisés aussi bien en biologie informatique que pour la linguistique.

[11]
Dubesset (Michel) et Vignes (Jean), 1991, FORTRAN. Le Langage normalisé, Paris, Éditions Technip.
Présentation claire et complète de Fortran 77.

[12]
Dybvig (R. Kent), 1996, The Scheme programming language, Upper Saddle River, NJ 07458, États-Unis, Prentice Hall.
Comme le titre l'indique, sans fioritures ni omissions, et quand même plus de chair sur les os que la norme.

[13]
Frege (Gottlob), 1971 [1879--1925], Écrits logiques et philosophiques, Paris, Le Seuil.
Qui programme n'échappe pas longtemps à l'interrogation logique. Les réflexions sur la distinction entre le sens et la dénotation des formes du discours d'un fondateur de la logique moderne rejoignent curieusement mais nécessairement des questions d'évaluation posées par la programmation applicative.

[14]
Friedman (Daniel P.) et Felleisen (Matthias), 1987, The Little LISPer, Cambridge, Massachusetts, MIT Press.
Sous couvert d'humour, une introduction exigeante au calcul récursif par une série d'exercices progressifs.

[15]
Friedman (Daniel P.), Wand (Mitchell) et Haynes (Christopher T.), 1992, Essentials of Programming Languages, Cambridge, Massachusetts, McGraw-Hill.
Une vision vraiment approfondie de la programmation, illustrée par un usage extensif des possibilités de Scheme pour créer et expérimenter de nouveaux langages.

[16]
Gauthier (Michel), 1989, Ada, un apprentissage, Paris, Dunod.
Après avoir lu notre livre, la lecteur devrait découvrir celui-ci avec profit et jubilation. Il y découvrira un langage complètement différent et des notions indispensables à tout programmeur.

[17]
Gödel (Kurt) et Girard (Jean-Yves), 1989, Le théorème de Gödel, Paris, Éditions Le Seuil.

[18]
Grillmeyer (Oliver), 1998, Exploring computer science with Scheme, New York, Springer-Verlag.

[19]
Gusfield (Dan), 1997, Algorithms on Strings, Trees, and Sequences -- Computer Science and Computational Biology, Cambridge, Cambridge University Press.
Ce livre offre une présentation très large de ce que l'on appelle l'algorithmique sur les mots ou les chaînes de caractères telles les séquences biologiques. Y sont ainsi présentés les algorithmes « classiques » sur les chaînes, ainsi que les développements nouveaux inspirés par des problèmes divers en biologie moléculaire (comparaison de séquences, extraction de motifs, recherche de répétitions et de palindromes, phylogénie, cartographie, assemblage entre autres). En ce qui concerne l'algorithmique classique, une grande importance est accordée à l'utilisation d'une structure particulière qui est celle des arbres de suffixes.

[20]
Hailperin (Max), Kaiser (Barbara) et Knight (Karl), 1999, Concrete Abstractions: An Introduction to Computer Science Using Scheme, Pacific Grove, Calif., USA, Brooks & Cole Publishing.
Ce livre présente plusieurs chapitres classiques d'un cursus informatique qui n'avaient pas fait l'objet d'une introduction aussi systématique en Scheme, comme la programmation dynamique. La présentation des algorithmes sur les arbres est plus approfondie que de coutume. La clarté des exposés est remarquable et rend faciles des problèmes réputés difficiles.

[21]
Hankin (Chris), 1994, Lambda Calculi -- A guide for computer scientists, Oxford, Clarendon Press -- Oxford.
Comme son nom l'indique.

[22]
Harbison (Samuel P.) et Steele Jr. (Guy Lewis), 1994, C: A Reference Manual, Upper Saddle River, NJ 07458, États-Unis, Prentice Hall.
La présentation la plus complète et la plus cohérente du langage C. Il existe une traduction mais la version originale est préférable.

[23]
HennessyHennessy, John L. (John L.) et PattersonPatterson, David A. (David A.), 1996, Computer architecture: a quantitative approach, San Mateo, Calif., USA, Morgan Kaufman Publishers.
Ce livre donne à la description de l'architecture des ordinateurs une ampleur intellectuelle que peu soupçonnaient. En annexe, une bonne introduction à la représentation des nombres (norme IEEE 754 notamment).

[24]
Hufflen (Jean-Michel), 1996, Programmation fonctionnelle en Scheme, de la conception à la mise en oeuvre, Paris, Masson.
Le propos de ce livre n'est guère éloigné du nôtre, si ce n'est qu'il s'adresse à un lecteur peut-être plus féru de mathématiques et plus curieux d'exemples empruntés à la physique.

[25]
Jain (Raj), 1991, The Art of Computer Systems Performance Analysis, Chichester, Royaume Uni, John Wiley & sons.
Une somme sur le sujet, ce livre comprend aussi une bonne introduction aux statistiques vues sous un angle pratique et un cours sur la conception de transparents.

[26]
Jones (Richard) et Lins (Rafael), 1996, Garbage collection, Chichester, Royaume Uni, John Wiley & sons.
Trace un tableau véritablement encyclopédique du glanage de cellules : histoire, algorithmes classiques, modernes, distribués, parallèles, en tenant compte du cache, avec rangement des objets par génération, hardis ou prudents. Bref tout ce que l'on peut avoir envie de savoir sur ce sujet d'avenir.

[27]
Knuth (Donald E.), 1996, Selected Papers on Computer Science, Cambridge, Cambridge University Press.
Un recueil d'articles sur des sujets tels que la relation entre les mathématiques et l'informatique ou l'algorithmique babylonienne. Alors que le mathématicien affronte l'infini, on sait que l'informaticien doit se contenter d'objets finis. L'auteur montre que pour être finis certains objets ou certains problèmes n'en sont pas moins très grands.

[28]
Knuth (Donald E.), 1997 [1968], The Art of Computer Programming, Reading, Massachusetts, Addison-Wesley. 3 vol.
Encyclopédie inachevée des sciences formelles de l'informatique, une mine encore à exploiter.

[29]
Knuth (Donald E.), Graham (Ronald L.) et Patashnik (Oren), 1989, Concrete Mathematics, Reading, Massachusetts, Addison-Wesley. Traduction française de Alain Denise : International Thomson Publishing.
Le titre de ce livre est un jeu de mots multiple, « concrete » en anglais veut dire concret mais aussi béton, et peut résulter du télescopage de « continuous » avec « discrete ». Cet ouvrage riche d'abstractions utiles introduit des êtres mathématiques qui oeuvrent en secret dans l'ombre d'objets informatiques tels que tables associatives ou procédures récursives. Analyse combinatoire, probabilités discrètes, analyse asymptotique sont introduites sans facilité mais avec passion.

[30]
Kristeva (Julia), 1981 [1969], Le Langage, cet inconnu - Une initiation à la linguistique, Paris, Le Seuil.
Un tour d'horizon complet, moderne et accessible de la linguistique et de son histoire. Des proximités surprenantes avec l'informatique.

[31]
Krivine (Jean-Louis), 1990, Lambda-calcul, types et modèles, Paris, Masson.
Ce n'est pas une introduction, plutôt une clôture du sujet, formellement parfaite et d'un accès exigeant.

[32]
Lippman (Stanley B.), 1996, Inside the C++ Object Model, Reading, Massachusetts, Addison-Wesley.

[33]
Littré (Émile), 1865, Dictionnaire de la langue française, Paris, Hachette.

[34]
Liu (Cricket), Peek (Jerry), Jones (Russ), Buus (Bryan) et Nye (Adrian), 1995, Managing Internet information services, Sebastopol, USA, O'Reilly.

[35]
Meyer (Bertrand) et Baudoin (Claude), 1984, Méthodes de programmation, Paris, Eyrolles.
Une approche certes datée par le style, mais on y trouvera toujours un exposé incisif des problèmes au coeur de l'informatique.

[36]
MicroDesign Resources (édité par), 1987-, Microprocessor Report, Sunnyvale, Calif., Cahners Electronics Group.
La revue mensuelle avec édition hebdomadaire sur le WWW : #1 du micro-processeur et de ses évolutions techniques et industrielles. Informée, compétente, beaucoup de détail technique exposé avec clarté.

[37]
Moreau (Luc), Queinnec (Christian), Ribbens (Daniel) et Serrano (Manuel), 1999, Recueil de petits problèmes en Scheme, Paris, Springer-Verlag.
Cet ouvrage comporte près de trois cents exercices, classés par thèmes et dotés de solutions commentées, suivant une progression régulière et illustrant de nombreuses techniques de programmation. Ils procurent un entraînement intensif à la récursion comme principe fondamental de raisonnement et de résolution de problèmes. C'est un complément quasi-indispensable de notre propre livre.

[38]
Muller (Jean-Michel), 1989, Arithmétique des ordinateurs, Paris, Masson.
Tour d'horizon des méthodes disponibles pour le calcul automatique.

[39]
Nebut (Jean-Louis), 1990, UNIX pour l'utilisateur, Paris, Éditions Technip.
Face à l'océan des livres-mode d'emploi inodores et sans saveur, celui-ci introduit des concepts (ceux de la programmation) dans un univers d'où ils sont souvent bannis. Unix y apparaît sous un jour nouveau, doté d'une cohérence non limitée à sa structure interne, et du coup compréhensible même à qui n'en a pas lu le noyau. L'exercice (organiser cet apparent fouillis) était difficile.

[40]
Neumann (John von), 1957, The Computer and the Brain, New Haven, Connecnicut, Yale University Press. Traduction française : La Découverte, Paris 1992.
Ce texte d'une conférence que la mort de l'auteur a empêché d'être prononcée réfute le réductionnisme qui fleurit souvent sous de tels titres, énumère les différences fondamentales entre le fonctionnement du cerveau et celui des machines numériques, ouvre de nouvelles problématiques sur des questions rebattues telle que l'existence des objets de la mathématique et de la logique.

[41]
Oram (Andrew) et Talbott (Steve), 1991, Managing Projects with make, Sebastopol, USA, O'Reilly.

[42]
Pichat (Michèle) et Vignes (Jean), 1993, Ingénierie du contrôle de la précision des calculs sur ordinateur, Paris, Éditions Technip.
Certains résultats scientifiques publiés à l'issue de traitements informatiques sont simplement des erreurs de calcul. Cet ouvrage donne une vision approfondie des causes possibles de telles erreurs et propose des méthodes pour les éviter, notamment la méthode originale CESTAC de contrôle et estimation stochastique des arrondis de calcul.

[43]
Queinnec (Christian), 1994, Les Langages Lisp, Paris, Interéditions.
Un examen complet et approfondi de toutes les questions soulevées par les langages Lisp, leur traduction et leur implantation, avec le code en Scheme et de l'humour. Les possibilités de Scheme pour créer des langages sont démontrées avec virtuosité. Une lecture vraiment indispensable à qui veut savoir « comment ça marche ».

[44]
Queinnec (Christian), 1998, Literate programming from Scheme to TeX, Rapport technique, Université de Paris 6 & INRIA-Rocquencourt.
#1 .

[45]
Saint-James (Emmanuel), 1993, La Programmation applicative (de Lisp à la machine en passant par le l-calcul), Paris, Hermès. Avec une préface de Jacques Arsac.
Une étude riche et originale avec des aperçus saisissants sur la programmation.

[46]
Saussure (Ferdinand de), 1972 [1916], Cours de linguistique générale, Paris, Payot.
Tant qu'à entendre parler de signifiant et de signifié, ce à quoi n'échappera pas le programmeur scrupuleux, autant aller voir à la source de quoi il s'agit. Un texte historique, fondateur, etc.

[47]
Serrano (Manuel), 1994, Vers une compilation portable et performante des langages fonctionnels, Paris, Thèse de doctorat, Université Pierre et Marie Curie (Paris VI).
La conception et les mécanismes internes du système de programmation Bigloo pour le langage Scheme.

[48]
Serrano (Manuel), 1998, Bigloo User's Manual, Rapport technique, Université de Nice. #1 .

[49]
Sethi (Ravi), 1996, Programming Languages, Reading, Massachusetts, AddisonWesley.
Parce que les langages sont plusieurs et qu'il importe de les considérer.

[50]
Soria (Michèle), Brygoo (Anne), Morcrette (Michelle) et Paliès (Odile), 1998, Initiation à la programmation par Word et Excel, Paris, Vuibert.
Une gageure, semble-t-il : le lecteur jugera, en tout cas le détour est justifié.

[51]
Springer (George) et Friedman (Daniel P.), 1989, Scheme and the Art of Programming, New York, McGraw-Hill.

[52]
Steele Jr. (Guy Lewis), Novembre 1976, Lambda, the ultimate declarative, Artificial intelligence memo 379, Cambridge, Massachusetts, MIT.
Un document historique sur les idées à l'origine de Scheme.

[53]
Steele Jr. (Guy Lewis) et Gabriel (Richard P.), Mars 1993, The Evolution of Lisp. ACM SIGPLAN Notices, vol. 28.
Une histoire de Lisp bien informée des aspects techniques, et pour cause.

[54]
Steele Jr. (Guy Lewis) et Sussman (Gerald Jay), Mars 1976, Lambda, the ultimate imperative, Artificial intelligence memo 353, Cambridge, Massachusetts, MIT.
Un document historique sur les idées à l'origine de Scheme.

[55]
Stern (Jacques), 1990, Fondements mathématiques de l'informatique, Paris, McGraw-Hill.
Un exposé concis dont les difficultés sont atténuées par l'utilisation du formalisme de Lisp.

[56]
Sun Microsystems, 1991, Numerical Computations Guide, Rapport technique, Sun Microsystems, Mountain View, Calif., USA.

[57]
Turing (Alan) et Girard (Jean-Yves), 1995, La machine de Turing, Paris, Éditions Le Seuil.
Une introduction abordable mais sans concessions, puis le texte historique.

[58]
Vélu (Jacques), 1987, Méthodes mathématiques pour l'informatique, Paris, Dunod.
Une introduction vraiment accessible. Pour mettre le pied à l'étrier.
© copyright Éditions Technip et Laurent Bloch 2001
Précédent Remonter