Sign in Join
Wiki copytemporary

Glossary/es: what changed

Revision 3 to 4. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11# Glosario
22
33##### Aviso
44
55Esta página núnca estará completa. Animamos a seguir añadiendo cosas, cómo por ejemplo:
66
77- Relacionadas con este sitio
88- Relacionadas con *Freepascal*
99- Relacionadas con Lazarus
1010
1111| |
1212|:--:|
1313| # A B C D E F G H I J K L M N O P Q R S T U V W X Y Z |
1414| |
1515
1616## \#
1717
1818## A
1919
2020### Ada
2121
2222
2323   Lenguaje de programación derivado de Pascal y Modula, El nombre se eligió en honor a lady [Ada Augusta Byron](http://es.wikipedia.org/wiki/Ada_Augusta_Byron) (1815-1852) Condesa de Lovelace, hija del poeta Lord [George Byron](http://es.wikipedia.org/wiki/George_Byron), a quien se considera la primera programadora de la Historia, por su colaboración y relación con Charles [Babbage](http://es.wikipedia.org/wiki/Charles_Babbage), creador de la [máquina analítica](http://es.wikipedia.org/wiki/M%C3%A1quina_anal%C3%ADtica), la cual jamás fue construida.
2424
2525
2626   Ada es un lenguaje procedural de alto nivel, muy similar en estructura y sintaxis a Pascal pero con algunas extensiones. Durante los años 80 el Departamento de Defensa de los EE.UU. exigió que toda la programación desarrollada por sus contratistas fuese llevada a cabo con Ada, pero, por desgracia, faltaron compiladores y herramientas de desarrollo, y el lenguaje nunca alcanzó popularidad; en realidad muy pocas aplicaciones militares de los EE.UU. fueron escritas en Ada. [Más sobre Ada](http://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n_Ada)
2727
2828### Ensamblador, Lenguaje ensamblador
2929
3030
3131   Un ensamblador convierte símbolos inteligibles por las personas, que representan instrucciones máquina, en el binario correspondiente que ejecuta el ordenador. Por ejemplo, un ensamblador traducirá
3232
33-` LD a,b # copiar el valor contenido en la posición de memoria a, en la posición de memoria b`
33+```text
34+ LD a,b # copiar el valor contenido en la posición de memoria a, en la posición de memoria b
35+```
3436
3537
3638en un número binario como este `01110010` que la máquina puede ejecutar. Lenguaje ensamblador es el conjunto de instrucciones codificadas que el programador escribe y que el ensamblador traduce a código máquina.
3739
3840
3941   Un ensamblador se diferencia de un [[Glossary/es|Compilador]] en que es específico para para cada procesador (los ensambladores de los procesadores i386, MC68000, ARM, etc. son diferentes) y por ser de más bajo nivel: se trata de instrucciones muy específicas para mover datos y realizar operaciones aritméticas detalladas. Muchos compiladores (incluido el [[Glossary/es|FreePascal]]) permiten a los programadores integrar secciones en ensamblador dentro del código fuente de alto nivel, dichas secciones por supuesto sólo serán utilizables por el procesador a que corresponden, mientras que con un [[Glossary/es|Compilador]] se pueden crear programas que trabajarán en una variedad de procesadores diferentes.
4042
4143### API
4244
4345Application Program Interface: a set of tools such as procedural/functional calls to allow programmers to use a software package.
4446
4547An example is the API for the [MySQL](http://www.mysql.com) database system; its authors have published a set of definitions for procedure/function calls, with detailed specifications for each of the parameters or arguments for each function. The original MySQL API was defined for [[Glossary/es|C]] programming, but the FreePascal developers have written a set of corresponding procedure/function call definitions which allow [[Glossary/es|FreePascal]] or [[Glossary/es|Lazarus]] programmers to use the library of MySQL function calls.
4648
4749A very important part of any API is its documentation, and any conversion of an API library to a different programming environment (eg from C to FreePascal) requires a really excellent set of descriptive documents.
4850
4951## B
5052
5153### [BASIC](http://es.wikipedia.org/wiki/BASIC)
5254
5355
5456   Beginner's All-purpose Symbolic Instruction Code, en castellano sería, "código de instrucciones simbólicas de propósito general para principiantes". [Opinión sobre BASIC](http://es.wikiquote.org/wiki/Edsger_Dijkstra) de [Edsger Dijkstra](http://es.wikipedia.org/wiki/Edsger_Dijkstra) .
5557
5658
5759   Un lenguaje de programación popular como herramienta de aprendizaje, o como herramienta de ensayo para programar. Siendo un lenguaje [[Glossary/es|interpretado]], era fácil y rápido realizar cambios en el programa y ver sus efectos. El programador daba un número de línea para cada orden, y la secuencia de ejecución era determinada por el orden de los números de línea. Las líneas adicionales podían ser insertadas dándoles números intermedios (ej. la línea 15 se podía insertar entre las líneas 10 y 20). El lenguaje carecia de progamación estructurada apropiada: la ejecución debía ser transferida usando GOTO *número de línea*, y posibilitaba desarrollar hábitos muy indisciplinados por el uso incontrolado de GOTOs; en varios aspectos el BASIC era en gran medida la antítesis exacta de [[Glossary/es|Pascal]] con su énfasis fuerte en la programación estructurada.
5860
5961
6062   BASIC ha decaído, en parte debido a sus defectos inherentes, en parte debido a la introducción de lenguajes como [[Glossary/es|Pascal]], [[Glossary/es|C]] y JAVA, y en parte debido a la enorme mejora en la velocidad de computadoras y del funcionamiento de los compiladores, de modo que los programas compilados pueden ser escritos rápidamente, ejecutados y eliminados los errores. Ha habido algunas tentativas de mejorar sobre el BASIC tal como Microsoft' s Visual Basic (que tiene algunas estructuras y puede eludir el uso de números de línea, eliminando la proliferación de GOTOs) pero estas últimas variantes son casi irreconocibles como BASIC, y deben mucho a C y a varios [[Glossary/es|lenguajes de scripting en línea de órdenes]]. De hecho algunos programas de Visual Basic se parecen mucho a [[Glossary/es|FreePascal]] o [[Glossary/es|Programas de Lazarus]].
6163
6264### [[Boolean|Booleano]]
6365
6466
6567   Tipo de datos lógico en [[Glossary/es|Pascal]] y otros lenguajes que puede tomar dos posible valores: [[True|Verdadero (True)]] o [[False|Falso (False)]].
6668
6769
6870   El nombre hace referencia a [George Boole](http://es.wikipedia.org/wiki/Boole), creador del [Álgebra de Boole](http://es.wikipedia.org/wiki/%C3%81lgebra_de_Boole).
6971
7072
7173   Ver [[Boolean Expressions|Expresiones booleanas]] para una descripción más completa.
7274
7375### Error (Bug)
7476
7577
7678   Un error en un programa, que puede causar un fallo irremediable en la máquina, un fallo en el programa o simplemente un mal rendimiento o unos resultados erróneos. Esta denominación procede de los días en que los ordenadores eran construidos con válvulas de vacío electrónicas, relés y otros elementos electromecánicos y dado su gran tamaño podían albergarse insectos (bugs) en el interior del aparato y estos causaban cortocircuitos entre terminales, provocando averías en el ordenador o un comportamiento errático del mismo.
7779
7880
7981   La mayoría de los equipos de desarrollo de aplicaciones animan a los usuarios a comunicar los errores que detecten, para que sean corregidos en versiones posteriores, y disponen para ello de un mecanismo claro y definido por ejemplo, [Lazarus BugTracker](http://bugs.freepascal.org/main_page.php)).
8082
8183## C
8284
8385### C programming language
8486
8587A widely used computer programming language, particularly useful for system programming. Forms the basis for most of the [[Glossary/es|Linux]] operating system, and as far as we can determine, for the [[Glossary/es|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, [[Glossary/es|Pascal]] imposes a much more rigorous discipline on the programmer and encourages good programming habits and practices.
8688
8789See also [[Pascal for C users]]
8890
8991### C++
9092
9193
9294   Un dialecto de [[Glossary/es|C]], que incluye extensiones y estructuras para programación [[Glossary/es|orientada a objetos]].
9395
9496### C#
9597
9698
9799   Un lenguaje creado por Microsoft para su plataforma .NET. Tiene una sintaxis basada en [[Glossary/es|C++]], e incluye aspectos de otros lenguajes de programación, sobre todo Object [[Glossary/es|Pascal]] y [[Glossary/es|Java]].
98100
99101### CCR
100102
101103Code and Component Repository
102104
103105The [Lazarus Code & Component Repository](http://lazarus-ccr.sourceforge.net/) on SourceForge is the host for the Lazarus Documentation files and some component libraries.
104106
105107### Class
106108
107109A special kind of [[Glossary/es|Object]] in [[Glossary/es|Object Oriented]] programming.
108110
109111A Class is a pointer to an Object; its declaration looks very similar to an Object.
110112
111113### Command Line Interpreter
112114
113115**CLI**
114116
115117A 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), [[Glossary/es|interpreting]] or parsing the text to find instructions causing execution of operating system commands or running prepared programs or other scripts of instructions.
116118
117119### Compilador
118120
119121
120122   Un programa que traduce el código fuente comprensible para las personas, habitualmente escrito en un lenguaje de alto nivel como Object [[Glossary/es|Pascal]], [[Glossary/es|C++]], Algol, [[Glossary/es|FORTRAN]] o [[Glossary/es|Ada]], en instrucciones específicas de la máquina que son las que se ejecutarán.
121123
122124
123125   La compilación, por lo general, implica varias etapas: la de análisis de código fuente para comprobar errores de sintaxis, la traducción del código fuente a instrucciones de la máquina, y el enlace del código resultante con una serie de librerías con el fin de producir, para la aplicación, el código final ejecutable por la máquina.
124126
125127
126128   Ver también las entradas [[Compiler|Compilador]] y [[Compilers/en|Compiladores]] en el Wiki principal.
127129
128130### Component
129131
130132A 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 [[Glossary/es|FreePascal Component Library (FCL)]], [[Glossary/es|Lazarus Component Library (LCL)]] or [[Glossary/es|Run Time Library (RTL)]], so that they can be re-used in many programming applications.
131133
132134### Cross Compilation
133135
134136The act of compiling a program on one type of computer for eventual use on another computer with a different processor a different operating system. For example [[Glossary/es|Pascal]] programs can be cross-compiled on a PC running Linux and executed on a PC running [[Glossary/es|Windows]], or programs can be compiled on a PC to run on a [[Glossary/es|PDA]] like the Sharp [[Glossary/es|Zaurus]]. Another typical example is the Cross-compilation of the [[Glossary/es|FreePascal]] Compiler or the [[Glossary/es|Lazarus]] IDE on one platform such as [[Glossary/es|Linux]] for use on another platform such as [[Glossary/es|Windows]] or on the [[Glossary/es|Macintosh]] computer using a totally different processor.
135137
136138### CrossPlatform
137139
138140Usually refers to a program that can be run on several different [[Glossary/es|Operating Systems]] and Platforms such as [[Glossary/es|Windows]], [[Glossary/es|Linux]] and [[Glossary/es|OSX]]. Examples are the [[Glossary/es|FreePascal]] compiler and [[Glossary/es|Lazarus]], the [OpenOfficeOrg](http://www.openoffice.org) suite of office programs, the [Mozilla](http://www.mozilla.org) family of web browsers and e-mail servers.
139141
140142### CVS
141143
142144[Concurrent Version System](http://www.cvshome.org/) (see also [[Glossary/es|Subversion 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.
143145
144146## D
145147
146148### DataBase
147149
148150A 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.
149151
150152Some typical examples are [MySQL](http://www.mysql.com), [PostgreSQL](http://www.postgresql.org/), [Oracle](http://www.oracle.com/index.html), [DB2](http://www-306.ibm.com/software/data/db2/). Many of these use a common standard [[Glossary/es|Structured Query Language]] to place data in the database and retrieve it. FreePascal/Lazarus has links to several of these databases.
151153
152154A 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.
153155
154156See also [[Databases]] entry in main Wiki
155157
156158### [[Delphi]]
157159
158160An excellent commercial [[Glossary/es|Pascal-based]] [[Glossary/es|RAD]] [[Glossary/es|IDE]] for Windows made by [Borland](http://www.borland.com/). FreePascal sets out to be broadly compatible with Delphi, so that applications written by Delphi developers can be readily ported to FreePascal/Lazarus, and the FreePascal compiler has a Delphi compatability mode (using the compiler directive {\$MODE Delphi} or the command-line option -Sd).
159161
160162However, slavish adherance to Delphi constructs and standards is no longer felt to be a requirement, and FreePascal developers have improved on many of the Delphi constructs, in many cases producing a more flexible and more useful programming environment. All the procedures, functions, classes and other programming elements have been written from scratch by FreePascal developers, quite independent of the Delphi code.
161163
162164### Debugger
163165
164166A computer program which can be used by developers to control the execution of a program in development, and show where a program is failing. Debuggers typically keep track of the location in the program (for example the line number in the source code), the contents of the variables in the program, and often produce a back-trace showing the instructions that were being executed immediately before the failure occurred in the program.
165167
166168The Gnu Debugger [GDB](http://sourceware.org/gdb/) is used in FreePascal/Lazarus systems; GDB must be present in the system. In Linux and other Unix-like systems the native Gnu/Linux version can easily be installed; in Windows systems a special Windows version of GDB has been included in the Lazarus release packages; alternatively GDB can be compiled from source for Windows and used in conjunction with the [CygWin](http://cygwin.com/) emulator.
167169
168170At present the documentation on debugging for FreePascal/Lazarus is not very complete, and users are advised to read the documentation on the GDB site carefully.
169171
170172### [diff](http://www.gnu.org/software/diffutils/diffutils.html)
171173
172174A GNU program used to show the differences between two files, or even two directories.
173175
174176Used by software developers to check the changes in coding before committing an edited source file to a repository such as [[Glossary/es|SVN]]. The output from diff can also be used to generate a Patch which can be applied to a source code file without having to re-write or re-import the whole file.
175177
176178## E
177179
178180## [[Editor]]
179181
180182Text Editor - one of the essential tools of program development.
181183
182184The source code of most computer programs consists of lines of text with the program instructions arranged in a logical sequence. Some form of text editor is necessary for inputting the source code and editing or correcting it.
183185
184186All operating systems have available a numer of text editors, some very primitive (such as ED or EDLIN in DOS/Windows or ED, vi in Unix/Linux) and some quite sophisticated (such as NotePad and WordPad in Windows, GEdit, KATE, KWrite and EMACS in Unix/Linux). It is even possible (though not recommended) to use Word Processor software for editing computer program source code.
185187
186188Many text editors offer Syntax Highlighting (using different colours to show keywords, types of data or levels of nesting in statements) or have automatic indentation to make the structore of a program more apparent. Most have Search and/or Replace facilities, and can often recognise the beginning of Subprograms (Procedures and Functions) or open 'include' files when required.
187189
188190Both the [[Glossary/es|FreePascal]] and [[Glossary/es|Lazarus]] [[Glossary/es|IDEs]] have integral text editors which are the ones recommended for developing programs using the FreePascal Compiler, but programs developed using any text editor can be passed to the compiler, provided they are syntactically and logically correct.
189191
190192Each user will find his or her own favourite editor and come to recognise its advantages and limitations. And arguments between proponents of one or other editor are sometimes only slightly less heated than arguments about preferred Operating System!!
191193
192194## F
193195
194196### [[FCL]]
195197
196198FreePascal Component Library
197199
198200The main collection of components used by [[Glossary/es|FreePascal]]. See also [[Glossary/es|RTL (Run Time Library)]] and [[Glossary/es|LCL (Lazarus Component Library)]]
199201
200202### FORTRAN
201203
202204Procedural language for FORmula TRANslation.
203205
204206Once very popular for academic, scientific and engineering programs, its emphasis was on getting things done efficiently - very good for calculation-intense applications, but it made few concessions to ease of user interface.
205207
206208FORTRAN suffered from a rather rigid syntactic and formatting structure, though later versions have developed softer edges and make a few concessions to a windowed user environment with interactive input-output.
207209
208210It is still one of the best languages for doing really hard sums, but is much less popular than languages with a friendlier user interface.
209211
210212### [FreePascal](http://www.freepascal.org)
211213
212214An [[Glossary/es|OpenSource]] [[Glossary/es|CrossPlatform]] [[Glossary/es|Pascal]] [[Glossary/es|Compiler]] which supports [[Glossary/es|TurboPascal]]/BorlandPascal (TP/BP), [[Glossary/es|Delphi]]/[[Glossary/es|Kylix]] ([[Glossary/es|OO]] or 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.
213215
214216FreePascal initially set out to reproduce the features of Delphi in an open-source environment, and offered the advantage of working on a number of operating system platforms, but it has acquired a character and ethos of its own, and slavish adherance to Delphi compatibility is no longer the fundamental driver. FreePascal developers write code entirely independently from the Delphi sources.
215217
216218FreePascal consists of the [[Glossary/es|compiler]] itself, a number of libraries including the Run-time library [[Glossary/es|RTL]], the FreePascal Component Library [[Glossary/es|FCL]] and a number of optional packages that can be installed by the user. There is also an Integrated Development Environment ([[Glossary/es|IDE]]) intended for use in a non-graphic text mode, and very similar to the TurboPascal IDE. Users who prefer to use a Graphical User Interface ([[Glossary/es|GUI]]) can use one of a number of products, [[Glossary/es|Lazarus]] being the best-known IDE which has been contributed to by over 120 programmers of whom some are closely involved with the FreePascal project.
217219
218220## G
219221
220222### [GDB](http://www.gnu.org/software/gdb/gdb.html)
221223
222224[[Glossary/es|GNU]] [[Glossary/es|Debugger]] used for debugging programs developed with the [[Glossary/es|FreePascal]] compiler, as well as programs in [[Glossary/es|C]], [[Glossary/es|C++]], [[Glossary/es|FORTRAN]] and other languages.
223225
224226### [GIMP](http://www.gimp.org/)
225227
226228[[Glossary/es|GNU]] Image Manipulation Program
227229
228230One of the largest influences on Linux Graphics - it is a tool that some find hard to use at first, but it so infinitely configurable and intensively useful that most are eventually won over. The GIMP provides most of the Widgets (small graphic objects) used in the Gimp ToolKit (GTK) libraries that form one of the major sets of tools in Lazarus.
229231
230232### [GNU](http://www.gnu.org/)
231233
232234GNU is a wrapper around the [[Glossary/es|Linux]] Kernel and Shell, providing a large number of user programs, user environments (both graphical and text-based), applications and development systems. It also contains a large number of libraries for use by various packages and systems. Its developers suggest that the [[Glossary/es|Linux]] operating system should actually be described as the GNU/Linux OS, as the Linux kernel requires the functionality provided by GNU in order to work for the end-user.
233235
234236From GNU's Website: GNU is a recursive acronym for “GNU's Not UNIX”; it is pronounced “guh-noo.” GNU is like [[Glossary/es|UNIX]], but is not the same!
235237
236238### [GTK](http://www.gtk.org/)
237239
238240[[Glossary/es|Gimp]] Tool Kit.
239241
240242GTK+ is a multi-platform toolkit for creating graphical user interfaces, and [[Glossary/es|FreePascal]] and the [[Glossary/es|Lazarus]] [[Glossary/es|IDE]] make extensive use of GTK. It contains a set of [[Glossary/es|Widgets]] or small graphical objects which can be incorporated into the forms or panels of applications.
241243
242244### GUI
243245
244246
245247   **Interfaz Gráfica de Usuario**
246248
247249
248250   Un entorno de trabajo en el que el usuario se enfrenta con una pantalla sobre la que hay imágenes o iconos que representan los programas, acciones o archivos, y, o bien utiliza un ratón (o un dispositivo apuntador similar) para seleccionar el icono apropiado o utiliza el teclado con botones o teclas de dirección para desplazarse por la pantalla y seleccionar el icono correspondiente. A menudo hay menús desplegables disponibles cuando el ratón se coloca sobre ciertas partes de la pantalla.
249251
250252
251253   Una IGU normalmente hace uso de [[Glossary/es|Orientación a Objetos]] o programación dirigida por [eventos](http://buscon.rae.es/draeI/SrvltGUIBusUsual?TIPO_HTML=2&TIPO_BUS=3&LEMA=evento) ([sucesos](http://buscon.rae.es/draeI/SrvltGUIBusUsual?TIPO_HTML=2&TIPO_BUS=3&LEMA=suceso)), en vez de seguir una secuencia predeterminada de acciones. La aplicación espera a que suceda algo (evento) como un clic del ratón sobre un icono, para determinar la acción que se requiere y ejecutar la pieza adecuada de código, después la aplicación retorna al estado de 'Espera', hasta que otro evento ocurre, como el clic del ratón sobre un icono diferente.
252254
253255## H
254256
255257## I
256258
257259### IDE
258260
259261Integrated Development Environment
260262
261263It typically consists of a [[Glossary/es|text editor]] for developing the program source, a [[Glossary/es|Compiler]], perhaps an [[Glossary/es|Assembler]] and a [[Glossary/es|Linker]] to make construction and subsequent execution of the program quick and easy. It may also have access to a [[Glossary/es|Debugger]] to help detect and correct logical or operational errors in the code.
262264
263265### Interpreter
264266
265267A 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 [[Glossary/es|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.
266268
267269The [[Glossary/es|Command-Line interpreters]] in [[Glossary/es|Linux]], [[Glossary/es|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 [[Glossary/es|BASIC]] (in all its variants including Visual BASIC), PERL, Python and [[Glossary/es|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.
268270
269271Some 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.
270272
271273## J
272274
273275### Java
274276
275277Computer language developed by Sun Microsystems for writing Web-based applications. It is an [[Glossary/es|intepreted language]] (which tends to produce rather slowly-running programs), but applications can be written rapidly and ported to a large number of different processors and machines. It has facilities for [[Glossary/es|Object-Oriented Programming]].
276278
277279Read more: [[Pascal for Java users]]
278280
279281## K
280282
281283### Kylix
282284
283285Delphi-like Rad Tool for Linux made by Borland. It is based on Delphi, and uses the [[Glossary/es|QT]] / CLX [[Glossary/es|widget]] set. It attempts to port Delphi's IDE to Linux by using [WINE](http://www.winehq.org/), a Windows Emulator program, rather than translating the code for the IDE into proper Linux-specific code, and hence operates rather slowly and patchily. Borland seem to have lost interest in developing or supporting Kylix further, and many former users of Kylix have migrated to FreePascal/Lazarus as the only viable alternative for Pascal development in Linux.
284286
285287## L
286288
287289### [Lazarus](http://lazarus.freepascal.org)
288290
289291A [[Glossary/es|CrossPlatform]] [[Glossary/es|RAD]] [[Glossary/es|IDE]] made with [[Glossary/es|FreePascal]] and designed to use FreePascal as its programming language and compilation tool. It has many of the features of the IDE found in Borland's [[Glossary/es|Delphi]] and [[Glossary/es|Kylix]] (although all the code has been written independently), and has some features which are missing from Delphi/Kylix, while lacking a few of the features found in the Borland products.
290292
291293Its main user interface includes a Source Code [[Glossary/es|Editor]], a Main Menu bar containing the Component Palette, a Form Design Window and an Object Inspector. Other features include a Documentation editor, considerable Code Help, and access to extensive libraries of components and packages.
292294
293295Developers typically use the IDE's Form Designer to sketch out the physical structure of their applications, use the Source Code Editor to add programming instructions to respond to events occurring during program execution, and then use the built-in FreePascal compiler and linker to produce executable code. During execution of the code, the [[Glossary/es|debugger]] is used to trap errors and find logical problems in the program.
294296
295297The IDE can even be used to rebuild Lazarus itself, when corrections or updates are received, for example, from the [[Glossary/es|SVN]] repositories.
296298
297299### LCL
298300
299301[[Glossary/es|Lazarus]] Component Library, contains a large number of units defining classes, components and methods for creating applications using [[Glossary/es|FreePascal]]. The LCL consists mainly of visual components and objects, often called [[Glossary/es|Widgets]]: some examples are Buttons, Labels, Edit Boxes, Drop-down Lists, Popup Menus, Images and Grids. The non-visual elements such as file handling and database management are found in the [[Glossary/es|FreePascal Component Library]] and [[Glossary/es|Run Time Library]]. Many of the components defined in the LCL and other libraries are used to build the Lazarus [[Glossary/es|IDE]].
300302
301303See [[Lazarus Components]] for a list of components available, and their equivalent in TurboPascal and Delphi.
302304
303305### Linker
304306
305307A computer program that takes the output from a [[Glossary/es|Compiler]] and finds any pre-compiled library routines that are needed, and joins them all together to produce and executable program.
306308
307309### [Linux](http://www.linux.org/)
308310
309311An [[Glossary/es|Open Source]] [[Glossary/es|Operating System]] derived originally from [[Glossary/es|Unix]], but totally re-built using Open Source code, and receiving contributions from literally thousands of developers. Today it is one of the most popular Operating Systems. It is one of the platforms for which [[Glossary/es|FreePascal]] and [[Glossary/es|Lazarus]] are built, and one of the platforms extensively used for their development.
310312
311313## M
312314
313315### MAC
314316
315317Usually refers to the Macintosh [[Glossary/es|Operating System]] from Apple, it is famous for its high quality graphics and stability. The latest version [[Glossary/es|MAC OS X]] looks very like [[Glossary/es|Unix]] or [[Glossary/es|Linux]], and is a combination of Commercial and OpenSource libraries and applications. [[Glossary/es|OSX]] is currently capable of running [[Glossary/es|X11]]. It is one of the most popular Operating Systems today and nowadays offers quality hardware at a reasonable price.
316318
317319MAC can also refer to the MAC workstation which is the hardware needed to run the Operating System.
318320
319321In regards to a network MAC means Media Access Control or Medium Access Control
320322
321323## N
322324
323325## O
324326
325327### Objeto
326328
327329
328330   Un tipo especial de #Registro utilizado en [[Glossary/es|FreePascal]] y otros lenguajes de alto nivel [[Glossary/es|Orientados a Objetos]]. Además de contener un grupo de campos de datos (a semejanza de los registros convencionales), un Objeto contiene punteros a Métodos (procedimientos y funciones) para procesar los datos de los campos. Por ejemplo, un objeto puede tener una matriz de números reales, junto con los Métodos para calcular la media de los mismos.
329331
330332``` pascal
331333 Type
332334 Media = Object
333335 UnValor: Integer;
334336 Valores: Array [1..200] of Real;
335337 Function DameLaMedia : Real; { calcula la media de los valores de la matriz }
336338 End;
337339```
338340
339341
340342   O un Botón en un Formulario en un entorno gráfico podría tener la siguiente estructura (muy simplificada):
341343
342344``` pascal
343345 Type
344346 Boton = Object
345347 Arriba, Izquierda: Integer; { coordenadas de pantalla para definir la posición del botón }
346348 Alto, Ancho: Integer;
347349 Color: TColor;
348350 Rotulo : String;
349351 Procedure OnClick; { método ejecutado cuándo el ratón es pulsado sobre la imagen del botón}
350352 End;
351353```
352354
353355
354356   El procedimiento o función de la definición precedente debe ser declarado en alguna parte del programa, habitualmente en la sección de **Implementation**.
355357
356358
357359   Ver también [[Glossary/es|Clases]]
358360
359361### OO
360362
361363
362364   **Orientación a Objetos**
363365
364366
365367   Extensión del lenguaje procedimental que permite la creación y manipulación de [[Glossary/es|Objetos]] complejos.
366368
367369
368370   Mientras el [[Glossary/es|Pascal]] estándar dispone de estructuras cómo [[Glossary/es|Registros]] en la que diferentes tipos de datos [[Integer|enteros]], reales, matrices, [[String|cadenas de caracteres]] y [[Pointer|punteros]] pueden coexistir de forma predeterminada, un lenguaje orientado a objetos cómo [[Glossary/es|FreePascal]] permite que esa estructura pueda también contener **Métodos** (procedimientos y funciones) para manipular los datos contenidos en la misma.
369371
370372### Open Source
371373
372374A system of software development based on publishing all your source code where it is freely available for others to view, copy, compile and use, and also to correct, modify and improve. Users, developers or modifiers are simply required or expected to acknowledge where the source came from, how they have changed it, and make the source available to anyone to whom they give or sell their program. It exists in contrast to the usual commercial model of software development, where programs are shrouded in secrecy and patent/copyright legality, only a few members of the team have access to the code, and the end user has no idea of how the program works or how to fix it if it breaks.
373375
374376From the outset, [[Glossary/es|FreePascal]] and [[Glossary/es|Lazarus]] have been developed as open source programs, with all the source code freely available to anybody who wants to use it, and with encouragement to all to try it out, suggest bug-fixes, attempt to improve it or complete the parts that have not been implemented, and generally contribute to its development. This approach has led to an excellent cooperative effort, rapid development of the system and a development environment that is completely transparent for all its users.
375377
376378### OS
377379
378380The **Operating System** is a program that controls the basic performance of a computer. It deals with the input-output functions of the various parts (such as keyboard, mouse, video display, disk storage, memory and peripherals such as serial, parallel and USB interfaces); it controls scheduling of tasks and allocation of processing time between processes and users; it traps system errors and performs a host of other functions. Most of these activities proceed without the user being aware of them.
379381
380382An operating system usually has a part called the **Kernel** (ie the most deeply embedded part of the program) which is started by the **BIOS** (basic input-output system of the computer) 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.
381383
382384There is often another 'layer' called the **Shell**, which represents an interface between the Kernel and the user who types commands on a keyboard or moves a mouse around the table to select commands displayed on the screen.
383385
384386An Operating Systems can operate in Console (Text) or Graphical Mode. Most modern Operating Systems support threading and are multitasking, allowing multiple programs to run at the same time.
385387
386388### OSX
387389
388390The latest version of the Macintosh [[Glossary/es|Operating System]], see [[Glossary/es|MAC]]
389391
390392## P
391393
392394### [Pascal](http://en.wikipedia.org/wiki/Pascal_programming_language)
393395
394396Pascal is a procedural programming language invented by Niklaus Wirth (see [[Basic Pascal Tutorial/History/es|Pascal History]], [[Why use Pascal]]).
395397
396398There is an international standard definition of the language (ISO 7185, equivalent to ANSI/IEEE770X3.97), but apart from [Gnu Pascal](http://www.gnu-pascal.de/gpc/h-index.html) ([[Glossary/es|Open Source]]) and Prospero Pascal (a commercial product available only for [[Glossary/es|Windows]] systems), not many of the modern implementations conform exactly to the Standard. However, they are all essentially similar in syntax and structure, and programs written for one variant are fairly interchangeable with others.
397399
398400[[Glossary/es|FreePascal]], [[Glossary/es|Delphi]] and other variants of Pascal have Object Oriented extensions.
399401
400402### PDA
401403
402404Personal 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 [[Glossary/es|Zaurus]] which has a [[Glossary/es|Linux]] operating system is a popular vehicle for experimenters and developers.
403405
404406There is a [[Glossary/es|FreePascal]] [[Glossary/es|cross-compiler]] available, which allows Pascal programs compiled on a PC to be run on the Zaurus, and there is also a WinCE [[Glossary/es|cross-compiler]] branch of FPC that allows applications to be developed in Windows for operation on the Pocket-PC.
405407
406408## Q
407409
408410### [Qt interface](http://wiki.lazarus.freepascal.org/index.php/Qt_Interface)
409411
410412Qt is one of the major [[Glossary/es|widget]] sets used in Linux, and forms the basis for the KDE (K-desktop environment). It is one of the libraries of widgets actively supported by Lazarus-FPC, though it is not as well-established as the GTK libraries.
411413
412414## R
413415
414416### RAD
415417
416418Rapid Application Development (Examples: [[Glossary/es|Delphi]], [[Glossary/es|Lazarus]], Visual Basic)
417419
418420A software package for the fast and easy creation of Applications (Programs). Typically includes a [[Glossary/es|text editor]], a [[Glossary/es|graphic user interface]], and easy links to various tools such as [[Glossary/es|compilers]], [[Glossary/es|linkers]] and [[Glossary/es|debuggers]]. Frequently offers an Integrated Development Environment ([[Glossary/es|IDE]]).
419421
420422### Registro
421423
422424
423425   Un tipo estructurado de datos en #Pascal y otros lenguajes de alto nivel.
424426
425427
426428   Mientras una estructura simple tal que una matiz o un conjunto consiste en una agrupación de elementos del mismo tipo, un registro consiste en un agregado de elementos de tipos diversos, y puede tener en una gran complejidad.
427429
428430
429431   Los registros son muy utilizados en Pascal, para agrupar elementos de datos lógicamente unidos. Constituyen la base para tipos de estructuras más complicadas cómo los Objetos y las #Clases, utilizados en la programación Orientada a Objetos. Más información en: [[Record/es|Registro]].
430432
431433### [[RTL]]
432434
433435Runtime Library
434436
435437The library of components in [[Glossary/es|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 [[Glossary/es|FreePascal Component Library FCL]]
436438
437439## S
438440
439441### SQL
440442
441443Structured Query Language.
442444
443445An universal script language used in various types of [[Glossary/es|DataBases]] with a defined syntax to be used for execution of queries.
444446
445447### SVN
446448
447449[Subversion](http://subversion.tigris.org/)
448450
449451A document version control system designed to improve upon and ultimately to replace [[Glossary/es|CVS]].
450452
451453SVN is the document management system currently used by both the [[Glossary/es|FreePascal]] and the [[Glossary/es|Lazarus]] projects.
452454
453455## T
454456
455457### [[Turbo Pascal]]
456458
457459A Pascal compiler produced by Borland which revolutionised Pascal development on PCs and microcomputers.
458460
459461Previous Pascal compilers were huge and cumbersome, or slow, or expensive, or all three.
460462
461463Borland's TurboPascal was very fast, very economic in resources, and very cheap.
462464
463465Unfortunately it did not comply in all respects with the ISO standard, notably in its handling of the get() and put() functions with textfiles.
464466
465467However 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.
466468
467469It also forms the foundation for FreePascal and Lazarus, but the main difference between Borland's compilers and FreePascal is that the source is not available for Borland, 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 ([[Glossary/es|open-source]]).
468470
469471## U
470472
471473### Unix
472474
473475One of the first [[Glossary/es|Operating Systems]]. It was written in [[Glossary/es|C]] and had threading and multi process capabilities; later Linus Torvalds and other programmers made an Open Source system resembling Unix called [[Glossary/es|Linux]] which is one of the most popular Operating Systems today. Others followed the example and other Operating Systems were born: FreeBSD, OpenBSD, NetBSD and many others; also Apple introduced Open Source parts of various Unix clones and made MAC OS X which is famous for its graphical features and stability.
474476
475477### Unit
476478
477479
478480   Un archivo con código fuente Pascal es denominado una unidad y usualmente tienen las extensiones .pas, .pp o .p.
479481
480482
481483   Unit es un identificador reservado de Pascal que habitualmente es la primera palabra de la primera línea de código del archivo "**unit** MiUnidad;", donde MiUnidad es el nombre de la unidad, que se corresponde con el nombre del archivo.
482484
483485
484486   Una unidad tiene además dos secciones principales **interface** e **implementation** que equivaldría en la terminología de C/C++ al archivo de cabeceras (.h, .hpp, .hh) y al erchivo del cuerpo (.c, .cpp, .cc).
485487
486488
487489   Todo el código en la sección de interface puede ser utilizado por otras unidades o archivos del programa que utilicen la unidad: esto se hace a través de la cláusula **uses**. La cláusula [[Glossary/es|uses]] puede aparecer tanto en la sección de *interfaz* cómo en la de *implementation*; el código dentro de la sección *implementation* es "privado" y únicamente es accesible desde dentro de la propia unidad, a no ser que sea redefinida en la sección de *interface*, cómo es el caso de los procedimientos y funciones "globales"
488490
489491
490492   Una unidad Pascal también puede contener otras secciones, **initialization** y **finalization**, que serán ejecutadas automáticamente cuando el programa principal se inicia y ternima la utilización de la unidad, tal como indican sus nombres.
491493
492494
493495   Ver también [[Unit/es|Unidad]]
494496
495497### Uses
496498
497499
498500   Cláusula en un programa Object Pascal. Una línea cerca del principio del archivo o [[Glosary/es|Unidad]] (o siguiendo a ***interface**'' en la sección de interfaz o a***implementation**'' en la implementación) que enumera otras unidades que necesitan estar disponibles para hallar [[Glosario/es|componentes]] utilizados en el programa.
499501
500502
501503   Por ejemplo
502504
503505``` pascal
504506 uses
505507 Classes,
506508 SysUtils,
507509 MySpecialUnit;
508510```
509511
510512
511513   Ver [[Uses]].
512514
513515## V
514516
515517### VCL
516518
517519
518520   Librería de Componentes Visuales es la base de las clases de Componentes de Delphi.
519521
520522### V4L
521523
522524
523525   Vídeo para Linux
524526
525527### VFW
526528
527529
528530   Vídeo para Windows
529531
530532## W
531533
532534### Widget
533535
534536A small (or even large!) graphical object or image, often part of a larger image, form, screen or picture. [[Glossary/es|Object Oriented]] programs often depend heavily on the use of Forms, which comprise a large number of widgets such as buttons, captions, edit boxes, scroll bars, titles, menu bars, panels, grids and pictorial images like photos or drawings.
535537
536538[[Glossary/es|Lazarus]] has separate widget sets for each Window Manager system, such as Microsoft Windows (widget sets Win32/64, or WinCE for hand-held devices), Linux (widget sets GTK1 or GTK2 for Gnome-based sysems, QT for KDE systems), Apple (widget set Carbon) as well as some non-specific sets such as FpGUI.
537539
538540Lazarus developers have had to design custom-built interfaces to each widget set: the aim is to provide an interface of which the user is unaware; he simply writes the code or designs the form, and the widgets of the relevant set for his operating system fit into place and work seamlessly.
539541
540542### Wiki
541543
542544A 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.
543545
544546The [Lazarus and FreePascal Wiki](http://wiki.lazarus.freepascal.org/) site that you are currently browsing contains extensive documentation about the [[Glossary/es|FreePascal]] and [[Glossary/es|Lazarus]] projects. Users and developers are actively encouraged to [register](http://wiki.lazarus.freepascal.org/index.php?title=Special:Userlogin&returnto=Special:Userlogout) and submit their contributions.
545547
546548### Windows
547549
548550An [[Glossary/es|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.
549551
550552"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 [[Glossary/es|X11]]) or simple text-windows used by inherently text-based systems.
551553
552554## X
553555
554556### [X11](http://www.x.org/wiki/)
555557
556558Also called XFree, Xorg or simply X is a graphical interface originally designed for [[Glossary/es|Unix]] and also widely used in [[Glossary/es|Linux]].
557559
558560The 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 [[Glossary/es|widgets]] yet, some programmers developed more advanced widgets like [[Glossary/es|GTK]] and [[Glossary/es|QT]] and various Window Managers and Desktop Environments like GNOME, KDE, XPde, XFCE, IceWM, WindowMaker and many others.
559561
560562For more information about X11 please visit the [XFree website](http://www.x.org).
561563
562564## Y
563565
564566## Z
565567
566568### Zaurus
567569
568570[[Glossary/es|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
569571
570572---
571573*From the Free Pascal wiki, page "Glossary/es", as it stood on 2022-09-05 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
572574Category: Castellano
573575Category: Español
574576Category: Glossary/es
575577Category: Main/es

Back to history