31 de enero de 2011

Gold Parser en el entorno C#

En esta ocasión se trata de un ejemplo que permite reconocer sentencias de asignacion a una variable como por ejemplo:

  • x=5+10;
  • y=x*20;
en cual no es necesario declarar las variables a utilizar , sino mas bien haciendo el uso de dichas variables en el momento que se desee, y generar como resultado el codigo en 3 direcciones de las sentencias reconocidas por el parser que se ha implementado, a continuacion los videos:

Parte 1:

Parte 2:




Gold Parser en el entorno C#

Esta vez nos trasladamos al entorno del curso de Compiladores 2, en este caso nos dejaron realizar unos vídeos en el cual el objetivo es que permitieran la introducción a la herramienta Gold Parser para aquellas personas que pretendían cursar dicho curso, así como también que fuera parte de la escaza desimantación en español que se encuentra el la WEB.

El vídeo esta conformado de dos partes, en el cual se detalla los requerimientos que desea desarrollar en la herramienta Gold Parser, cabe destacar que se utilizo el Engine de C#, el cual permite generar implementaciones para el lenguaje C# y poderlos acoplar a nuestro proyecto en Visual Studio.

En el vídeo se implemento una gramática que reconociera la declaración de una lista de identificadores, y que generara como resultado el tipo de la variable asociada a una variable determinada, bueno todo este tipo de detalles se podrán apreciar en los vídeos.

Parte 1:



Parte 2:

Conexión Qt - MySQL

Por mi paso en el curso de Manejo e implementación de archivos nos dejaron una practica que consistía en realizar un video que ejemplificara la conexion entre la tecnologia Qt y una base de datos alojada en el gestor de bases de datos MySQL, creo que logramos el objetivo ya que se realizo de tal forma que no hubiera pierde en el caso de que alguien decidiera intentarlo, claro tampoco pretende ser un vídeo que enseñe todas las características que el lenguaje Qt posee, pero saca a relucir uno que otro concepto que maneja esta herramienta entre alguno de ellos puedo mencionar el uso de SIGNALS y SLOTS, pero como dije anteriormente este vídeo no tiene como objetivo ser una introducción a dicho lenguaje, así sin mas, les dejo el video.




Fumadores


Esta practica trata sobre la sincronización entre procesos, que necesitan obtener un recurso en común en este caso contar con los materiales necesarios para poder consumir un cigarro, el enunciado dice así:

Tres fumadores están representados por los procesos F1, F2 F3. Tres vendedores están representados por los procesos V1V2 y V3. Para cada fumador necesita tabacopapel fósforo; cuando dispone de estos recursos, el fumador fuma un cigarrillo hasta terminarlo y entonces queda elegible para fumar de nuevo. F1 tiene tabaco, F2 tiene papel y F3 tiene fósforos. V1 vende tabaco y papel, V2 vende papel para tabaco y fósforos, y V3 vende fósforos y tabaco. “V1, V2 y V3 trabajan en exclusión mutua”; sólo uno de los procesos puede trabajar a la vez y el siguiente vendedor no puede trabajar hasta que los recursos suministrados por el vendedor anterior hayan sido consumidos por un fumador.
Además la practica cuenta con las siguientes restricciones:
  • Se debe realizar con cola de mensajes.
  • Se debe ver una consola por fumador y una por el que pone los materiales en total son 4 consolas.
  • leguaje a utilizar C/C++.
Algunas imagenes de la practica en ejecución:






Link de descarga:

http://www.megaupload.com/?d=JDEDFTCD