De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

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 CP / M , CP / M-86 y DOS . Fue desarrollado originalmente por Anders Hejlsberg en Borland , y fue notable por sus tiempos de compilación extremadamente rápidos. Turbo Pascal, y el posterior pero similar Turbo C , hicieron de Borland un líder en desarrollo basado en PC.

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

Borland ha lanzado 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. [2] [3] [4]

Motivación y liberación [ editar ]

Philippe Kahn vio por primera vez una oportunidad para Borland, su empresa de software recién formada, en el campo de las herramientas de programación. Históricamente, la gran mayoría de programadores veía su flujo de trabajo en términos del ciclo de edición / compilación / enlace, con herramientas separadas dedicadas a cada tarea. Los programadores escribieron el código fuente usando un editor de texto ; el código fuente se compiló luego en código objeto (a menudo requiriendo múltiples pasadas), y un enlazador combinó código objeto con bibliotecas en tiempo de ejecución para producir un programa ejecutable.

En el primer mercado de PC de IBM (1981-1983), los principales proveedores de herramientas de programación fabricaban compiladores que funcionaban de manera similar. Por ejemplo, el sistema Microsoft Pascal constaba de dos pasadas de compilador y una pasada de enlace final (que podría llevar minutos en sistemas con solo disquetes para almacenamiento secundario, aunque los programas eran mucho más pequeños de lo que son hoy). Este proceso requería menos recursos que el entorno de desarrollo integrado (IDE) posterior . Los proveedores de herramientas de desarrollo de software dirigían sus productos a 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 una utilización de recursos mucho mejores que las herramientas de desarrollo profesional habituales, y cobrar un precio bajo por un paquete que integra un editor de texto personalizado, un compilador y todas las funciones necesarias para producir programas ejecutables. El programa se vendió por pedido directo por correo por $ 49.95, sin pasar por los canales de venta establecidos (minoristas o revendedores). [5]

A diferencia de otras herramientas de desarrollo, los discos Turbo Pascal no tenían protección contra copias . Turbo Pascal vino con la "Licencia de libro": "Debe 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 ya que no hay posibilidad de que se use en un lugar mientras se usa en otro ". [6]

Recepción [ editar ]

Jerry Pournelle, de la revista Byte , escribió en febrero de 1984 que Turbo Pascal "se acerca a lo que creo que busca la industria informática: bien documentado, estándar, con muchas funciones buenas y un precio razonable". A Pournelle no le gustó 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" más que el precio base de $ 49,95, y que "mi primera impresión de Turbo es que es probablemente vale $ 149.95. Parece hacer todo lo que hace MT + con el Speed ​​Programming Package , y tal vez incluso hacerlo más rápido y mejor ". [7]En julio informó 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; Pournelle señaló que "Turbo es mucho mejor que el Pascal que IBM vende" y, a diferencia de este último, era compatible con IBM PCjr . [8] Tres revisores de Byte elogiaron a Turbo Pascal en el mismo número. Uno llamó a la versión DOS "sin duda, el mejor valor de software que he comprado", y otro llamó a la versión CP / M "un producto excelente ... [Borland] merece elogios por este producto de alto valor". El tercero afirmó que "no era un buen compilador para desarrollar aplicaciones masivas", pero agregó que era muy superior al BASIC., el lenguaje de programación generalmente asociado con las computadoras domésticas en ese momento. Concluyó que Turbo Pascal era "una ganga que no debería pasarse por alto". [9]

A pesar de encontrar lo que describió como "un error grave" en la versión 3.0 y una menor compatibilidad con los clones de PC , la revista en febrero de 1986 declaró que "es difícil evitar recomendar Turbo a cualquiera que quiera programar en Pascal", citando una velocidad mejorada. y rutinas gráficas. [10] Al revisar otros cuatro compiladores de Pascal en diciembre de 1986, Byte describió a Turbo Pascal como "práctico y atractivo para programadores en todos los niveles de experiencia". [11] Bruce WebsterTambién elogió el lenguaje de la revista, 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 y el bajo precio del software habían sido especialmente sorprendentes después del " fiasco de JRT Pascal ", y afirmó que incluso con el nuevo precio más alto de 69,95 dólares, la versión 3.0 era "probablemente la mejor oferta de software del mercado". [12]

PC Magazine fue igualmente elogioso en noviembre de 1984, afirmando que "nunca antes había 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 señaló la existencia de muchas utilidades de otras compañías que esperaban beneficiarse de la popularidad de Turbo Pascal. La revisión indicó que el IDE que simplificó el ciclo editar-compilar-ejecutar-depurar hizo que Turbo Pascal fuera accesible para nuevos programadores como BASIC. [13]

Byte en 1989 incluyó a Turbo C y Turbo Pascal entre los ganadores "Distinción" de los premios Byte. Citando su interfaz de usuario y el énfasis continuo en la velocidad, la revista declaró que "para la creación rápida de prototipos no hay nada mejor". [14] En el mismo número, Pournelle elogió nuevamente la versión 4.0 y 5.0 de Turbo Pascal. Citando a Anacreon como "un buen ejemplo de lo complejo que es un programa que se puede escribir en Pascal", y las muchas bibliotecas disponibles de Borland y otros desarrolladores, escribió: "Estoy cada vez más convencido de que Turbo Pascal es el lenguaje de programación elegido para personas que están más interesadas en lo quequieren que la máquina haga que cómo hacer que eso suceda. Turbo Pascal puede no ser tan elegante ni tan portátil como C, pero seguro que es menos oscuro. Creo que bien puede ser el idioma para el resto de nosotros ". [15]

Borland vendió unas 250.000 copias de Turbo Pascal en dos años, que Webster describió como "una cifra asombrosa para un lenguaje informático". [12] Informó seis meses después 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". [dieciséis]

Versiones [ editar ]

Versiones CP / M y DOS [ editar ]

Versión 1 [ editar ]

Tapa frontal manual Turbo Pascal 3.0

El compilador Turbo Pascal se basó en el compilador Blue Label Pascal producido originalmente para el sistema operativo basado en casetes NasSys de la microcomputadora Nascom en 1981 por Anders Hejlsberg . Borland obtuvo la licencia del núcleo del compilador "PolyPascal" de Hejlsberg ( Poly Data era el nombre de la empresa de Hejlsberg en Dinamarca) y agregó la interfaz de usuario y el editor. Anders Hejlsberg se incorporó 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 . [2]

El compilador se lanzó por primera vez como Compas Pascal para CP / M , y luego el 20 de noviembre de 1983 [17] como Turbo Pascal para CP / M (incluida la computadora Apple II cuando está equipada con una Z-80 SoftCard , convirtiendo efectivamente el 6502 - Apple basó en una máquina CP / M, la Commodore 64 con cartucho CP / M y la posterior DEC Rainbow ), CP / M-86 y máquinas DOS. En su lanzamiento en el mercado de Estados Unidos , Turbo Pascal se vendió al por menor por USD 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. [18]

El nombre Turbo aludía a la velocidad de compilación y de los ejecutables producidos. El ciclo de edición / compilación / ejecución fue rápido en comparación 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 fue mucho más rápida que los compiladores para otros lenguajes (incluso los compiladores posteriores de Borland para C), [ cita requerida ] y otros compiladores de Pascal, y también se ahorró 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 fue coninterpretó BASIC o UCSD Pascal , que se compiló en código p que luego se interpretó en tiempo de ejecución.

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

Había diferentes versiones de Turbo Pascal para computadoras con DOS, CP / M o CP / M-86 con 64 KB de memoria y al menos una unidad de disquete. La versión CP / M podría ejecutarse en las muchas 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 se ejecutaron en los muchos 8086 y 8088máquinas que estuvieron disponibles, incluida la IBM PC. El instalador, lister y compilador con su IDE, y el código fuente de un programa de hoja de cálculo simple llamado MicroCalc escrito por Philippe Kahn como demostración, cabrían en un solo disquete. Una copia de disco sin MicroCalc acomodaría el código fuente y el ejecutable compilado de un programa de tamaño razonable; como era común en ese momento que los usuarios tuvieran solo una unidad de disquete como almacenamiento masivo , fue una gran comodidad poder caber tanto el compilador como el programa se escriben en un solo disco, evitando el intercambio interminable de discos.

Bill Gates vio el éxito de Turbo Pascal "en términos muy personales, y 'no podía entender por qué las cosas [de Microsoft] eran tan lentas. Traía a Greg Whitten [director de programación de lenguajes de Microsoft] y le gritaba durante media hora . No podía entender por qué Kahn había podido vencer a un competidor establecido como Microsoft ". [19]

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

El IDE de Turbo Pascal estaba muy avanzado para su época. Fue capaz de funcionar bien y compilarse muy rápido con la cantidad de RAM en 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 clave 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, podrían mostrar las definiciones de las palabras clave del idioma colocando el cursor sobre una palabra clave y presionando la tecla F1 (usada convencionalmente para mostrar la ayuda). Muchas definiciones incluyen código de ejemplo.

Además de los programas ejecutables estándar, el compilador podía generar programas Terminate and Stay Resident (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 , no estaba disponible de otra manera. El propio Borland produjo un pequeño paquete de aplicaciones llamado Sidekick que era un TSR que permitía al usuario llevar un diario, notas, etc.

Versión 2 [ editar ]

La versión 2, lanzada unos meses después, el 17 de abril de 1984, fue una mejora incremental del Turbo Pascal original. Los programas .COM podrían superponerse eficazmente utilizando memoria virtual si de otra manera no caben en la memoria. [20]

La versión 2 para CP / M-80 solo se ejecutó en máquinas CP / M basadas en Z80 . [21]

Versión 3 [ editar ]

La versión 3 se publicó el 17 de septiembre de 1986. [22]

Borland también ofreció TURBO-87 que requería un coprocesador matemático 8087 (o posterior compatible). [22] Esto estaba disponible en Borland como una versión especial de Turbo Pascal. Apoyó reales tipos de datos con un rango de 307 a 1.67E-1.67E + 308 al 14 Figura precisión significativa pero con una mayor velocidad de procesamiento mucho. El manual señala que aunque el código fuente del Turbo Pascal original era compatible con los paquetes BCD y 87, los tipos de datos reales no eran intercambiables entre los módulos compilados en la versión 87 y los módulos compilados en los otros dos (esto se debía a que el exponente era de tres dígitos en lugar de dos). El Turbo Pascal estándar ofrecía tipos de datos reales que ofrecían un rango de 1E-63 a 1E + 63 a 11 cifras significativas.

Turbo Pascal 3 soporta gráficos de tortugas . [23]

Borland también ofreció una versión BCD (TURBOBCD) que ofrecía el mismo rango numérico que los tipos de datos reales pero con 18 cifras significativas. [22]

Versiones DOS [ editar ]

Versión 4 [ editar ]

Lanzada el 20 de noviembre de 1987, [24] la Versión 4 fue una reescritura total, con tanto la apariencia como el funcionamiento interno muy cambiado. El compilador generó ejecutables en formato .EXE bajo DOS, en lugar de los ejecutables .COM más simples pero más restringidos. Las versiones obsoletas del sistema operativo CP / M y CP / M-86 se eliminaron 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. [25]

Versión 5.0 [ editar ]

Las pantallas a color estaban reemplazando a las monocromas; Turbo Pascal versión 5.0, lanzado el 24 de agosto de 1988, [24] introdujo el azul como color de fondo predeterminado del editor, utilizado por los compiladores de DOS de Borland hasta el final de esta línea de productos a mediados de la década de 1990.

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 [ editar ]

Esta versión, lanzada el 2 de mayo de 1989, [24] introdujo características de programación orientadas a objetos para el lenguaje Pascal, incluido el concepto de clases, objetos estáticos y dinámicos, constructores y destructores y herencia, que se convertiría en la base del Object Pascal que se encuentra en Borland Delphi. El IDE usa el esquema de color azul predeterminado que también se usaría en productos Borland Turbo posteriores. Otros cambios al IDE incluyen: [26]

  • Adición del depurador paso a paso al IDE.
  • Ayuda sensible al contexto con descripción de todas las funciones integradas y la capacidad de copiar fragmentos de código desde la ventana de ayuda para editar.

Versión 6.0 [ editar ]

La versión 6 se publicó el 23 de octubre de 1990. [24]

Los cambios de 5.5 incluyen: [27]

  • Adición de la función de lenguaje ensamblador en línea para el lenguaje Pascal.
  • Adición de la biblioteca Turbo Vision .
  • Los cambios en IDE incluyen soporte para mouse, portapapeles para manipulaciones de texto, interfaz de múltiples documentos que admite hasta nueve ventanas de edición.
  • El depurador admite el uso de puntos de interrupción y relojes.

Versión 7.0 [ editar ]

La versión 7 se publicó el 27 de octubre de 1992. [24]

Los cambios desde 6.0 incluyen: [28]

  • El compilador admite la creación de ejecutables de DOS y Windows, DLL de Windows.
  • Los cambios en IDE incluyen la adición de resaltado de sintaxis.

Turbo Pascal para Windows [ editar ]

Se lanzaron dos versiones llamadas "Turbo Pascal para Windows" (TPW), para Windows 3.x : TPW 1.0, basado en Turbo Pascal 6 pero lanzado unos 2 años después, y 1.5, lanzado después de Turbo Pascal 7; fueron sucedidos 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 construyeron programas compatibles con Windows y presentaban un IDE basado en Windows, a diferencia del IDE basado en DOS en Turbo Pascal. Los comandos IDE y 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 biblioteca ObjectWindows , similar pero no idéntica a la de la primera versión de Borland C ++ , y radicalmente diferente del anterior entorno DOS Turbo Vision . Turbo Pascal fue reemplazado para la plataforma Windows por Delphi ; el compilador 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 [ editar ]

Borland lanzó Turbo Pascal para Macintosh en 1986. [29] Al igual que las versiones 1 a 3 para otros sistemas operativos, estaba escrito en lenguaje ensamblador compacto y tenía un IDE muy poderoso, pero no un buen depurador. Borland no admitió muy bien este producto, aunque emitieron una versión 1.1, parcheada para ejecutarse en el Macintosh II de 32 bits . La compatibilidad con Macintosh se abandonó poco después. [ cita requerida ]

Lanzamientos de software gratuito [ editar ]

Borland lanzó varias versiones de Turbo Pascal como freeware después de que se convirtieran en "software antiguo" ( abandonware ), [30] 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 año 2000. [31] La mayoría de las descargas todavía están disponibles en el sitio web sucesor de Embarcadero Technologies . [2] [3] [4]

Sucesores [ editar ]

En 1995, Borland había eliminado Turbo / Borland Pascal y lo reemplazó con el entorno de desarrollo rápido de aplicaciones (RAD) Borland Delphi , basado en Object Pascal. Las versiones de Delphi de 32 y 64 bits aún admiten las mejoras de Pascal más portátiles de los productos anteriores (es decir, aquellos que no son específicos del código de 16 bits), incluido el modelo de objeto estático anterior. Esta compatibilidad con versiones anteriores del lenguaje significa que mucho del código antiguo 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. Los más conocidos son Free Pascal y Virtual Pascal .

En educación [ editar ]

Borland Pascal todavía se enseña en algunos países en los niveles secundario, sexto y universitario. [ cuando? ] Se imparte en colegios y universidades de Costa Rica, Turquía, Alemania, Federación de Rusia, Estados Unidos y en escuelas secundarias de Argentina, Bélgica, Bulgaria, Canadá, Costa Rica, Croacia, Francia, Hungría, Italia, Jamaica, Libia, Moldavia, Rumania, Serbia, Túnez, Ucrania, República Checa y Vietnam. [ cita requerida ] Fue el lenguaje de programación educativo aprobado por el estado para todas las escuelas secundarias de Sudáfrica hasta 2002. [ cita requerida ] Hoy en día se sigue enseñando en algunas universidades de todo el mundo como una introducción a la programación de computadoras, generalmente avanzando aC o Java o ambos. [ cuando? ]

Algunos profesores [ ¿quién? ] prefieren usar Borland Pascal 7 o Turbo Pascal 5.5 debido a su simplicidad en comparación con IDE más modernos como Microsoft Visual Studio o Borland JBuilder , por lo que presenta a los estudiantes que no están familiarizados con la informática a tareas comunes como el uso del teclado y atajos de teclado (TP 5.5 no tiene soporte para mouse), los familiariza con los comandos de DOS (que son en gran parte los mismos que los del símbolo del sistema de Microsoft Windows) y les permite escribir programas sin gastar mucho esfuerzo en hacer que el entorno funcione. TP 5.5 está disponible como descarga gratuita desde Borland. [30] [31]

Funciones [ editar ]

Lenguaje ensamblador [ editar ]

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 era posible integrar el lenguaje ensamblador dentro del código fuente de Pascal. [32]

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

Depuración y creación de perfiles [ editar ]

El IDE proporcionó varias funciones de depuración, incluido el paso único , el examen y cambio de variables y puntos de interrupción condicionales. En versiones posteriores, los bloques en lenguaje ensamblador se podrían pasar por alto. El usuario puede agregar puntos de interrupción en variables y registros en una ventana IDE. Los programas que utilizan el modo de gráficos de IBM PC pueden cambiar entre el modo de gráficos y texto de forma automática o manual, o mostrar ambos en dos pantallas. Para los casos en los que las facilidades de depuración relativamente simples del IDE eran insuficientes, Turbopower Software produjo un depurador más potente, T-Debug. [33]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 permitió cierta intervención de hardware en computadoras equipadas con el nuevo procesador 80386 .

TD generalmente se suministraba 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 la optimización del programa mediante la búsqueda de cuellos de botella. [34] Los libros incluidos con Borland Pascal tenían descripciones detalladas del lenguaje ensamblador de Intel , incluido el número de ciclos de reloj requeridos por cada instrucción. El desarrollo y la depuración podrían llevarse a cabo completamente dentro del IDE a menos que se requieran las funciones avanzadas de depuración de Turbopower T-Debug y, posteriormente, TD.

Las versiones posteriores también admitían la depuración remota a través de un cable de comunicación RS232 . [35]

Unidades [ editar ]

A lo largo de los años, Borland mejoró no solo el IDE, sino que también amplió 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. Standard Pascal está diseñado para ser independiente de la plataforma, por lo que no prescribe acceso de bajo nivel a instalaciones que dependen del hardware o del sistema operativo. Standard Pascal tampoco prescribe cómo un programa grande debe dividirse en unidades de compilación separadas. A partir de la versión 4, Turbo Pascal adoptó el concepto de unidades de UCSD Pascal . Las unidades se utilizaron 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 el uso de otras unidades de compilación. interfacey implementationfueron las palabras clave utilizadas para especificar, dentro de la unidad, qué era (y qué no) visible fuera de la unidad. Esto es similar a las palabras clave publicy privateen otros lenguajes como C ++ y Java .

Las unidades en 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 haciendo avances como un lenguaje educativo que podría reemplazar a Pascal. Borland, de hecho, tenía un compilador Turbo Modula-2, pero este producto solo se ejecutaba en CP / M y nunca fue portado a DOS (su interfaz de usuario era casi idéntica a la de Turbo Pascal 1-3). En lugar de portar su compilador Modula-2 a DOS, Borland optó por implementar una compilación separada en su producto Pascal establecido.

La compilación separada no formaba parte del lenguaje Pascal estándar, pero ya estaba disponible en UCSD Pascal , que era muy popular en máquinas de 8 bits. La sintaxis de Turbo Pascal para unidades parece haber sido tomada prestada de UCSD Pascal. [36]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 era compatible con 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 informáticas y de almacenamiento, se agregó a Turbo Pascal la capacidad de generar archivos EXE de gran tamaño, con la capacidad de vincular estáticamente y cargar colectivamente objetos compilados por separado.

Programación orientada a objetos [ editar ]

A partir de la versión 5.5 se introdujeron algunas características de programación orientada a objetos : clases, herencia, constructores y destructores. [4] El IDE ya estaba aumentado con una interfaz de navegador de objetos que mostraba las relaciones entre los objetos y los métodos y permitía a los programadores navegar fácilmente por los módulos. Borland llamó a su lenguaje Object Pascal , que se extendió en gran medida para convertirse en el lenguaje subyacente de Delphi (que tiene dos sistemas OOP separados). El nombre "Object Pascal" se originó con las extensiones de Pascal desarrolladas por Apple Inc. para programar sus computadoras Lisa y Macintosh . Niklaus Wirth, creador de Pascalconsultaron 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 [ editar ]

Varias versiones de Turbo Pascal, incluida la última versión 7, incluyen una unidad CRT utilizada por muchas aplicaciones en modo de texto de pantalla completa. Esta unidad contiene código en su sección de inicialización para determinar la velocidad de la CPU y calibrar los lazos de retardo. Este código falla en procesadores con una velocidad superior a aproximadamente 200  MHz y se interrumpe inmediatamente con un mensaje de "Error en tiempo de ejecución 200". [37] (el código de error 200 no tiene 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, según lo mide el reloj en tiempo real.. Cuando se desarrolló Turbo Pascal, se ejecutaba en máquinas con CPU de 1 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. [38] Se produjo un parche cuando las máquinas se volvieron demasiado rápidas para el método original, pero fallaron cuando las velocidades del procesador aumentaron aún más y fueron reemplazadas por otras.

Los programas sujetos a este error pueden recompilarse a partir del 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 pueden ser parcheados por una herramienta llamada TPPATCH o equivalente, [39] [40] o cargando un programa Terminate and Stay Resident cargado antes de ejecutar el programa defectuoso. [41]

También hay parches para el propio compilador TP7, [42] por lo tanto, si la fuente de Pascal está disponible, el código de una nueva compilación funcionará sin que el código compilado tenga que ser parcheado. Si el código fuente está disponible, la migración a bibliotecas sin dependencia de la velocidad del reloj de la CPU también es una solución. [43]

Punto flotante [ editar ]

Había varios tipos de coma flotante , incluyendo single(la representación de 4 bytes [IEEE 754]) 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 representación).

En los primeros días, Realfue 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 FP tenía que hacerse en software. Los propios algoritmos FP de Borland Realeran más rápidos que los otros tipos, aunque su biblioteca también emulaba los otros tipos en software.

Sintaxis [ editar ]

  • Pascal no distingue entre mayúsculas y minúsculas .
  • Históricamente, los comentarios de Pascal están incluidos { within pairs of braces }, o (* left parenthesis/asterisk and asterisk/right parenthesis pairs *), y estos pueden abarcar cualquier número de líneas. Las versiones posteriores de Borland Pascal también admitían comentarios de estilo C ++ // preceded by two forward slashes , que terminan al final de la línea.
  • La sintaxis de la declaración casees más flexible que la de Pascal estándar.
  • Los conjuntos solo pueden tener hasta 256 (2 8 ) miembros.
  • El Pascal estándar Stringprecedido por un byte de longitud es compatible y requiere una cantidad fija de almacenamiento; las versiones posteriores agregaron un tipo terminado en nulo más flexible, llamando al tipo anterior "cadena corta". El código fuente más antiguo que maneja cadenas de manera no estándar (por ejemplo, manipulando directamente el byte de longitud como S[0]:=14para truncar una cadena) debe tener sus cadenas declaradas como cadenas cortas o ser reescrito.

Este es el programa clásico Hola mundo en Turbo Pascal:

programa  HelloWorld ; begin  WriteLn ( 'Hello World' ) end .

Esto pide un nombre y lo vuelve a escribir en la pantalla cien veces:

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

Ver también [ editar ]

  • Interfaz gráfica Borland
  • Delphi (software)
  • Pascal libre
  • Pascal moderno

Referencias [ editar ]

  1. Gajic, Zarko (17 de marzo de 2017). "Historia de Delphi: de Pascal al Embarcadero Delphi XE 2" . ThoughtCo . Punto guión. Archivado desde el original el 7 de julio de 2011 . Consultado el 18 de febrero de 2021 .
  2. ↑ a b c Intersimone, David (1 de febrero de 2000). "Software antiguo: Turbo Pascal v1.0" . Embarcadero Technologies. Archivado desde el original el 21 de diciembre de 2010 . Consultado el 9 de noviembre de 2010 .
  3. ↑ a b Intersimone, David (10 de febrero de 2000). "Software antiguo: Turbo Pascal v3.02" . Embarcadero Technologies. Archivado desde el original el 24 de noviembre de 2010 . Consultado el 9 de noviembre de 2010 .
  4. ↑ a b c Intersimone, David (21 de febrero de 2002). "Software antiguo: Turbo Pascal v5.5" . Embarcadero Technologies. Archivado desde el original el 24 de noviembre de 2010 . Consultado el 9 de noviembre de 2010 .
  5. ^ https://archive.org/details/micro-cornucopia-magazine-1984-12/page/n63
  6. ^ Grupos de Google
  7. ^ Pournelle, Jerry (febrero de 1984). "Chaos Manor obtiene su PC IBM tan esperado" . Byte . pag. 113 . Consultado el 8 de febrero de 2015 .
  8. ^ Pournelle, Jerry (julio de 1984). "La Feria de la Costa Oeste" . Byte . pag. 136. Archivado desde el original el 28 de enero de 2012 . Consultado el 8 de noviembre de 2011 .
  9. ^ Wadlow, Tom; Pierce, Al; Bridger, Mark (julio de 1984). "Turbo Pascal" . Byte (revisión). págs. 263-278 . Consultado el 23 de octubre de 2013 .
  10. ^ Bridger, Mark (febrero de 1986). "Turbo Pascal 3.0" . Byte . pag. 281 . Consultado el 9 de mayo de 2015 .
  11. ^ Shammas, Namir Clement (diciembre de 1986). "Pascal para el IBM PC" . Byte . pag. 265 . Consultado el 9 de mayo de 2015 .
  12. ↑ a b Webster, Bruce F. (agosto de 1985). "Saludos y Agitaciones" . Byte . pag. 355 . Consultado el 27 de octubre de 2013 .
  13. Duntemann, Jeff (13 de noviembre de 1984). "Turbo Pascal sobrealimentado" . Revista de PC . pag. 276 . Consultado el 25 de octubre de 2013 .
  14. ^ "Los premios Byte" . Byte . Enero de 1989. p. 327.
  15. ^ Pournelle, Jerry (enero de 1989). "A las estrellas" . Byte . pag. 109.
  16. ^ Webster, Bruce (febrero de 1986). "Herramienta de programación y el Atari ST" . Byte . pag. 331 . Consultado el 9 de mayo de 2015 .
  17. ^ https://community.embarcadero.com/blogs/entry/turbo-pascal-version-10--the-turbo-pascal-release-dates-39142
  18. ^ 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. pag. 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 fue un puerto a 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 dólares, aproximadamente una décima parte del precio de productos comparables.
  19. ^ Wallace, James; Erickson, Jim (1992). "Dolores de crecimiento" . Disco duro: Bill Gates y la creación del imperio de Microsoft . John Wiley e hijos . pag. 277 . ISBN 0-471-56886-4.
  20. ^ http://bitsavers.org/pdf/borland/turbo_pascal/Turbo_Pascal_Version_2.0_Reference_1984.pdf
  21. ^ https://archive.org/download/Computer_Language_Issue_01_1984-09_CL_Publications_US/Computer_Language_Issue_01_1984-09_CL_Publications_US.pdf#page=78
  22. ^ a b c [ Archivado el 24 de noviembre de 2010 en el sitio web de Wayback Machine Embarcadero: Software antiguo: Turbo Pascal v3.02]
  23. ^ https://cs.nyu.edu/cs/faculty/marateck/turtle.html
  24. ^ a b c d e "Turbo Pascal versión 1.0 - Fechas de lanzamiento de Turbo Pascal" . Embarcadero Technologies . 2008-11-17. Archivado desde el original el 24 de febrero de 2020 . Consultado el 13 de abril de 2021 .
  25. ^ Manual de la caja de herramientas de gráficos de Borland
  26. ^ Turbo Pascal 5.5
  27. ^ Turbo Pascal 6.0
  28. ^ Turbo Pascal 7.0
  29. ^ https://winworldpc.com/product/turbo-pascal/1x-mac
  30. ^ a b "Software antiguo: Turbo Pascal v5.5" . CDN »Museo . Borland Software Corporation. Archivado desde el original el 3 de febrero de 2004 . Consultado el 1 de abril de 2013 .
  31. ^ a b "Téléchargements - Gratuits: Compilateurs Delphi, Pascal & C / C ++" . Borland Software Corporation. Archivado desde el original el 24 de junio de 2004. Nota para los usuarios internacionales: este Turbo Pascal 7 gratuito está disponible solo en francés. La versión estadounidense de Turbo Pascal 7 aún no está disponible como descarga gratuita. Para la versión de EE. UU., Descargue Turbo Pascal 5.5 EE. UU. A continuación. Gracias.
  32. ^ "Capítulo 14 - Combinando Pascal con ensamblaje" . Archivado desde el original el 20 de octubre de 2016 . Consultado el 19 de octubre de 2016 .
  33. ^ "InfoWorld 21 de marzo de 1988: Anuncio de Turbopower T-Debug 4" . 1988-03-21. Archivado desde el original el 25 de abril de 2016 . Consultado el 13 de diciembre de 2015 .
  34. ^ "Manual de Turbo Profiler 1.0" (PDF) . Archivado desde el original (PDF) el 2012-04-02 . Consultado el 3 de noviembre de 2011 .
  35. ^ "Libro de Delphi Power de Marco Cantų: depuración de programas Delphi" (PDF) . Archivado desde el original (PDF) el 31 de marzo de 2012 . Consultado el 31 de octubre de 2011 .
  36. ^ 3.3.2. Enlace a rutinas compiladas y ensambladas externamente - Reconstrucción del manual del usuario del UCSD Pascal System II.0 - Versión I.5, septiembre de 1978 Archivado 2007-09-03 en Wayback Machine
  37. ^ "Soporte para desarrolladores de Borland Pascal" . Archivado desde el original el 23 de octubre de 2010 . Consultado el 25 de abril de 2011 .
  38. ^ "Error 200 de tiempo de ejecución de inicio de Pascals versión 7 de Borland (dividir por cero)" . Archivado desde el original el 7 de septiembre de 2015 . Consultado el 16 de noviembre de 2015 .CS1 maint: URL no apta ( enlace ) Página web que discute la causa del error y varias soluciones.
  39. ^ "PatchCRT: corrige los 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 .
  40. ^ https://www.heise.de/ct/hotline/Nicht-schon-wieder-Runtime-Error-200-307662.html
  41. ^ "Cómo reparar un error 200 en tiempo de ejecución" . pcmicro.com. 2006 . Consultado el 28 de septiembre de 2010 .
  42. ^ "Error de tiempo de ejecución 200" (en alemán). blume-programm.de. 2003-03-13. Archivado desde el original el 17 de noviembre de 2015 . Consultado el 16 de noviembre de 2015 .
  43. ^ Cheng, Allen (1997). "SuperDelay v1.1a" . blume-programm.de . Consultado el 28 de septiembre de 2010 .[ enlace muerto permanente ]

Enlaces externos [ editar ]

  • Borland International, Inc. Página Turbo Pascal: DOS 7.0 , Windows 1.5
  • Página de Inspire Corporation Turbo Pascal: DOS 7.0 , Windows 1.5
  • Página de Turbo Pascal de Borland Software Corporation: DOS 7.0
  • Turbo Pascal 3 Code Generation , una descripción del compilador Turbo Pascal 3.0
  • Internos del compilador Turbo Pascal , código fuente completo de un compilador compatible con Turbo Pascal 7.0
  • Versiones de Borland® / Inprise® Pascal