stringtranslate.com

Turbo Pascal

Turbo Pascal es un sistema de desarrollo de software que incluye un compilador y un entorno de desarrollo integrado (IDE) para el lenguaje de programación Pascal que se ejecuta en los sistemas operativos CP/M , CP/M-86 y MS-DOS . Fue desarrollado originalmente por Anders Hejlsberg en Borland y se destacó por su compilación muy rápida. Turbo Pascal y el posterior pero similar Turbo C hicieron de Borland un líder en herramientas de desarrollo basadas en PC.

Para las versiones 6 y 7 (las dos últimas versiones), se produjeron tanto un Turbo Pascal de menor precio como un Borland Pascal más caro; Borland Pascal estaba más orientado al desarrollo de software profesional, con más bibliotecas y código fuente de la biblioteca estándar . El nombre Borland Pascal también se usa de manera más genérica para el dialecto de Borland del lenguaje Pascal, significativamente diferente del Pascal estándar.

Borland ha publicado tres versiones antiguas de Turbo Pascal de forma gratuita debido a su interés histórico: el Turbo Pascal original (ahora conocido como 1.0) y las versiones 3.02 y 5.5 para DOS. [3] [4] [5]

Historia

Philippe Kahn vio por primera vez una oportunidad para Borland, su nueva empresa de software, en el campo de las herramientas de programación. Históricamente, la gran mayoría de los programadores veían su flujo de trabajo en términos del ciclo de edición/compilación/enlace, con herramientas separadas dedicadas a cada tarea. Los programadores escribían el código fuente utilizando un editor de texto ; luego, el código fuente se compilaba en código objeto (que a menudo requería varias pasadas) y un enlazador combinaba el código objeto con bibliotecas de tiempo de ejecución para producir un programa ejecutable.

En los comienzos del mercado de IBM PC (1981-1983), los principales proveedores de herramientas de programación fabricaban compiladores que funcionaban de forma similar. Por ejemplo, el sistema Microsoft Pascal constaba de dos pasadas de compilación y una pasada de enlace final (que podía tardar minutos en sistemas con solo disquetes como almacenamiento secundario, aunque los programas eran mucho más pequeños que en la actualidad). Este proceso requería menos recursos que el posterior entorno de desarrollo integrado (IDE). Los proveedores de herramientas de desarrollo de software dirigían sus productos a los desarrolladores profesionales, y el precio de estas herramientas básicas más las herramientas auxiliares, como los perfiladores, ascendía a cientos de dólares.

La idea de Kahn era empaquetar todas estas funciones en un conjunto de herramientas de programación integrado diseñado para tener un rendimiento y un uso de recursos mucho mejores que las herramientas de desarrollo profesional habituales, y cobrar un precio bajo por un paquete que integrara un editor de texto personalizado, un compilador y todas las funciones necesarias para producir programas ejecutables. El programa se vendió por correo directo a 49,95 dólares , sin pasar por los canales de venta establecidos (minoristas o revendedores). [6]

El compilador Turbo Pascal se basó en el compilador Blue Label Pascal producido originalmente para el sistema operativo basado en casetes NasSys del microordenador Nascom en 1981 por Anders Hejlsberg . Borland licenció el núcleo del compilador "PolyPascal" de Hejlsberg ( Poly Data era el nombre de la empresa de Hejlsberg en Dinamarca) y añadió la interfaz de usuario y el editor. Anders Hejlsberg se unió a la empresa como empleado y fue el arquitecto de todas las versiones del compilador Turbo Pascal y de las tres primeras versiones de Borland Delphi . [3]

El compilador fue lanzado inicialmente como Compas Pascal para CP/M , y luego lanzado el 20 de noviembre de 1983 [2] como Turbo Pascal para CP/M (incluyendo el Apple II equipado con una Z-80 SoftCard , convirtiendo efectivamente el Apple basado en 6502 en una máquina CP/M, el Commodore 64 con cartucho CP/M, y el posterior DEC Rainbow ), CP/M-86, y máquinas DOS. En su lanzamiento en el mercado de los Estados Unidos , Turbo Pascal se vendió por US$ 49,99 , un precio muy bajo para un compilador en ese momento. El compilador Pascal integrado era de buena calidad en comparación con otros productos Pascal de la época. [7]

El nombre Turbo hacía alusión a la velocidad de compilación y de los ejecutables producidos. El ciclo de edición/compilación/ejecución era rápido comparado con otras implementaciones de Pascal porque todo lo relacionado con la construcción del programa se almacenaba en la RAM, y porque era un compilador de una sola pasada escrito en lenguaje ensamblador . La compilación era mucho más rápida que los compiladores para otros lenguajes (incluso los compiladores posteriores del propio Borland para C), [ cita requerida ] y otros compiladores de Pascal, y también se ahorraba tiempo al programador ya que el programa podía compilarse y ejecutarse desde el IDE. La velocidad de ejecución de estos programas en formato COM fue una revelación para los desarrolladores cuya única experiencia previa en la programación de microcomputadoras era con BASIC interpretado o UCSD Pascal , que compilaban a código p que luego se interpretaba en tiempo de ejecución.

A diferencia de otras herramientas de desarrollo, los discos de Turbo Pascal no tenían protección contra copias . Turbo Pascal venía con la "Licencia de Libro": "Debes tratar este software como un libro ... [puede] ser utilizado por cualquier número de personas... puede ser movido libremente de una ubicación de computadora a otra, siempre y cuando no haya posibilidad de que sea utilizado en una ubicación mientras se está utilizando en otra". [8]

Recepción

Borland vendió alrededor de 250.000 copias de Turbo Pascal en dos años, una cifra que Bruce F. Webster de Byte describió como "una cifra asombrosa para un lenguaje informático". [9] Seis meses después informó que la cifra había aumentado a "más de 400.000 copias en un mercado que se había estimado que tenía sólo 30.000 compradores potenciales". [10]

Jerry Pournelle escribió en la revista en febrero de 1984 que Turbo Pascal "se acerca a lo que creo que la industria informática está buscando: bien documentado, estándar, con muchas buenas características y un precio razonable". No le gustaba el requisito de comprar otra licencia para distribuir binarios, pero señaló que "resulta que no es mucho más. Borland solo quiere otros 100 dólares " además del precio base de 49,95 dólares , y que "mi primera impresión de Turbo es que probablemente valga 149,95 dólares . Parece hacer todo lo que hace MT+ con el Speed ​​Programming Package , y tal vez incluso hacerlo más rápido y mejor". [11] Pournelle informó en julio que, según Kahn, IBM se había negado a revender Turbo Pascal a menos que el precio fuera de al menos 200 dólares ; señaló que "Turbo es mucho mejor que el Pascal que vende IBM", y a diferencia de este último era compatible con el IBM PCjr . [12] Los críticos de Three Byte elogiaron a Turbo Pascal en el mismo número. Un crítico dijo que debido a las diferencias de dialecto "Turbo no es realmente Pascal, pero es muy útil". Si bien advirtió que no era adecuado para desarrollar aplicaciones muy grandes, concluyó que Turbo Pascal "está bien escrito, es divertido de usar a veces y lo suficientemente rápido como para compensar sus pocas deficiencias... es una ganga que no se debe dejar pasar". Un segundo crítico calificó la versión DOS como "sin duda, el software de mejor relación calidad-precio que he comprado", mientras que un tercero dijo que Borland "merece elogios por" la versión CP/M de "alto valor". [13]

En agosto de 1985, Pournelle denominó a la versión 3.0 "una mejora notable de la ya impresionante versión 2" y dijo que la nueva licencia de libro "me parece bastante justa". Dijo que "Turbo Pascal tiene que ser el lenguaje con la mejor relación calidad-precio del mercado actual", y que Borland lideraba la industria al "ofrecer productos excelentes a costes razonables". [14] A pesar de encontrar lo que la revista llamó "un error grave" en la versión 3.0 y una menor compatibilidad con los clones de PC , Byte afirmó en febrero de 1986 que "es difícil evitar recomendar Turbo a cualquiera que quiera programar en Pascal", citando mejoras en la velocidad y las rutinas gráficas. [15] Al revisar otros cuatro compiladores de Pascal en diciembre de 1986, la revista describió a Turbo Pascal como "práctico y atractivo para programadores de todos los niveles de experiencia". [16] Además de permitir aplicaciones de más de 64 KB, Byte informó en 1988 que la compilación y ejecución de la versión 4.0 era sustancialmente más rápida y que, aunque no mantenía la compatibilidad "casi total" con versiones anteriores, la conversión era rápida y sencilla. El crítico concluyó: "Recomiendo encarecidamente Turbo Pascal 4.0 como complemento al repertorio de software de cualquier programador". [17]

Webster elogió el lenguaje, afirmando en agosto de 1985 que Turbo Pascal "es mejor conocido por su pequeño tamaño, increíbles velocidades de compilación y rápidos tiempos de ejecución". Señaló que la calidad del software y el bajo precio eran especialmente sorprendentes después del " fiasco de JRT Pascal ", y afirmó que incluso con el nuevo precio más alto de $69.95 , la versión 3.0 era "probablemente todavía la mejor oferta de software en el mercado". [9] PC Magazine fue igualmente elogiosa en noviembre de 1984, afirmando que "nunca antes ha existido nada como Turbo Pascal para PC-DOS". Elogió el bajo precio del software, la velocidad y la documentación inusualmente buena para un compilador, y destacó la existencia de muchas utilidades para Turbo Pascal de otras empresas. La revisión afirmó que el IDE que simplificaba el bucle de edición-compilación-ejecución-depuración hizo que Turbo Pascal fuera accesible, como BASIC, para los nuevos programadores. [18]

En 1989, Byte incluyó a Turbo C y Turbo Pascal entre los ganadores de los premios "Distinction" de los Byte Awards. Citando su interfaz de usuario y su continuo énfasis en la velocidad, la revista afirmó que "para la creación rápida de prototipos no hay nada mejor". [19] En el mismo número, Pournelle volvió a elogiar las versiones 4.0 y 5.0 de Turbo Pascal. Citando a Anacreon como "un buen ejemplo de lo complejo que puede ser un programa en Pascal", y las numerosas bibliotecas de Borland y otros desarrolladores, escribió: "Creo que bien puede ser el lenguaje para el resto de nosotros". [20]

Scott MacGregor, de Microsoft, dijo que Bill Gates "no podía entender por qué nuestro software era tan lento" en comparación con Turbo Pascal. "Traía al pobre Greg Whitten [director de programación de lenguajes de Microsoft] y le gritaba durante media hora" porque su empresa no era capaz de derrotar a la pequeña empresa emergente de Kahn, recordó MacGregor. [21]

Sucesores

En 1995, Borland abandonó Turbo/Borland Pascal y lo reemplazó por el entorno de desarrollo rápido de aplicaciones (RAD) Borland Delphi , basado en Object Pascal. Las versiones de 32 y 64 bits de Delphi aún admiten las mejoras de Pascal más portables de los productos anteriores (es decir, aquellas que no son específicas para código de 16 bits ), incluido el modelo de objetos estáticos anterior. Esta compatibilidad con versiones anteriores del lenguaje significa que gran parte del antiguo código de Turbo Pascal todavía se puede compilar y ejecutar en un entorno moderno en la actualidad.

Otros proveedores han producido herramientas de desarrollo de software compatibles con Turbo Pascal. Las más conocidas son Free Pascal y Virtual Pascal .

Sintaxis

Este es el clásico programa "¡Hola, mundo!" en Turbo Pascal:

programa HolaMundo ; comienzo WriteLn ( 'Hola Mundo' ) fin .  

Esto pide un nombre y lo escribe en la pantalla cien veces:

programa WriteName ; var i : Entero ; {variable que se usará para el bucle} Nombre : Cadena ; {declara la variable Nombre como una cadena} begin Write ( 'Por favor, dígame su nombre:' ) ; ReadLn ( Nombre ) ; {ReadLn devuelve la cadena ingresada por el usuario} for i := 1 a 100 do begin WriteLn ( 'Hola' , Nombre ) end ; readln ; end .                        

Características

Lenguaje ensamblador

Si bien todas las versiones de Turbo Pascal podían incluir código de máquina en línea , a partir de la versión 6 fue posible integrar el lenguaje ensamblador dentro del código fuente de Pascal. [22]

El soporte para los distintos modelos de memoria x86 se proporcionaba mediante ensamblaje en línea, opciones del compilador y extensiones del lenguaje como la palabra clave "absolute". El Turbo Assembler , TASM, un ensamblador x86 estándar independiente de TP y compatible en código fuente con el ampliamente utilizado Microsoft Macro Assembler MASM, se suministraba con las versiones mejoradas de "Borland Pascal".

Depuración y creación de perfiles

El IDE ofrecía varias facilidades de depuración, incluyendo pasos individuales , examen y cambio de variables y puntos de interrupción condicionales. En versiones posteriores se podían recorrer bloques en lenguaje ensamblador paso a paso. El usuario podía añadir puntos de interrupción en variables y registros en una ventana del IDE. Los programas que utilizaban el modo gráfico de IBM PC podían cambiar entre el modo gráfico y el modo texto de forma automática o manual, o mostrar ambos en dos pantallas. Para los casos en los que las relativamente simples facilidades de depuración del IDE eran insuficientes, Turbopower Software produjo un depurador más potente, T-Debug. [23] La misma empresa produjo Turbo Analyst y Overlay Manager para Turbo Pascal. T-Debug se actualizó más tarde para Turbo Pascal 4, pero se interrumpió con el lanzamiento del Turbo Debugger (TD) de Borland , que también permitía cierta intervención de hardware en computadoras equipadas con el nuevo procesador 80386 .

El TD se suministraba habitualmente junto con el Turbo Assembler y el Turbo Profiler, un generador de perfiles de código que informaba sobre el tiempo empleado en cada parte del programa para ayudar a optimizarlo mediante la detección de cuellos de botella. [24] Los libros incluidos con Borland Pascal contenían descripciones detalladas del lenguaje ensamblador de Intel , incluido el número de ciclos de reloj necesarios para cada instrucción. El desarrollo y la depuración se podían llevar a cabo íntegramente dentro del IDE, a menos que se necesitaran las funciones de depuración avanzadas de Turbopower T-Debug y, posteriormente, de TD.

Las versiones posteriores también admitieron la depuración remota a través de un cable de comunicación RS-232 . [25]

Unidades

Con el paso de los años, Borland no solo mejoró el IDE, sino que también extendió el lenguaje de programación. Un sistema de desarrollo basado en el estándar ISO Pascal requiere extensiones específicas de implementación para el desarrollo de aplicaciones del mundo real en las plataformas a las que se dirigen. El estándar Pascal está diseñado para ser independiente de la plataforma, por lo que no prescribe ningún acceso de bajo nivel a las funciones dependientes del hardware o del sistema operativo. El estándar Pascal tampoco prescribe cómo se debe dividir un programa grande en unidades de compilación independientes. A partir de la versión 4, Turbo Pascal adoptó el concepto de unidades de UCSD Pascal . Las unidades se usaban como bibliotecas de funciones externas, como los archivos de objetos utilizados en otros lenguajes como FORTRAN o C.

Por ejemplo, la línea uses crt;de un programa incluía la unidad llamada crt; el useses el mecanismo para utilizar otras unidades de compilación. interfacey implementationeran las palabras clave utilizadas para especificar, dentro de la unidad, qué era (y qué no era) visible fuera de la unidad. Esto es similar a las palabras clave publicy privateen otros lenguajes como C++ y Java .

Las unidades del Pascal de Borland eran similares al sistema de compilación independiente de Modula-2 . En 1987, cuando se lanzó Turbo Pascal 4, Modula-2 estaba ganando terreno como lenguaje educativo que podría reemplazar a Pascal. Borland, de hecho, tenía un compilador Turbo Modula-2, pero solo lo lanzó en CP/M (su interfaz de usuario era casi idéntica a la de Turbo Pascal 1–3) con poco marketing. Se desarrolló una versión DOS muy mejorada, pero como Borland no estaba dispuesto a publicar los resultados, los autores, incluido Niels Jensen, compraron los derechos y formaron Jensen & Partners International para publicarla como JPI TopSpeed ​​Modula-2. En cambio, Borland optó por implementar la compilación independiente en su producto Pascal establecido.

La compilación por separado no formaba parte del lenguaje estándar de Pascal, pero ya estaba disponible en UCSD Pascal , que era muy popular en las máquinas de 8 bits. La sintaxis de Turbo Pascal para las unidades parece haber sido tomada prestada de UCSD Pascal. [26] Las versiones anteriores de Turbo Pascal, diseñadas para computadoras con recursos limitados, admitían un sistema de "encadenamiento y ejecución" de enlace dinámico para objetos compilados por separado, similar al sistema ampliamente utilizado en BASIC. Además, el lenguaje tenía una declaración para incluir código fuente separado en un programa cuando fuera necesario, y la superposición se admitía desde TP3, pero, al igual que con las superposiciones, los objetos encadenados tenían que caber en el espacio de memoria del programa original (limitado). A medida que avanzaban las instalaciones de computación y almacenamiento, se agregó a Turbo Pascal la capacidad de generar archivos EXE grandes, con la capacidad de enlazar estáticamente y cargar colectivamente objetos compilados por separado.

Los archivos .TPU generados al compilar una unidad Turbo Pascal están estrechamente vinculados a las estructuras internas del compilador, en lugar de los archivos .OBJ vinculables estándar. Esto mejoró los tiempos de compilación y vinculación, pero significó que los archivos .TPU no se podían vincular con la salida de otros lenguajes o incluso no se podían usar con diferentes versiones de Turbo Pascal a menos que se volvieran a compilar desde el código fuente.

Programación orientada a objetos

A partir de la versión 5.5 se introdujeron algunas características de programación orientada a objetos : clases , herencia , constructores y destructores . [5] El IDE ya estaba ampliado con una interfaz de navegador de objetos que mostraba las relaciones entre objetos y métodos y permitía a los programadores navegar por los módulos fácilmente. Borland llamó a su lenguaje Object Pascal , que se amplió en gran medida para convertirse en el lenguaje subyacente a Delphi (que tiene dos sistemas OOP separados). El nombre "Object Pascal" se originó con las extensiones Pascal desarrolladas por Apple Computer para programar sus computadoras Lisa y Macintosh . El creador de Pascal, Niklaus Wirth, asesoró en el desarrollo de estas extensiones, que se basaron en el tipo de registro ya presente en Pascal.

Problema con la unidad CRT en procesadores rápidos

Varias versiones de Turbo Pascal, incluida la última versión 7, incluyen una unidad llamada CRT, que fue utilizada por muchas aplicaciones de modo texto de pantalla completa en un CRT . Esta unidad contiene código en su sección de inicialización para determinar la velocidad de la CPU y calibrar los bucles de retardo. Este código falla en procesadores con una velocidad mayor a aproximadamente 200  MHz y aborta inmediatamente con un mensaje "Runtime Error 200" [27] (el código de error 200 no tenía nada que ver con la velocidad de la CPU 200 MHz). Esto se debe a que un bucle se ejecuta para contar la cantidad de veces que puede iterar en un tiempo fijo, medido por el reloj de tiempo real . Cuando se desarrolló Turbo Pascal, se ejecutaba en máquinas con CPU que funcionaban a 2,5 a 8 MHz, y se pensó poco en la posibilidad de velocidades mucho más altas, por lo que desde aproximadamente 200 MHz se pueden ejecutar suficientes iteraciones para desbordar el contador de 16 bits. [28] Se produjo un parche cuando las máquinas se volvieron demasiado rápidas para el método original, pero falló cuando las velocidades del procesador aumentaron aún más y fue reemplazado por otros.

Los programas sujetos a este error se pueden volver a compilar desde el código fuente con un compilador parcheado para eliminar el error (usando un TURBO.TPL compilado con una unidad CRT corregida) o, si el código fuente no está disponible, los ejecutables se pueden parchear con una herramienta llamada TPPATCH o equivalente, [29] [30] o cargando un programa residente de terminación y permanencia antes de ejecutar el programa defectuoso. [31]

También existen parches para el compilador TP7, [32] por lo que si el código fuente de Pascal está disponible, el código de una nueva compilación funcionará sin que el código compilado necesite un parche. Si el código fuente está disponible, la portabilidad a bibliotecas que no dependan de la velocidad del reloj de la CPU también es una solución. [33]

Aritmética de punto flotante

Había varios tipos de punto flotantesingle , entre ellos (la representación [IEEE 754] de 4 bytes), double(la representación IEEE 754 de 8 bytes), extended(una representación IEEE 754 de 10 bytes utilizada principalmente internamente por coprocesadores numéricos ) y Real(una representación de 6 bytes).

En sus inicios, Realera el más popular. La mayoría de las PC de la época no tenían un coprocesador de punto flotante , por lo que toda la aritmética de punto flotante debía realizarse mediante software. Los algoritmos de punto flotante de Borland Realeran más rápidos que los de otros tipos, aunque su biblioteca también emulaba los otros tipos mediante software.

Versiones

Versiones CP/M y DOS

Versión 1

Manual del usuario de Turbo Pascal 3.0, portada

La versión 1, publicada el 20 de noviembre de 1983, era un sistema básico todo en uno que funcionaba en memoria y generaba archivos ejecutables .COM para DOS y CP/M, y archivos ejecutables .CMD equivalentes para CP/M-86 (totalmente diferentes de los archivos por lotes .CMD que se usaron más tarde en Microsoft Windows de 32 bits). Los archivos de código fuente estaban limitados a 64 KB para simplificar el IDE, y los archivos .COM de DOS estaban limitados a 64 KB cada uno de código, pila y variables globales (estáticas). El código fuente del programa se podía ampliar utilizando la función de inclusión si el código fuente excedía el límite de memoria del editor.

Existían distintas versiones de Turbo Pascal para ordenadores que ejecutaban DOS, CP/M o CP/M-86 con 64 KB de memoria y al menos una unidad de disquete. La versión CP/M podía ejecutarse en las numerosas máquinas CP/M de la época con procesadores Z80 o en un Apple II con tarjeta Z80. Las versiones DOS y CP/M-86 funcionaban en las numerosas máquinas 8086 y 8088 que se hicieron disponibles, incluida la IBM PC. El instalador, el lister y el compilador con su IDE, y el código fuente de un sencillo programa de hoja de cálculo llamado MicroCalc escrito por Philippe Kahn como demostración, cabían en un único disquete. Una copia en disco sin MicroCalc acomodaría el código fuente y el ejecutable compilado de un programa de tamaño razonable (como en aquella época era habitual que los usuarios tuvieran una única unidad de disquete como almacenamiento masivo , era muy cómodo poder colocar tanto el compilador como el programa que se estaba escribiendo en un único disco, evitando el intercambio interminable de discos).

La arquitectura de las distintas máquinas que ejecutaban MS-DOS limitaba además la memoria máxima del usuario a menos de 1 MB (por ejemplo, las máquinas compatibles con el hardware del IBM PC estaban limitadas a 640 KB).

El IDE Turbo Pascal era muy avanzado para su época. Podía funcionar bien y compilarse muy rápido con la cantidad de RAM de una computadora doméstica típica. El IDE era simple e intuitivo de usar, y tenía un sistema de menús bien organizado. Las primeras versiones del editor usaban funciones de teclas de WordStar , que era el estándar de facto en ese momento. Las versiones posteriores del IDE, diseñadas para PC con más espacio en disco y memoria, podían mostrar las definiciones de las palabras clave del lenguaje colocando el cursor sobre una palabra clave y presionando la tecla F1 (usada convencionalmente para mostrar la ayuda). Muchas definiciones incluían código de ejemplo.

Además de los programas ejecutables estándar, el compilador podía generar programas residentes en memoria (TSR), pequeñas utilidades que permanecían en la memoria y permitían que la computadora hiciera otras tareas (ejecutar varios programas al mismo tiempo, multitarea ), algo que no estaba disponible de otra manera. Borland produjo una pequeña suite de aplicaciones llamada Sidekick , que era un TSR que permitía al usuario llevar un diario, notas, etc.

Versión 2

La versión 2, publicada unos meses después, el 17 de abril de 1984, fue una mejora incremental del Turbo Pascal original, hasta el punto de que el manual de referencia era al principio idéntico al de la versión 1, hasta el punto de tener 1983 como fecha de copyright en algunas de las salidas de muestra del compilador, pero tenía un manual separado "Addendum to Reference Manual: Version 2.0 and 8087 Supplement" con numeración de páginas separada. [34] Las adiciones incluyeron un sistema de superposición , donde los procedimientos de superposición separados se intercambiarían automáticamente desde el disco a un espacio reservado en la memoria. Esta memoria era parte de la RAM de 64kB utilizada por el código del programa y era automáticamente del tamaño del procedimiento de superposición más grande. [34] Los procedimientos de superposición podían incluir secciones de superposición en sí mismos, pero a menos que se usara un disco RAM, el intercambio de discos resultante podía ser lento. 2.0 también agregó el procedimiento Dispose para administrar el montón , lo que permite liberar variables dinámicas individuales, como una alternativa al sistema más primitivo 'Mark/Release' y una mayor compatibilidad con los comandos WordStar más el uso del teclado numérico en IBM PC y compatibles. [34] Estas PC también tenían nuevos comandos de ventana de texto y modo gráfico CGA , además de poder usar el altavoz de la PC para tonos. Finalmente, las máquinas DOS y CP/M-86 con un coprocesador matemático 8087 (o posterior compatible) tenían un compilador TURBO-87 alternativo disponible para comprar. [34] Admitía los tipos de datos reales largos del 8087 con un rango de 1.67E-307 a 1.67E+308 con una precisión de 14 cifras significativas, pero con una velocidad de procesamiento mucho mayor. El manual señala que aunque el código fuente de los tipos de datos reales del software Turbo Pascal ofrece un rango de 1E-63 a 1E+63 a 11 cifras significativas, estos eran incompatibles a nivel binario: además de tener un rango mucho mayor, los tipos de datos reales del software ocupaban seis bytes en la memoria y los del 8087 ocho.

Al igual que la versión 1, la versión 2 para CP/M-80 sólo se ejecutó en máquinas CP/M basadas en Z80 . [35]

Versión 3

La versión 3 fue lanzada el 17 de septiembre de 1986. [4] Turbo Pascal 3 admitía gráficos de tortuga . [36] Además de los números reales del software predeterminado y la edición 8087 del compilador, Borland también ofrecía una versión decimal codificada en binario (BCD) (TURBOBCD) que ofrecía el mismo rango numérico que los tipos de datos reales pero con 18 cifras significativas. [4]

Versiones DOS

Versión 4

Lanzada el 20 de noviembre de 1987, [37] la versión 4 fue una reescritura total, con un aspecto y un funcionamiento interno muy modificados. El compilador generaba ejecutables en formato .EXE bajo DOS, en lugar de los ejecutables .COM, más simples pero más restringidos. Las versiones de sistema operativo CP/M y CP/M-86, que ya estaban obsoletas, se abandonaron cuando se reescribió Turbo Pascal. La versión 4 introdujo unidades y una interfaz de usuario de texto a pantalla completa con menús desplegables; las versiones anteriores tenían una pantalla de menú basada en texto y un editor de pantalla completa independiente. ( Microsoft Windows todavía era muy experimental cuando se lanzó la primera versión, e incluso los ratones eran raros). Un paquete adicional, Turbo Pascal Graphix Toolbox, estaba disponible para Turbo Pascal V4. [38]

Versión 5.0

Las pantallas en color estaban reemplazando a las monocromáticas; la versión 5.0 de Turbo Pascal, lanzada el 24 de agosto de 1988, [37] introdujo el azul como el color de fondo predeterminado del editor, utilizado por los compiladores DOS de Borland hasta el final de esta línea de productos a mediados de los años 1990. También agregó soporte de depuración para puntos de interrupción y vigilancias. Las versiones posteriores vinieron en dos paquetes con el mismo número de versión: un paquete "Turbo" menos costoso y un paquete "Borland" con capacidades mejoradas y más complementos.

Versión 5.5

Esta versión, publicada el 2 de mayo de 1989, [37] introdujo características de programación orientada a objetos para el lenguaje Pascal, incluyendo el concepto de clases, objetos estáticos y dinámicos, constructores y destructores y herencia, que se convertirían en la base del Object Pascal que se encuentra en Borland Delphi. El IDE utiliza el esquema de color azul predeterminado que también se utilizaría en los productos Borland Turbo posteriores. Otros cambios en el IDE incluyen la adición de ayuda sensible al contexto con la descripción de todas las funciones integradas y la capacidad de copiar fragmentos de código desde la ayuda a la ventana de edición. [39]

Versión 6.0

La versión 6 se lanzó el 23 de octubre de 1990. [37] Los cambios con respecto a la versión 5.5 incluyen: la incorporación del ensamblaje en línea, la incorporación de la biblioteca Turbo Vision , compatibilidad con mouse, portapapeles para manipulaciones de texto, interfaz de documentos múltiples que admite hasta nueve ventanas de edición. [40]

Versión 7.0

La versión 7 se lanzó el 27 de octubre de 1992. [37] Los cambios con respecto a la versión 6.0 incluyen soporte para la creación de ejecutables de DOS y Windows y DLL de Windows, y resaltado de sintaxis. [41]

Turbo Pascal para Windows

Se lanzaron dos versiones denominadas "Turbo Pascal para Windows" (TPW), para Windows 3.x : TPW 1.0, basada en Turbo Pascal 6 pero lanzada unos 2 años después, y 1.5, lanzada después de Turbo Pascal 7; fueron reemplazadas por Borland Pascal 7, que tenía soporte para Windows. El compilador de Windows en Pascal 7 se tituló Borland Pascal para Windows .

Ambas versiones crearon programas compatibles con Windows y contaban con un IDE basado en Windows, a diferencia del IDE basado en DOS de Turbo Pascal. El IDE y los comandos del editor se ajustaban a las pautas de la interfaz de usuario de Microsoft Windows en lugar de la interfaz de usuario clásica de TP. El soporte para programas de Windows requería la Object Windows Library (OWL), similar pero no idéntica a la de la primera versión de Borland C++ , y radicalmente diferente del entorno Turbo Vision de DOS anterior . Turbo Pascal fue reemplazado para la plataforma Windows por Delphi ; el compilador de Delphi puede producir programas de consola y aplicaciones de interfaz gráfica de usuario (GUI), por lo que el uso de Turbo y Borland Pascal se volvió innecesario.

Turbo Pascal para Macintosh

Borland lanzó Turbo Pascal para Macintosh en 1986. [42] [43] Al igual que las versiones 1 a 3 para otros sistemas operativos, estaba escrito en lenguaje ensamblador compacto y tenía un IDE muy potente, pero no un buen depurador. Borland no dio un buen soporte a este producto, aunque lanzó una versión 1.1, parcheada para funcionar en Macintosh II de 32 bits . El soporte para Macintosh se abandonó poco después. [ cita requerida ]

Lanzamientos de software gratuito

Borland lanzó varias versiones de Turbo Pascal como freeware después de que se convirtieran en "software antiguo", [44] con 1.0 para DOS el 1 de febrero de 2000, 3.02 el 10 de febrero de 2000, 5.5 el 21 de febrero de 2002, Turbo Pascal 7.01 versión francesa en el año 2000. [45] La mayoría de las descargas aún están disponibles en el sitio web sucesor de Embarcadero Technologies . [3] [4] [5]

Véase también

Referencias

  1. ^ Gajic, Zarko (17 de marzo de 2017). "Historia de Delphi: desde Pascal hasta Embarcadero Delphi XE 2". ThoughtCo . Dotdash. Archivado desde el original el 7 de julio de 2011 . Consultado el 18 de febrero de 2021 .
  2. ^ ab "Turbo Pascal versión 1.0 - Fechas de lanzamiento de Turbo Pascal". Archivado desde el original el 24 de abril de 2017. Consultado el 9 de septiembre de 2020 .
  3. ^ abc Intersimone, David (1 de febrero de 2000). «Antique Software: Turbo Pascal v1.0». Embarcadero Technologies. Archivado desde el original el 21 de diciembre de 2010. Consultado el 9 de noviembre de 2010 .
  4. ^ abcd Intersimone, David (10 de febrero de 2000). «Antique Software: Turbo Pascal v3.02». Embarcadero Technologies. Archivado desde el original el 24 de noviembre de 2010. Consultado el 9 de noviembre de 2010 .
  5. ^ abc Intersimone, David (21 de febrero de 2002). «Antique Software: Turbo Pascal v5.5». Embarcadero Technologies. Archivado desde el original el 24 de noviembre de 2010. Consultado el 9 de noviembre de 2010 .
  6. ^ "Micro Cornucopia (diciembre de 1984)". Diciembre de 1984.
  7. ^ Chapman, Merrill R. (2006). En busca de la estupidez: más de 20 años de desastres en el marketing de alta tecnología. Springer-Verlag. pág. 118. ISBN 978-1-59059-721-7. Archivado desde el original el 23 de junio de 2016 . Consultado el 13 de diciembre de 2015 . Borland hizo su debut en la industria a lo grande con el lanzamiento de Turbo Pascal en noviembre de 1983. Turbo Pascal era un port para DOS y CP/M de COMPAS Pascal de Anders Hejlsberg, y fue lanzado por Borland a un precio que parecía increíble en ese momento: $49.95, aproximadamente una décima parte del precio de productos comparables.
  8. ^ "La licencia sin tonterías". groups.google.com .
  9. ^ ab Webster, Bruce F. (agosto de 1985). "Saludos y agitaciones". Byte . p. 355 . Consultado el 27 de octubre de 2013 .
  10. ^ Webster, Bruce (febrero de 1986). "Herramienta de programación y Atari ST". Byte . p. 331 . Consultado el 9 de mayo de 2015 .
  11. ^ Pournelle, Jerry (febrero de 1984). "Chaos Manor obtiene su tan esperado IBM PC". Byte . p. 113 . Consultado el 8 de febrero de 2015 .
  12. ^ Pournelle, Jerry (julio de 1984). "The West Coast Faire". Byte . p. 136. Archivado desde el original el 28 de enero de 2012 . Consultado el 8 de noviembre de 2011 .
  13. ^ Wadlow, Tom; Pierce, Al; Bridger, Mark (julio de 1984). "Turbo Pascal". Byte (reseña). pp. 263–278 . Consultado el 23 de octubre de 2013 .
  14. ^ Pournelle, Jerry (agosto de 1985). "The West Coast Computer Faire". Byte . págs. 293–326 . Consultado el 5 de noviembre de 2023 .
  15. ^ Bridger, Mark (febrero de 1986). «Turbo Pascal 3.0». Byte . pág. 281 . Consultado el 9 de mayo de 2015 .
  16. ^ Shammas, Namir Clement (diciembre de 1986). "Pascal para IBM PC". Byte . p. 265 . Consultado el 9 de mayo de 2015 .
  17. ^ Banks, Walter (febrero de 1988). «Turbo Pascal 4.0». Byte . págs. 153–156 . Consultado el 1 de octubre de 2023 .
  18. ^ Duntemann, Jeff (13 de noviembre de 1984). "Supercharged Turbo Pascal". PC Magazine . pág. 276 . Consultado el 25 de octubre de 2013 .
  19. ^ "Los premios Byte". Byte . Enero de 1989. pág. 327.
  20. ^ Pournelle, Jerry (enero de 1989). "Hacia las estrellas". Byte . pág. 109.
  21. ^ Wallace, James; Erickson, Jim (1992). "Growing Pains" ( Dolores crecientes) . Disco duro: Bill Gates y la creación del imperio Microsoft . John Wiley & Sons . pág. 277. ISBN. 0-471-56886-4.
  22. ^ "Capítulo 14 - Combinación de Pascal con Assembly". Archivado desde el original el 20 de octubre de 2016. Consultado el 19 de octubre de 2016 .
  23. ^ "InfoWorld 21 Mar 1988: Anuncio de Turbopower T-Debug 4". 21 de marzo de 1988. Archivado desde el original el 25 de abril de 2016. Consultado el 13 de diciembre de 2015 .
  24. ^ "Manual de Turbo Profiler 1.0" (PDF) . Archivado desde el original (PDF) el 2012-04-02 . Consultado el 2011-11-03 .
  25. ^ "Marco Cantų's Delphi Power Book: Debugging Delphi Programs" (PDF) . Archivado desde el original (PDF) el 2012-03-31 . Consultado el 2011-10-31 .
  26. ^ "3.3.2. Enlace a rutinas compiladas y ensambladas externamente – Reconstrucción del manual del usuario del sistema Pascal II.0 de la UCSD – Versión I.5, septiembre de 1978". Archivado desde el original el 3 de septiembre de 2007.
  27. ^ "Soporte para desarrolladores de Borland Pascal". Archivado desde el original el 23 de octubre de 2010. Consultado el 25 de abril de 2011 .
  28. ^ "Error 200 en el tiempo de ejecución de inicio de Pascal de Borland versión 7 (división por cero)". Archivado desde el original el 7 de septiembre de 2015. Consultado el 16 de noviembre de 2015 .{{cite web}}: CS1 maint: URL no apta ( enlace )Página web que comenta la causa del error y diversas soluciones.
  29. ^ "PatchCRT: corrige errores de tiempo de ejecución en algunas aplicaciones". kennedysoftware.ie. 2003. Archivado desde el original el 21 de julio de 2011. Consultado el 28 de septiembre de 2010 .
  30. ^ "Nicht schon wieder: Error de tiempo de ejecución 200". 2000-04-08.
  31. ^ "Cómo solucionar el error de tiempo de ejecución 200". pcmicro.com. 2006. Consultado el 28 de septiembre de 2010 .
  32. ^ "Error de ejecución 200" (en alemán). blume-programm.de. 13 de marzo de 2003. Archivado desde el original el 17 de noviembre de 2015. Consultado el 16 de noviembre de 2015 .
  33. ^ Cheng, Allen (1997). "SuperDelay v1.1a". blume-programm.de . Consultado el 28 de septiembre de 2010 .[ enlace muerto permanente ]
  34. ^ abcd Turbo Pascal versión 2.0 (PDF) .
  35. ^ "Turbo Pascal v2.0" (PDF) . Lenguaje informático . N.º 1. 1984. págs. 78–79.
  36. ^ Hull, Nathan. "Uso de gráficos Turtle con Turbo Pascal".
  37. ^ abcde «Turbo Pascal versión 1.0 - Fechas de lanzamiento de Turbo Pascal». Embarcadero Technologies . 2008-11-17. Archivado desde el original el 2020-02-24 . Consultado el 2021-04-13 .
  38. ^ Manual de la caja de herramientas de gráficos de Borland (PDF) .
  39. ^ "Turbo Pascal 5.5: versión del lenguaje de programación Pascal". progopedia.com .
  40. ^ "Turbo Pascal 6.0: versión del lenguaje de programación Pascal". progopedia.com .
  41. ^ "Turbo Pascal 7.0: versión del lenguaje de programación Pascal". progopedia.com .
  42. ^ "Borland Turbo Pascal 1.x (Mac)".
  43. ^ Cohen, Denis (abril de 1987). "Turbo Pascal Arrives". Macworld . Vol. 4, núm. 4. págs. 162-163.
  44. ^ "Antique Software: Turbo Pascal v5.5". CDN » Museo . Borland Software Corporation. Archivado desde el original el 2004-02-03 . Consultado el 2013-04-01 .
  45. ^ "Descargas gratuitas: compiladores Delphi, Pascal y C/C++". Borland Software Corporation. Archivado desde el original el 24 de junio de 2004. Nota para usuarios internacionales: esta versión gratuita de Turbo Pascal 7 está disponible únicamente en francés. La versión estadounidense de Turbo Pascal 7 aún no está disponible como descarga gratuita. Para la versión estadounidense, descargue Turbo Pascal 5.5 US a continuación. Gracias.

Enlaces externos