domingo, 14 de septiembre de 2008

INSTALACION DE JLEX Y CUP EN WINDOWS


INSTALACION DE JLEX Y CUP EN WINDOWS

Jlex es una herramienta que toma como entrada un fichero del tipo “[nombre_del_fichero].lex”, luego con este archivo genera un archivo fuente java [nombre_del_fichero.lex].JAVA correspondiente al analizador léxico. Los pasos para la instalación de esta herramienta se verán a continuación.

Software Necesario:


  • JDK: Descarga el JDK de la página Web de Sun, en este caso como la plataforma de trabajo será Windows, se debe descargar la versión de jdk que se compatible para este sistema operativo. (http://www.sun.com).
  • Main.java: Este archivo será de suma utilidad para la generación de clases para Jlex. Podemos tener acceso a este archivo en esta pagina: http:// www.cs.princeton.edu/~appel/modern/java/JLex/
  • Codigo Fuente Cup: Es la herramienta que usaremos para generar el analizador sintáctico de nuestro lenguaje. Este se puede descargar de la siguiente pagina: http://www.cs.princeton.edu/~appel/modern/java/CUP/.
Configuración del Software:

Luego de descargar el archivo Main.java de la pagina de Jlex y descomprimir el fichero java_cup_v10k.zip descargado del sitio de Cup, procedemos a compilar el archivo Main,java, esto lo podemos realizar de dos formas:

Con la ayuda de algún IDE para el desarrollo de java, creamos un archivo con el nombre Main. Java y dentro de este copiamos el contenido del fichero y siguiendo las reglas para la compilación de un fichero en el IDE que se haya escogido procedemos a compilar el archivo.Nota: La forma en que se proceda a compilar el archivo por este método depende del IDE con el cual se trabaje.

La segunda manera de compilar el fichero Main.java para poder obtener los ficheros .class se llevara cabo de la siguiente forma:

Nos ubicamos en el directorio bin de nuestro jdk para este caso tenemos instalado el jdk1.6.0 cuya ubicación de la carpeta bin se muestra a continuación.


Luego de tener acceso a este directorio procedemos con los siguientes pasos:
En el menú Inicio hacemos clic derecho a Mi Pc, seleccionamos la opción de “Propiedades”, luego seleccionamos la pestana “Avanzado”, ahi seleccionamos la opción de “Variables de entorno”, luego procedemos crear dentro del apartado de “Variables para del Usuario”, un CLASSPATH y un PATH con el siguiente formato:
Variable: CLASSPATH
Valor: Copiamos el directorio del bin que anteriormente accedimos. Con lo cual nos quedara de la siguiente forma:
Variable: PATH
Valor: Copiamos el directorio del bin que anteriormente accedimos. Con lo cual nos quedara de la siguiente forma:
Luego presionamos “ Aceptar ” y todo quedara lista para que podamos acceder a los componentes de la carpeta bin.
Directorio bin del jdk
Compilación del archivo Main.java desde línea de Comando:
Creamos una carpeta donde realizaremos nuestro proyecto y luego dentro de esta carpeta creamos otra con nombre JLex y una con nombre java_cup, dentro de la carpate JLex copiamos el archivo Main.java y dentro de la carpeta java_cup copiamos los ficheros que se encuentran dentro de la carpeta que descargamos de la pagina de Cup. Para este ejemplo usaremos el directorio “C”, para crear al carpeta “Ejemplo” y dentro de esta crearemos las carpetas JLex y Cup.

Nos posicionamos en consola en el directorio de la carpeta que creamos en el directorio “C”, como se muestra a continuación, y procedemos a ejecutar los comandos para compilar el archivo Main.java.
Luego de ejecutar los comandos anteriores se generara en la carpeta JLex los ficheros .clas como se muestra a continuación


JAVA CUP es un parser-generador. Es un analizador sintáctico que construye un parser para gramáticas tipo LALR(1), con código de producción y asociación de fragmentos de código JAVA. Cuando una producción en particular es reconocida, se genera un archivo fuente Java, parser.java que contiene una clase parser, con un método Symbol parser ().
INSTALACION DE LA HERRAMIENTA
Lo único que debemos de realizar para tener esta herramienta es descargar el fichero .Zip de la pagina de Cup proporcionada anteriormente y descomprimirla dentro de la carpeta donde crearemos nuestro proyecto, no hay necesidad de compilar los archivo dentro de esta carpeta ya que estoy ya están compilados. La forma en que deberá de quedar se muestra a continuación.
Luego de realizados los pasos anteriores ya podemos comenzar a utilizar JLex y Cup, y esto se demostrara con un pequeño ejemplo que a continuación se presenta.
Para este ejemplo utilizaremos la carpeta “Ejemplo” que anteriormente creamos en el directorio “C” y dentro de esta carpeta crearemos una carpeta mas aparte de las que esta contiene (JLex, java_cup) que será donde se generaran una serie de archivos que necesita el programa para trabajar como un analizador léxico. Esta carpeta debe de tener el mismo nombre que el package que se declara en la sección de importes tanto del fichero .lex y .cup.


Para este ejemplo copiamos de la calculadora con su respectivo archivo Lex y Cup cuyo contenido se presenta a continuación.


Compilando lo archivos..............



13 comentarios:

  1. q bueno q entendiste!! XD... jejeje son bromas!!

    ResponderEliminar
  2. Hey gracias por publicarlo!!!

    ResponderEliminar
  3. Gracias por tu ayuda, te veré pronto.

    !Saludos!

    ResponderEliminar
  4. Hey que linda eres!! y no es broma

    ResponderEliminar
  5. desde españa te doy las gracias!!! me estaba volviendo loca, en mi universidad dieron por echo que eramos capaces de instalarlo solos!!! y no era asi, asique a mi y a mis compañeros nos has salvado

    ResponderEliminar
  6. jajaja le voy a contar al toro que te andan chuleando por acá xD.

    Por cierto no se si ya te percataste que sos el primer resultado que tira google, sobre como instalar jlex y cup en windows xD.

    Felicidades, por cierto que me sacaste de apuros porque no me acordaba como hacerlo y ahí toca hacer el proyecto de compi 2. xDD

    orales

    ResponderEliminar
  7. Gracias Turusito!! Pilas alli con Compi 2.

    ResponderEliminar
  8. hey torita! jajaja gracias por el apote! jajaja saludos!

    ResponderEliminar
  9. Mil Gracias! me ha sido de mucha utilidad para Compi1, te lo agradezco infinitamente!

    éxitos y salu2!

    ResponderEliminar
    Respuestas
    1. De nada... cualquier duda me puedes escribir, siempre reviso mi blog.

      Eliminar
  10. Hola me pueden decir como empezar a crear una calcuradora, cual seria el primer paso

    ResponderEliminar
    Respuestas
    1. Despues de Instalar, el primer paso sería crear el archivo para el analizador léxico, en el que tendrías que especificar todos los toquens o símbolos que tendrías que reconocer, como por ejemplo: los signos de las operaciones, aritméticas y números. Esto lo tendrias que hacer a través de expresiones regulares.

      Código de usuario
      %%
      directivas JLex
      %%
      Reglas para las expresiones regulares

      Los caracteres %% distinguen una sección de otra. Deben estar colocados al principio
      de la línea y el resto de la línea no debe usarse.

      Expresiones Regulares:
      Ejemplo:

      DIGITO=[0-9]
      IDENT=[a-z][a-z0-9]*

      Después de tener el archivo con el analizador léxico el siguiente paso sería el analizador sintáctico, por medio de una gramática.

      http://www.lsi.us.es/docencia/get.php?id=5831

      Saludos.

      Eliminar