Cette page ne sera jamais complète. Je vous encourage à continuer de lui ajouter des choses qui:
- sont en relation avec ce site
- sont en relation avec Freepascal
- sont en relation avec Lazarus
Langage informatique dérivé du Pascal et de Modula, et nommé en hommage à Ada Lovelace (1815-1852), amie et collaboratrice de Charles Babbage. Babbage (1791-1871), un Anglais, a été l'un des premiers représentants dans la conception d'ordinateur et a publié la conception d'une 'machine à différences' (qu'il n'a jamais en réalité construit). La comtesse Ada Byron de Lovelace a été une étudiante/collègue de Babbage et a écrit un programme pour conduire la 'machine à différences'; elle peut être considérée comme la première programmatrice en informatique. (Il n'y a pas de participation romantique avec Babbage; d'ailleurs Ada était la fille du poète Byron).
Ada est un langage de haut niveau procédural, avec une structure et syntaxe très similaire au Pascal mais avec plusieurs extensions. À un stade (dans les années 1980) le Département américain de la Défense a décrété que toute la programmation de ses entrepreneurs devait être fait en utilisant Ada, mais malheureusement, il y avait un manque de compilateurs convenables et d'outils de développement de logiciels, et la langue n'a jamais atteint la popularité - très peu d'applications militaires des États-Unis ont été effectivement écrite en Ada.
Assembler, Assembly Language
Un assembleur converti des symboles lisibles par l'homme (cela représente des instructions machine ) dans des instructions binaires actuelles que l'ordinateur exécute. Par exemple un assembleur traduirait
LD a,b # déplacer le contenu de l'endroit a dans l'endroit b
dans une séquence binaire tel que
01110010 ce que la machine peut exécuter. Le langage assembleur est une liste d'instructions codifiées qu'un programmeur peut écrire et que l'assembleur à traduit en code machine. Un assembleur diffère d'un Compilateur en étant spécifique au processeur (par exemple il y a différents assembleurs pour les processeurs i386, MC68000, ARM etc) et en étant de beaucoup plus bas niveau: il traite des instructions très spécifiques pour déplacer des données et exécuter de l'arithmétique détaillée. Beaucoup de compilateurs (incluant FreePascal) permettent au programmeur d'inclure des sections en assembleur dans le code source de niveau élevé; de telles sections sont, naturellement, seulement utiles en utilisant des processeurs pour lesquelles elles sont prévues, considérant qu'un Compilateur peut écrire des programmes qui fonctionneront sur une variété de processeurs différents.
Application Program Interface/Interface de Programmation d'Applications: un ensemble d'outils tel que les appels procéduraux /fonctionnels pour permettre aux programmeurs l'utilisation d'un ensemble logiciel. Un exemple est l'API pour le système de base de donnée MySQL; ses auteurs ont édité un ensemble de définitions pour les appels de procedure/function, avec des spécifications détaillées pour chacun des paramètres ou des arguments pour chaque fonction. l'API d'origine a été définie pour la programmation en C, mais les développeurs de FreePascal ont écrit un ensemble de définitions pour les appels au procedures/functions correspondantes qui permettent aux programmeurs FreePascal ou Lazarus d'utiliser la bibliothèque des appels aux fonctions MySQL.
Une partie très importante d'une quelconque API est sa documentation, et toute conversion d'une bibliothèque API vers un environnement de programmation différent (par exemple du C à FreePascal) exige un ensemble également excellent de documentation.
Beginner's All-purpose Symbolic Instruction Code
An interpreted computer language once popular as a training tool, or as an experimental tool for programming. Being an interpreted language, it was easy to make changes in your program and see the effects. It was characterised by having a line number for each statement, and the sequence of execution was determined by the order of line numbers. Extra lines could be inserted by giving them intermediate line numbers. The language lacked a proper programming structure: execution could be transferred by using GOTO line number, and it was possible to develop very undisciplined habits by the uncontrolled use of GOTOs - in many ways BASIC was the exact antithesis of Pascal with its emphasis on structured programming.
BASIC has latterly fallen out of favour, partly because of its inherent defects, partly because of the introduction of languages like Pascal and C, and partly because of the huge improvement in speed of computers and performance of compilers so that proper compiled programs could rapidly be written, executed and debugged. There have been some attempts to improve upon BASIC such as Microsoft's Visual Basic (which has some rudimentary structures and doesn't use line numbers, so there is less emphasis on GOTOs) but these latter variants are almost unrecognisable as BASIC, and owe a lot to C and to several Command Line or scripting languages. In fact some Visual Basic programs look very like FreePascal or Lazarus programs.
An error in a program which might cause catastrophic machine failure, failure of the program or simply incorrect performance or output. Derived from the days when computers were constructed with thermionic vacuum tubes, when insects could cause short-circuits between terminals producing hardware failure or unpredictable performance. Most software development teams encourage potential users to report bugs (which are then corrected in subsequent versions) and have a clearly-defined bug-reporting mechanism (for example Lazarus BugTracker).
C programming language
A widely used computer programming language, particularly useful for system programming. Forms the basis for most of the Linux operating system, and as far as we can determine, for the Windows system. Its chief disadvantage is that it is insufficiently rigorous, and allows poor programming practices to creep in. It is also vulnerable to problems such as memory leaks and buffer overflows. By contrast, Pascal imposes a much more rigorous discipline on the programmer and encourages good programming habits and practices.
A variant of C which includes Object-Oriented Programming constructs.
A language heavily supported by Microsoft and designed for their .NET platform. It has a syntax based on C++ that includes aspects of other programming languages, most notably Object Pascal and Java.
Code and Component Repository
Command Line Interpreter
A program present in most computer operating systems which examines an input stream, either from the keyboard (Console Mode) or from a text file (Batch Mode), interpreting or parsing the text to find instructions causing execution of operating system commands or running prepared programs or other scripts of instructions.
A program that translates Human-readable source code, usually written in a high-level language such as Object Pascal, C++, Algol, FORTRAN or ADA, into machine instructions for execution by a computer. Compilation usually involves several stages: Parsing the source code to check for syntax errors, translation of the source code to machine instructions, and linking the resultant code with libraries in order to produce the final machine-executable application.
A small piece of code, typically consisting of a data definition or a small number of methods, which defines and describes a particular action or series of actions in a Pascal application. Components are typically grouped together functionally into libraries such as the FCL, LCL or RTL, so that they can be re-used in many programming applications
The act of compiling a program on one type of computer for eventual use on another computer with a defferent processoror a different operating system. For example Pascal programs can be cross-compiled on a PC running Linux and executed on a PC running Windows, or programs can be compiled on a PC to run on a PDA like the Sharp Zaurus. Another typical example is the Cross-compilation of the FreePascal Compiler or the Lazarus IDE on one platform such as Linux for use on another platform such as Windows or on the Mackintosh computer using a totally different processor.
Usually refers to a program that can be run on several different OSs and Platforms. Examples are the FreePascal compiler and Lazarus, the OpenOfficeOrg suite of office programs, the Mozilla family of web browsers and e-mail servers.
Concurrent Version System (see also SVN). A system for producing orderly development of a software suite despite its use by multiple authors. A repository is set up, from which intending developers can check-out documents or files, and to which they can return edited material. Usually the posting of new or updated material is under the control of one or more moderators or administrators, and strict version control is maintained.
A computer application designed for the structured storage of large amounts of data and for easy access to it. Many of the websites on the internet make extensive use of databases: for example, a vendor may keep his catalogue of items for sale on a database, and may also keep his customer transactions on another related database; a software development team (like the FreePascal team) might keep their library of programs and subprograms on a database; a medical research team might keep responses to their Case Report forms (CRFs) on a database.
Some typical examples are MySQL, PostgreSQL, Oracle, DBII. Many of these use a common standard Structured Query Language to place data in the database and retrieve it. FreePascal/Lazarus has links to several of these databases.
A database system typically consists of the actual Data files, a Server which reads and writes to the files, and a Client which interprets the users instructions.
An OpenSource CrossPlatform Pascal Compiler FreePascal Website which supports TurboPascal/BorlandPascal (TP/BP), Delphi/Kylix (Object Pascal) and Apple syntax, also it has some extra addons like C-style macros and operators/symbols, Operator Overloading, auto function overloading and other nice features; it best used with Lazarus.
From GNU's Website: GNU is a recursive acronym for “GNU's Not UNIX”; it is pronounced “guh-noo.”
Gimp Tool Kit Home Page. GTK+ is a multi-platform toolkit for creating graphical user interfaces, and FreePascal and the Lazarus IDE make extensive use of GTK. It contains a set of Widgets or small graphical objects which can be incorporated into the forms or panels of applications.
Graphical User Interface
Integrated Development Environment
A software tool that examines an input stream of computer-language instructions (from the console or from a text-file) and converts them into machine-code instructions which are then immediately executed. This differs from a compiler (which converts a whole file into machine instructions and then stores the code for subsequent execution) in that instructions are interpreted line-by-line, and the conversion process has to happen every time the program is run.
The Command-Line interpreters in Linux, Windows, IBM systems and DEC PDP and VAX systems are good examples. Several popular programming languages are interpretive rather than compiled. The best examples are BASIC (in all its variants including Visual BASIC), PERL, Python and Java. Interpreted-language programs are generally several orders of magnitude slower than compiled-language programs because of the need to re-interpret the commands before execution every time, but they have the great advantage that changes are easily made, new code can be tested quickly, and often speed is not all that important compared with ease of development. Some languages (including various dialects of BASIC) offer the programmer an opportunity to try out a program first in interpreted mode, then when the program works correctly and no more changes are necessary, the whole program can be compiled to produce a much faster product.
Some variants of Pascal (including UCSD Pascal from the University of California at San Diego) offered a peculiar combination of compiled and interpreted operation: the textual Pascal source code was first converted into an intermediate P-code, which was then passed on to a P-code Interpreter which translated and executed it.
Lazarus Component Library
Usually refers to the Macintosh Operating System from Apple, it is famous for its high quality graphics and stability. The latest version MAC OS X is a combination of Commercial and OpenSource libraries and applications, OSX is currently capable of running X11. It is one of the most popular Operating Systems today and nowadays offers quality hardware even at a reasonable price. MAC can also refer to the MAC workstation which is the hardware needed to run the Operating System.
Object Oriented Extension to a procedural language which enables the creation and manipulation of complicated Objects. While Standard Pascal maintains a Record structure, in which various different data types such as integers, reals, arrays and pointers can co-exist in a pre-defined way, an object-oriented language like FreePascal allows the structure also to contain Methods (procedures and functions) for the manipulation of the data elements within the structure.
The Operating System is a program called a Kernel which is usually started by the BIOS and it has various libraries which provide an interface with the computer hardware, the Kernel can also be considered an abstraction layer between the applications and the electronics part, the Operating Systems can be Console (Text Mode) or Graphical, most modern Operating Systems support threading and are multitasking allowing multiple programs to run at the same time.
Pascal is a procedural programming language invented by Niklaus Wirth . There is an international standard definition of the language (ISO 7185, equivalent to ANSI/IEEE770X3.97), but apart from Gnu Pascal  and Prospero Pascal (available only for Windows systems), not many of the modern implementations conform exactly to the Standard. However, they are all syntactically essentially similar, and programs written for one variant are fairly interchangeable with others. FreePascal, Delphi and many other variants have OO extensions.
Personal Digital Assistant - a pocket-sized (or Palm-sized) device on which information such as address-books, calendars and other useful information can be stored. These devices (such as the Palm-Pilot and the Compaq Pocket-PC) are becoming increasing sophisticated, and the Sharp Zaurus which has a Linux operating system is a popular vehicle for experimenters and developers. There is a FreePascal cross-compiler available, which allows Pascal programs compiled on a PC to be run on the Zaurus.
Rapid Application Development - a software package for the fast and easy creation of Applications (Programs). Typically includes a text editor, a graphic interface, and easy links to various tools such as compilers, linkers and debuggers. Frequently offers an Integrated Development Environment (IDE).
Runtime Library The library of components in FreePascal which are used at run-time to translate instructions from programs according to the operating system and computer architecture of the current platform. See also FCL
Structured Query Language. An universal script language used in various types of DataBases with a defined syntax to be used for execution of queries.
Subversion - A Versioning document control system designed to improve upon and ultimately to replace CVS. This is the document management system currently used by both the FreePascal and the Lazarus projects.
A Pascal compiler produced by Borland which revolutionised Pascal development on PCs and microcomputers.
Previous Pascal compilers were huge and cumbersome, or slow, or expensive, or all three.
Borland's Turbopascal was very fast, very economic in resources, and very cheap.
Unfortunately it did not comply in all respects with the ISO standard, notably in its handling of the get() and put() functions with textfiles.
However it has been very popular, and with object oriented extensions it formed the basis of Delphi (which, though it has a stripped-down free no-cost version, is rather expensive if you want to do serious computing) and Kylix, the Linux version of Delphi.
It also forms the basis of FreePascal and Lazarus, but the main difference between Borland's compilers and FreePascal is that the source is not available for any of them, whereas all the sources for FreePascal are readily available. Borland compilers are commercial (even if offered at no-cost) but FreePascal and Lazarus are free (open-source).
One of the first Operating Systems. It was written in C and had threading and multi process capabilities; later Linus Torvalds and other programmers made an OpenSource clone of Unix called Linux which is one of the most popular Operating Systems today. Others folowed the example and other Operating Systems were born: FreeBSD, OpenBSD, NetBSD and many others; also Apple introduced OpenSource parts of various Unix clones and made MAC OS X which is famous for its graphical features and stability.
Un fichier source Pascal est aussi appelé une unité et a généralement pour extension .pas, .pp ou .p.
L’unité Pascal a un nom interne qui est généralement la première ligne de l’unité « unit MonUnité; » où MonUnité est le nom interne.
L’unité Pascal a aussi deux sections principales, interface et implementation qui sont semblables à la terminologie du C/C++, les fichiers en-tête (.h, .hpp, .hh) et les fichiers corps (.c, .cpp, .cc).
Tout le code de la section interface est accessible depuis les autres fichiers d’unités ou de programme qui utilisent cette unité. Ceci est fait par la déclaration uses. uses peut apparaître aussi bien dans la section interface qu’implementation : le code dans la section implementation est « privé » et ne peut être accédé que par la même unité à moins d’être redéfini dans la section interface, ce qui est le cas des procédures et des fonctions « globales ».
L’unité Pascal peut contenir deux sections supplémentaires : initialization et finalization. Ils sont automatiquement exécutés lorsque le programme commence et arrête d’utiliser l’unité, comme leur nom l’indique.
Clause in an Object Pascal program: a line near the top of the file or Unit (in either the interface or the implementation) which defines which other files need to be accessed to find components used in the program.
Visual Componente Library - Base of Delphi Components Classes.
Video For Linux
Video For Windows
A type of website that provides documentation for a software package or similar information, and that welcomes editorial activity, additions and comments from the community. Most WiKi sites require potential users to register, and then login in order to edit the site. Documentation can be developed very quickly and flexibly.
An Operating System from Microsoft, probably the most widely used Operating System today, famous for its user friendly interface but infamous for its vulnerability to malicious attackers. "Windows" also refers to rectangular areas on a computer screen which contain the textual and graphical material associated with a particular process or application. A window may form part of a program or system other than Microsoft's offering, for example there can be X-windows (see X11) or simple text-windows used by inherently text-based systems.
Also called XFree, Xorg or simply X is a Unix graphical interface. The X11 concept is quite different from the Windows GDI mainly because XFree is a program, not just a set of libraries. Because X11 is more hardware oriented and doesn't have a full set of widgets yet, some programmers developed more advanced widgets like GTK and QT and various Window Managers and Desktop Environments like GNOME, KDE, XPde, XFCE, IceWM, WindowMaker and many others. For more information about X11 please visit the XFree website.
PDA made by Sharp which uses Linux as its operating system. Its processor is the ARM for which a port of the FreePascal compiler has been made, and it is possible to cross-compile applications in FreePascal which will run on the Zaurus