Clipper (lenguaje de programación)
Clipper es un lenguaje de programación procedural e imperativo
creado en 1985 por Nantucket Corporation y vendido
Clipper
posteriormente a Computer Associates, la que lo comercializó
como CA-Clipper. En un principio Clipper se creó como un Desarrollador(es)
compilador para el sistema gestor intérprete de bases de datos Nantucket Corporation
dBase III (de hecho las versiones estacionales de Nantucket Información general
incluían una etiqueta que lo indicaba así), pero con el tiempo el
Paradigma Programación Estructurada -
producto evolucionó y maduró, convirtiéndose en un lenguaje
Procedural
compilado más poderoso que el original, no solo por sus propias
Apareció en 1985
implementaciones sino también por las ampliaciones desarrolladas
por terceros en C, Ensamblador y Pascal, de los que fue heredando
Diseñado por Nantucket Corporation
características. Esto lo convirtió en la herramienta líder de Última versión CA Clipper 5.3b (20 de mayo de
desarrollo de aplicaciones de bases de datos relacionales bajo estable 1997)
sistema operativo MS-DOS, sobre todo programas de gestión, Sistema de tipos Dinámico
contabilidad y facturación, agendas comerciales y programas de Influido por xBase, Fox y C
testificación. Sistema MS-DOS y Windows
operativo
[editar datos en Wikidata]
Índice
Características
Las primeras versiones
Clipper 5
Programación en Clipper
Enlaces externos
Características
A diferencia de otros lenguajes xBase, Clipper nunca contó con un modo intérprete, similar al de dBase. Sus utilidades para manejo
de base de datos, tales como la de creación de tablas (DBU), se entregaban con el código fuente escrito en Clipper e incluido, el
usuario podía adaptarlas a sus necesidades si quería. Se aportaban también muchas rutinas escritas en C y Ensamblador a las que el
usuario podía acudir, incluso ampliar y crear bibliotecas de pre-enlace completas.
Clipper trabaja en modo compilador puro generando un código objeto binario; el paquete proveía también un enlazador (RTLINK o
DLINK) que con el módulo objeto y las bibliotecas de pre-enlace generaba un módulo ejecutable directo. Esto último le otorgaba a
las aplicaciones Clipper una velocidad que otros manejadores de bases de datos no poseían, y, como desventaja, la necesidad de
recompilar y enlazar nuevamente cada vez que se corregía algún error en el código fuente (la
depuración era lenta).
Posee características que fueron muy atractivas para su época y su entorno de trabajo (DOS), tales como: manejo propio de memoria
virtual (RAM en disco); manejo de memoria extendida, las aplicaciones podían superar la barrera de los 640Kb de RAM impuesta
por MS-DOS; rutinas y bibliotecas pueden cargarse solo cuando son necesarias y se descargan de RAM cuando ya no hacen falta
(enlace y overlays dinámicos); la cantidad de registros por tablas estaba solo limitada a la capacidad del disco; gran robustez en las
aplicaciones, particularmente en las diseñadas para cliente-servidor (red LAN), etc.
Si bien no poseía prácticamente funciones de cálculo tales como las trigonométricas, que otros lenguajes como FoxPro sí
incorporaron; el usuario las podía fácilmente elaborar en C y utilizarlas como cualquier otra función de biblioteca propia del paquete,
ventaja que devenía de que el compilador Clipper y muchas de sus bibliotecas estaban casi completamente desarrolladas C.
en
Su forma, administración, almacenamiento e intercambio de pantallas era sencillo, efectivo y veloz; lo que otorgaba buen dinamismo
a las aplicaciones desarrolladas con Clipper.
El lenguaje en sí era poderoso, contando con una gran cantidad de sentencias, funciones, administración de memoria y variables que
permitían al programador desarrollos muy flexibles y eficientes; en forma razonablemente rápida. También el paquete incluía un
completo "manual en línea navegable", que se cargaba en memoria RAM, a requerimiento del programador, y se accedía por la sola
presión de un par de teclas.
En su larga época dorada, ha sido, probablemente, el lenguaje gestor de bases de datos relacionales de "bajo y mediano porte" más
utilizado en el mundo. Aún hoy existen muchos desarrolladores Clipper (algunos agrupados comunidades y con foros en Internet),
que elaboran aplicaciones, incluso estilo Windows, usando sus propias bibliotecas gráficas escritasen C y Ensamblador.
Las primeras versiones
Las primeras versiones se denominan versiones estacionales por hacer referencia a una estación del año en sus nombres oficiales.
Todas ellas se nominaban comocompiladores dBase. Estas fueron:
Nantucket Clipper Winter'84 - lanzada el25 de mayo de 1985
Nantucket Clipper Summer'85 - lanzada en1985
Nantucket Clipper Winter'85 - lanzada el29 de enero de 1986
Nantucket Clipper Autumn'86 - lanzada el31 de octubre de 1986
Nantucket Clipper Summer'87 - lanzada el21 de diciembre de 1987
Gatsoft Clipper Summer'88 - lanzada el16 de marzo de 1988
Clipper 5
Clipper 5.0 supone un salto cualitativo del lenguaje, aunque comienza mal. Dada la creciente popularidad (Summer 87 ha sido
utilizada hasta el año 2000 como herramienta de desarrollo), se decide centrarse más en ampliar el lenguaje que en ser un compilador
mejorado de dBase. Se implementan así los pseudoobjetos y otras mejoras... pero el producto se lanza con numerosos errores de
software que hacen que el público objetivo se retraiga y siga usando la versión Summer87, mucho más estable. La 5.01 corrige
muchos de los problemas, pero no será hasta la 5.2 que se produzca el vuelque masivo de los desarrolladores.
Las versiones 5 de Nantucket son:
Nantucket Clipper 5.00 - lanzada en1990
Nantucket Clipper 5.01 - lanzada el15 de abril de 1991
Nantucket Clipper 5.01 Rev.129 - lanzada el 31 de marzo de 1992
La multinacional americana Computer Associates adquiere Nantucket y se lanza a mejorar el producto afianzando las características
heredadas de C, en particular el tipo de datos code-block (literalmente bloque de código, un híbrido entre las macros de dBase, la
evaluación de cadenas de caracteres y los punteros de funciones). Otra de las mejoras procedentes de la versión 5.0 es el sistema
"Replaceable Database Drivers" (RDD o drivers reemplazables de base de datos), que permiten con una sola sentencia cambiar entre
diferentes normas de base de datos. La aparición de la versión 5.2, con una carrera frenética de subversiones (con mejoras y
corrección de errores) hasta la 5.2c, que marca el comienzo de la migración masiva de quienes todavía permanecían en Summer'87.
Deviene así la versión de Clipper más usada de la historia. Contrariamente, su sucesora, 5.3, pese a implementar mejoras, cae en un
error de bulto, al no tener en cuenta la compatibilidad con al menos las más populares bibliotecas de Clipper (tanto comerciales como
freeware), y por consumir excesivos recursos de DOS.
CA Clipper 5.01a -
CA Clipper 5.20 - lanzada el15 de febrero de 1993
CA-Clipper 5.2a - lanzada el15 de marzo de 1993
CA Clipper 5.2b - lanzada el25 de junio de 1993
CA-Clipper 5.2c - lanzada el6 de agosto de 1993
CA Clipper 5.2d - lanzada el25 de marzo de 1994
CA-Clipper 5.2e - lanzada el7 de febrero de 1995
CA Clipper 5.30 - lanzada el26 de junio de 1995
CA Clipper 5.3a - lanzada el20 de mayo de 1996
CA Clipper 5.3b - lanzada el20 de mayo de 1997
Computer Associates decide abandonar Clipper ante la pujanza de Microsoft Windows, y vuelca parte del desarrollo de Clipper (el
proyecto Aspen de Nantucket) a su nueva herramienta CA-Visual Objects, que se presenta casi a la vez que Clipper 5.3 Pero el
abandono de la sintaxis xBase y el no proveer una herramienta de migración adecuada, unido al alto precio del producto (que además
debía competir con otros productos de la propia casa, uno de ellos basado en BASIC), hace que el grueso de programadores Clipper
opten por permanecer en las versiones 5.2/5.3 con bibliotecas de terceros como
FiveWin, o migren a herramientas xBase comoVisual
FoxPro a medida que el mercado DOS va reduciéndose.
El 22 de abril de 2002 Computer Associates y GrafX Software anuncian que han alcanzado un acuerdo de licenciamiento, marketing
y desarrollo de dos de sus lenguajes de desarrollo: CA-Clipper y CA-V
isual Objects.
Una de las principales características que ayudó al éxito de Clipper fue la posibilidad de expandir el lenguaje con rutinas en C y
ensamblador. Varias de ellas, como CodeBase o Apollo son RDDs. Con la aparición de Windows se desarrollaron varias de ellas para
portar las aplicaciones Clipper a Windows. La más popular es la española FiveWin, empleada en los productos líderes de contabilidad
en España.
Además, el uso de linkers alternativos permitieron mejorar el rendimiento del ejecutable generado. El más aclamado fue Blinker, que
añade un extensor de DOS con modo protegido (es utilizado con numerosos lenguajes y compiladores). Añadió soporte para compilar
programas y bibliotecas para Windows.
En la actualidad el lenguaje Clipper está siendo activamente implementado y extendido por varios proyectos y vendedores. Entre los
proyectos de software libre podemos destacar Clip, Harbour y xHarbour. Entre los compiladores comerciales XBase++ y Visual
FlagShip. Y Otros productos como "MEDIATOR" y "Eagle1 y Condor1" que le brindan la posibilidad de conectarse a Servidores de
bases de datos relacionales como MS-SQL, MySQL y Oracle.
XBase++ ha sido llamado el Compilador Clipper de 32 bits, siendo actualmente el líder en innovaciones e incorporaciones al
lenguaje. Ya se han vendido más de 25.000 copias del compilador y lo usan desde desarrolladores solitarios hasta grandes empresas
como Hewlett-Packard o el Gobierno de Canadá.
Varias de esas implementaciones son portables gracias a su desarrollo en C (DOS, Windows, GNU/Linux (32 y 64 bits), Unix (32 y
64 bits), y Mac OS X), soportando varias extensiones del lenguaje [1]; cuentan con varias extensiones del lenguaje, y varios
Replaceable Database Drivers (RDD) que soportan los formatos más populares de tablas, como DBF, DBTNTX, DBFCDX (FoxPro
y Comix), MachSix (Apollo), SQL, y más. Todas estas nuevas implementaciones mantienen la completa compatibilidad con la
sintaxis estándar xBase, a la vez que ofrecen programación orientada a objetos y sintaxis orientada al destino como
SQLExecute().
Actualmente hay una versión libre, el Proyecto Harbour que tiene como objetivo original ser 100% compatible con la versión 5.2 (La
más popular de las versiones de Clipper), también se han añadido nuevas características como soporte para SQL a través de SQLite.
Harbour está disponible para múltiples plataformas, incluyendo no solo MS-DOS y Windows, sino también a GNU/Linux, OS/2 y
otras. En el mes de julio de 2011 se anunció oficialmente el lanzamiento de la versión 3.0, la cual ha sido la última publicada y se
descuenta que el proyecto ha sido abandonado.
En 2005, los newsgroups de Usenet relativos a Clipper comp.lang.clipper y comp.lang.clipper.visual-objects
seguían activos.
Programación en Clipper
Un sencillo Hola Mundo:
? "Hola Mundo"
Una máscara simple de entrada debase de datos:
USE Cliente SHARED NEW
cls
@ 1, 0 SAY "ClitNum" GET Cliente ->CliNum PICT "9999999" VALID Cliente ->CliNum > 0
@ 3, 0 SAY "Contacto" GET Cliente ->Contacto VALID !empty(Cliente ->Contacto )
@ 4, 0 SAY "Direccion" GET Cliente ->Direccion
READ
Función que invierte una cadena de caracteres (Clipper 5.2):
CLEAR
ACCEPT "Teclee una cadena para invertirla: " TO cTexto
? cTexto
? "invertido es: "
? invStr( cTexto )
//
FUNCTION invStr( __cTexto )
LOCAL aText1, cNew, n, cTemp, g, x
aText1 = ARRAY ( LEN ( __cTexto ) )
cNew = ""
FOR n = 1 TO LEN( __cTexto )
cTemp = LEFT( __cTexto, n )
aText1 [ n ] = RIGHT( cTemp, 1 )
NEXT n
x = 1
FOR g = LEN( __cTexto ) TO 1 STEP -1
cNew = aText1[ x ] + cNew
x = x + 1
NEXT g
RETURN cNew
Enlaces externos
CA-Clipper website Portal de desarrolladores Clipper
Harbour-Minigui.
Foro de Harbour-Minigui.
Minigui EXTENDED.
Object Oriented Harbour GUIMiniGUI pero basado en Objetos.
Computer Associates Propietarios de CA-Clipper y CA-Visual Objects
GrafX Software Comercializador y co-desarrollador de CA-Clipper
Alaska Software web page (enlace roto disponible en Internet Archive; véase el historial y la última versión). XBase++, The
clipper sucessor.
The Oasis comunidad de soporte a desarrolladores focalizada en Clipper , FoxPro y xBase++
Diario Clarín Xbase++: un puente hacia Windows
FiveTech desarrolladores de FiveWin y uno de los motores del Proyecto Harbour
Proyecto Harbour
FlagShip Compilador compatible de Clipper para GNU/Linux, Unix y Windows
Xailer desarrolladores de Xailer, completo entorno de desarrollo visual nativo de 32 bits para usuarios de Xbase
t-gtk (enlace roto disponible en Internet Archive; véase el historial y la última versión). GUI Libre Multiplataforma para Harbour a
través de GTK+.
Un programa musical en Clipper
Obtenido de «https://es.wikipedia.org/w/index.php?title=Clipper_(lenguaje_de_programación)&oldid=109042502
»
Esta página se editó por última vez el 1 jul 2018 a las 12:34.
El texto está disponible bajo laLicencia Creative Commons Atribución Compartir Igual 3.0 ; pueden aplicarse cláusulas
adicionales. Al usar este sitio, usted acepta nuestrostérminos de uso y nuestra política de privacidad.
Wikipedia® es una marca registrada de laFundación Wikimedia, Inc., una organización sin ánimo de lucro.