sábado, 16 de abril de 2011

Palíndromo

Un palíndromo (del griego palin dromein, volver a ir hacia atrás) es una palabra, número o frase que se lee igual hacia adelante que hacia atrás. Si se trata de un número, se llama capicúa. Habitualmente, las frases palindrómicas se resienten en su significado cuanto más largas son.



Tipos

Normalmente se entiende por palíndromo aquel que toma por unidad la letra, es decir, cuya última letra es la misma que la primera, la penúltima es la misma que la segunda, etc. Es el caso de palabras tales como reconocer o anilina. Sin embargo, también se puede tomar como unidad la sílaba (por ejemplo, gato con toga, aunque en este caso podría ser calificado como anagrama), la palabra o incluso el renglón.


Ejemplos

Palabras palíndromos

AnaareneraareperaanilinaananáMalayalamNeuquénOruroosoradarreconocerrotorsalasseressomossometemos, entre otras.


Frases palíndromos

  • ¿Acaso hubo búhos acá? (de Juan Filloy)
  • Adivina ya te opina, ya ni miles origina, ya ni cetro me domina, ya ni monarcas, a repaso ni mulato carreta, acaso nicotina, ya ni cita vecino, anima cocina, pedazo gallina, cedazo terso nos retoza de canilla goza, de pánico camina, ónice vaticina, ya ni tocino saca, a terracota luminosa pera, sacra nómina y ánimo de mortecina, ya ni giros elimina, ya ni poeta, ya ni vida. (de Ricardo Ochoa)
  • Allí por la tropa portado, traído a ese paraje de maniobras, una tipa como capitán usar boina me dejara, pese a odiar toda tropa por tal ropilla. (de Luis Torrent)
  • Allí si María avisa y así va a ir a mi silla.
  • Átale, demoníaco Caín, o me delata. (de Julio Cortázar)
  • Ateo por Arabia iba raro poeta. (de Juan Filloy)
  • Dábale arroz a la zorra el abad.
  • La ruta nos aportó otro paso natural.
  • Nada, yo soy Adán. (de Guillermo Cabrera Infante)
  • No di mi decoro, cedí mi don. (de Juan Filloy)
  • No lata, no: la totalidad arada dilato talón a talón. (de Juan Filloy)


Curiosidades

  • En latín también se conoce el palíndromo del cuadrado Sator: Sator Arepo tenet opera rotas (el sembrador Arepo guía con destreza las ruedas), que tiene la particularidad de que puede escribirse como un cuadrado que se puede leer tanto horizontal como verticalmente:
S A T O R
A R E P O
T E N E T
O P E R A
R O T A S
Algunos sugieren que las letras de este cuadrado se puede reordenar para que se lea "paternoster" dos veces y quedaría A y O (alfa yomega). Es decir, se trataría de una oración cristiana:
P
A
A T O
E
R
PATERNOSTER
O
S
O T A
E
R
  • El escritor argentino Juan Filloy ostenta un récord en la creación de palíndromos, con más de 8.000 frases publicadas a lo largo de su obra.
  • El compositor español Víctor Carbajo ha escrito más de 18.000 palíndromos.1


Palíndromos extrasemióticos

Se reconocen estructuras externas a la lingüística y al estudio de los signos (semiótica) que admiten lectura en ambos sentidos y son, pues, considerados palíndromos.


Semi-palíndromos o Bifrontes

Son aquellas palabras que leídas al revés tienen distinto significado.
  • Adán - nada
  • amar - rama
  • amor - Roma
  • animal - lámina
  • odio - oído
  • oir - río
  • rata - atar
  • ratón - notar
  • zorra - arroz

[editar]

HISTORIA DE VISUAL FOXPRO


Visual FoxPro es un lenguaje de programación orientado a objetos y procedural, un Sistema Gestor de Bases de datos o Database Management System (DBMS), y desde la versión 7.0, un Sistema administrador de bases de datos relacionales, producido por Microsoft.


Características

visual foxPro version 9.0
Visual FoxPro ofrece a los desarrolladores un conjunto de herramientas para crear aplicaciones de bases de datos para el escritorio, entornos cliente/servidor, tablet PC o para la Web.
Entre sus características se pueden enumerar:
  • Capacidades poderosas y muy veloces para el manejo de datos nativos y remotos.
  • Flexibilidad para crear todo tipo de soluciones de bases de datos.
  • Lenguaje de Programación Orientado a objetos.
  • Utilización de Sentencias SQL en forma nativa.
  • Poderoso manejo de vistas, cursores y control completo de estructuras relacionales.
  • Su propio gestor de base de datos incorporado. Sin embargo, también puede conectarse con servidores de base de datos, tales como Oracle, Microsoft SQL Server o MySQL.
  • Cuenta con un motor de generación de informes renovado y muy flexible para soluciones más robustas.
  • Desde la versión 9.0, amplio soporte de XML, tanto como fuente de datos (por ej., servicios Web basados en XML) como por generar reportes en formato XML.
  • Desde la versión 7.0, soporte de la tecnología IntelliSense de Microsoft.

La última versión liberada es la 9.0.
Se planeó inicialmente la salida de una nueva versión llamada 'Sedna', la cual pretendía ser un poderoso y completo lenguaje interactuando aún más con VisualStudio.net, SQLServer2005, SQLExpress2005 y Office12, teniendo a su vez soporte para Windows Vista. Posteriormente se supo que no habrá una próxima versión (Mensaje a la comunidad VFP). Microsoft ha cancelado su desarrollo y lanzó lo que han hecho hasta ahora como add-ons en conjunto con el service pack 2 ambos por el momento en versión Beta (SP2 y "Sedna" - Beta). Igualmente, según las políticas de soporte de Microsoft, éste continuará dando soporte al producto hasta el año 2015.
Hay un movimiento MasFoxPro que está haciendo presión para que Microsoft continúe o deje el Visual FoxPro como código abierto para que otra gente pueda seguir evolucionándolo.
La versión 9.0 de Visual FoxPro cuenta con el SP1 y el (más reciente) SP2 (en inglés) en los que hay algunas nuevas características y especialmente brindan estabilidad al producto.


Historia

Visual FoxPro proviene de FoxPro, que a su vez deriva de FoxBASE, creado por Fox Technologies en 1984; inicialmente un compilador de dBase, acabó superándolo y con Clipper, convirtiéndose en una de las estrellas de los lenguajes xBase. Fox Technologies fue adquirido por Microsoft en 1992.
Visual FoxPro 3.0, fue la primera versión “Visual”, redujo su compatibilidad a solo Mac y Windows
En la versión 5.0 se integra en Microsoft Visual Studio añadiéndosele el soporte de Microsoft Source Safe.
Visual FoxPro 6.0, publicado en 1999, no supone un cambio radical respecto de la anterior versión sino únicamente una mejora en sus diversas funcionalidades y una adaptación al mundo internet y al mundo de los objetos.
Visual FoxPro 7.0, publicado en 2001, supuso su salida de Visual Studio, pues aunque en un principio se pensaba incluir a Fox en .NET, no era posible sin romper con la herencia de anteriores versiones.
A finales del 2002, algunos miembros de comunidades demostraron que Visual FoxPro puede correr en Linux usando el emulador de Windows Wine.
VFP 9 fue lanzado el 17 de diciembre del 2004 y el equipo de Fox está trabajando actualmente en un proyecto cuyo nombre clave es Sedna que será construido sobre el código base de VFP 9 y consistirá principalmente en componentes Xbase

LENGUAJE SQL

El lenguaje de consulta estructurado o SQL (por sus siglas en inglés structured query language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en éstas. Una de sus características es el manejo del álgebra y el cálculo relacional permitiendo efectuar consultas con el fin de recuperar -de una forma sencilla- información de interés de una base de datos, así como también hacer cambios sobre ella.



Orígenes y evolución

Los orígenes del SQL están ligados a las de las bases de datos relacionales. En 1970 E. F. Codd propone el modelo relacional y asociado a éste un sublenguaje de acceso a los datos basado en el cálculo de predicados. Basándose en estas ideas, los laboratorios de IBM definen el lenguaje SEQUEL (Structured English QUEry Language) que más tarde sería ampliamente implementado por el sistema de gestión de bases de datos (SGBD) experimental System R, desarrollado en 1977 también por IBM. Sin embargo, fue Oracle quien lo introdujo por primera vez en 1979 en un programa comercial.
El SEQUEL terminaría siendo el predecesor de SQL, siendo éste una versión evolucionada del primero. El SQL pasa a ser el lenguaje por excelencia de los diversos sistemas de gestión de bases de datos relacionales surgidos en los años siguientes y es por fin estandarizado en 1986 por el ANSI, dando lugar a la primera versión estándar de este lenguaje, el "SQL-86" o "SQL1". Al año siguiente este estándar es también adoptado por la ISO.
Sin embargo, este primer estándar no cubre todas las necesidades de los desarrolladores e incluye funcionalidades de definición de almacenamiento que se consideraron suprimir. Así que en 1992 se lanza un nuevo estándar ampliado y revisado del SQL llamado "SQL-92" o "SQL2".
En la actualidad el SQL es el estándar de facto de la inmensa mayoría de los SGBD comerciales. Y, aunque la diversidad de añadidos particulares que incluyen las distintas implementaciones comerciales del lenguaje es amplia, el soporte al estándar SQL-92 es general y muy amplio.
El ANSI SQL sufrió varias revisiones y agregados a lo largo del tiempo:
AñoNombreAliasComentarios
1986SQL-86SQL-87Primera publicación hecha por ANSI. Confirmada por ISO en 1987.
1989SQL-89Revisión menor.
1992SQL-92SQL2Revisión mayor.
1999SQL:1999SQL2000Se agregaron expresiones regulares, consultas recursivas (para relaciones jerárquicas), triggers y algunas características orientadas a objetos.
2003SQL:2003 Introduce algunas características de XML, cambios en las funciones, estandarización del objeto sequence y de las columnas autonumericas. (Ver Eisenberg et al.: SQL:2003 Has Been Published.)
2006SQL:2006 ISO/IEC 9075-14:2006 Define las maneras en las cuales el SQL se puede utilizar conjuntamente con XML. Define maneras importar y guardar datos XML en una base de datos SQL, manipulándolos dentro de la base de datos y publicando el XML y los datos SQL convencionales en forma XML. Además, proporciona facilidades que permiten a las aplicaciones integrar dentro de su código SQL el uso de XQuery, lenguaje de consulta XML publicado por el W3C (World Wide Web Consortium) para acceso concurrente a datos ordinarios SQL y documentos XML.
2008SQL:2008 Permite el uso de la cláusula ORDER BY fuera de las definiciones de los cursores. Incluye los disparadores del tipo INSTEAD OF. Añade la sentencia TRUNCATE. 

Características generales del SQL

El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y potencia de los sistemas relacionales permitiendo gran variedad de operaciones en éstos últimos.
Es un lenguaje declarativo de "alto nivel" o "de no procedimiento", que gracias a su fuerte base teórica y su orientación al manejo de conjuntos de registros, y no a registros individuales, permite una alta productividad en codificación y la orientación a objetos. De esta forma una sola sentencia puede equivaler a uno o más programas que se utilizarían en un lenguaje de bajo nivel orientado a registros.

Optimización
Como ya se dijo arriba, y suele ser común en los lenguajes de acceso a bases de datos de alto nivel, el SQL es un lenguaje declarativo. O sea, que especifica qué es lo que se quiere y no cómo conseguirlo, por lo que una sentencia no establece explícitamente un orden de ejecución.
El orden de ejecución interno de una sentencia puede afectar gravemente a la eficiencia del SGBD, por lo que se hace necesario que éste lleve a cabo una optimización antes de su ejecución. Muchas veces, el uso de índices acelera una instrucción de consulta, pero ralentiza la actualización de los datos. Dependiendo del uso de la aplicación, se priorizará el acceso indexado o una rápida actualización de la información. La optimización difiere sensiblemente en cada motor de base de datos y depende de muchos factores.
Existe una ampliación de SQL conocida como FSQL (Fuzzy SQL, SQL difuso) que permite el acceso a bases de datos difusas, usando lalógica difusa. Este lenguaje ha sido implementado a nivel experimental y está evolucionando rápidamente.