domingo, 21 de noviembre de 2010

Lenguajes Script

Javascript

JavaScript es un lenguaje de scripting orientado a objetos, basado en prototipos, sin tipo y liviano, utilizado para acceder a objetos en aplicaciones. 
Principalmente, se utiliza integrado en un navegador web permitiendo el desarrollo de interfaces de usuario mejoradas y páginas web dinámicas. JavaScript es un dialecto de ECMAScript y se caracteriza por ser un lenguaje basado en prototipos, con entrada dinámica y con funciones de primera clase. 
JavaScript ha tenido influencia de múltiples lenguajes y se diseñó con una sintaxis similar al lenguaje de programación Java, aunque más fácil de utilizar para personas que no programan.

Ejemplo:



<HTML>
<HEAD>
  <SCRIPT LANGUAGE="JavaScript">
  <!---
    function HolaMundo() {
      alert("¡Hola, mundo!");
    }
  // --->
  </SCRIPT>
</HEAD>
<BODY>
<FORM>
  <INPUT TYPE="button" NAME="Boton" VALUE="Pulsame" onClick="HolaMundo()">
</FORM>
</BODY>
</HTML>



Perl


La estructura completa de Perl deriva ampliamente del lenguaje C. Perl es un lenguaje imperativo, con variables, expresiones, asignaciones, bloques de código delimitados por llaves,estructuras de control y subrutinas.

Perl también toma características de la programación shell. Todas las variables son marcadas con un signo precedente (sigil). Los sigil identifican inequívocamente los nombres de las variables, permitiendo a Perl tener una rica sintaxis. Notablemente, los sigil permiten interpolar variables directamente dentro de las cadenas de caracteres (strings). Como en los shell, Perl tiene muchas funciones integradas para tareas comunes y para acceder a los recursos del sistema.
Perl toma las listas del Lisp, hash (memoria asociativa) del AWK y expresiones regulares del sed. Todo esto simplifica y facilita todas las formas del análisis sintáctico, manejo de texto y tareas de gestión de datos.
En Perl 5, se añadieron características para soportar estructuras de datos complejas, funciones de primer orden (p. e. clausuras como valores) y un modelo de programación orientada a objetos. Éstos incluyen referencias, paquetes y una ejecución de métodos basada en clases y la introducción de variables de ámbito léxico, que hizo más fácil escribir código robusto (junto con el pragma strict). Una característica principal introducida en Perl 5 fue la habilidad de empaquetar código reutilizable como módulos. Larry Wall indicó más adelante que "la intención del sistema de módulos de Perl 5 era apoyar el crecimiento de la cultura Perl en vez del núcleo de Perl".
Todas las versiones de Perl hacen el tipificado automático de datos y la gestión de memoria. El intérprete conoce el tipo y requerimientos de almacenamiento de cada objeto en el programa; reserva y libera espacio para ellos según sea necesario. Las conversiones legales de tipo se hacen de forma automática en tiempo de ejecución; las conversiones ilegales son consideradas errores fatales.

Aplicaciones

Perl tiene muchas y variadas aplicaciones, gracias a la disponibilidad de muchos módulos estándares y de terceras partes.
Se ha usado desde los primeros días del Web para escribir guiones (scripts) CGI. Es una de las "tres Pes" (Perl, Python y PHP), que son los lenguajes más populares para la creación de aplicaciones Web, y es un componente integral de la popular solución LAMP para el desarrollo web. Grandes proyectos escritos en Perl son Slash, IMDb y UseModWiki, un motor de Wiki. Muchos sitios web con alto tráfico, como Amazon.com y Ticketmaster.com usan Perl extensamente.
Perl se usa a menudo como un "lenguaje pegamento", ligando sistemas e interfaces que no fueron diseñados específicamente para interoperar; y para el "escarbado de datos", convirtiendo o procesando grandes cantidades de datos para tareas como por ejemplo crear informes. De hecho, estas fortalezas están íntimamente unidas. Su combinación hace a Perl una popular herramienta de propósito general para los administradores de sistemas, especialmente en programas pequeños que pueden ser escritos y ejecutados en una sola línea de comandos.
Perl es también ampliamente usado en finanzas y bioinformática, donde es apreciado por su desarrollo rápido, tanto de aplicaciones como de despliegue, así como la habilidad de manejar grandes volúmenes de datos.

Ejemplo:
Este es un programa que al ingresar un número muestra si es nulo, par o impar.





Tcl/Tk

Tcl es un lenguaje de script creado por John Ousterhout, que ha sido concebido con una sintaxis sencilla para facilitarse su aprendizaje, sin ir en desmedro de la funcionalidad y expresividad.
Se utiliza principalmente para el desarrollo rápido de prototipos, aplicaciones "script", interfaces gráficas y pruebas. La combinación de Tcl con Tk (del inglés Tool Kit) es conocida como Tcl/Tk, y se utiliza para la creación de interfaces gráficas.
Tcl es un lenguaje interpretado, y su código puede ser creado y modificado dinámicamente. Sus reglas sintácticas son extremadamente simples y posee reglas de alcance dinámico. Permite escribir código fácil de mantener. Los "scripts" Tcl son a menudo más compactos y legibles que los programas funcionalmente equivalentes en otros lenguajes de programación. Es un lenguaje multiplataforma, con intérpretes que se ejecutan sobre Windows, Linux, UNIX, MacOS y OSX e incluso microprocesadores PIC.
Todos los elementos de un programa son comandos, incluyendo las estructuras del lenguaje. Dichos comandos se escriben en notación polaca y pueden ser redefinidos o sobrescritos de manera dinámica.
Una característica notable es que los datos son manejados como cadenas de caracteres Unicode, incluyendo el código fuente, soportando Unicode desde el lanzamiento de la versión 8.1, en el año 1999.
Una de las características más usadas de Tcl es su extensibilidad. Por ejemplo, si una aplicación requiere algo de funcionalidad no ofrecida por el Tcl estándar, los nuevos comandos de Tcl pueden ser implementados usando el lenguaje C, un integrado sumamente fácil. Tcl es "extensible" a través de C, C++ y Java. Mediante una extensión, permite la programación orientada a objetos. Puede extenderse también a entornos gráficos, a través de una interfaz denominada Tk.
La programación orientada a eventos se realiza sobre "sockets" y archivos, además son posibles los eventos basados en tiempo y los definidos por el usuario.

Tipos de variables

Las variables no tienen tipos explícitamente. Sin embargo podemos definir seis tipos
  • Booleanas : 0/no/off (en caso de ser falso) y 1/yes/on/ (en caso de ser verdadero) o un número diferente de 0
  • Números : 1 0 3.14 1.e-10, se tratan como cadenas, salvo en expresiones aritméticas en que se convierte primero en binario.
  • Cadenas de caracteres : Bienvenido, "Madame De Labas", 32 , {z 3.14}
  • Listas : de booleanas, nombres, cadenas o listas (pudiendo anidar listas)
  • Diccionarios : Son pares clave-valor, similares a las tablas asociativas. Pueden contener cualquier tipo de dato en el valor. Este tipo de variables se incluye desde Tcl 8.5 en adelante.
  • Tablas asociativas : T(clave) M(2,3) que puedan contener los 5 tipos anteriores, incluso mezclados.
Ejemplo: 

1 comentario:

  1. Los sigil identifican inequívocamente los nombres de las variables

    Esto no es del todo correcto. Los sigil son los caracteres que se ponen delante del nombre de las variables, pero no sirven para identificarlas, sino para indicar qué tipo de dato obtenemos de ellas.

    Por ejemplo, si tenemos la variable array @var, que contiene una lista de elementos, $var[1] nos devolverá el segundo elemento. El sigil '$' significa 'escalar', por lo que quiere decir que solo queremos un elemento. Si, por el contrario, queremos obtener, a la vez, el cuarto y el séptimo valor de @var, lo escribiremos así: @var[3, 6].

    Más información en perldoc perldata.

    ResponderEliminar