compiladores:ide
Interfaz gráfica para el intérprete
Si quieren probar la interfaz gráfica para el intérprete del proyecto pueden usar la que está en Imp.
Algunas apostillas para facilitarles la investigación:
- Usa Gtk2Hs el binding de Haskell para Gtk2.
- De acuerdo a como tengan definido sus tipos de datos (especialmente Omega), deberán hacer los cambios correspondientes.
- La interfaz de consola es una función
run :: Omega Int -> IO ()
- La interfaz gráfica es una función
runGtk :: Omega Int -> IO ()
- Por otro lado tengo una función
execStrGen :: (Omega Int -> IO ()) -> (String -> IO ()) -> String -> IO ()
donde el primer argumento es la función para ejecutar el código (el tercer argumento) y el segundo argumento es una función que sabe que hacer en caso de error durante el parseo.
- Si ustedes tienen definida una función parecida a
execStrGen
, entonces lo “único” que tienen que hacer es pasarle como argumento a esa función la funciónrunGtk
. - Si quieren tener el coloreado de sintáxis en el editor tienen que copiar el archivo
imp.lang
en$HOME/.gnome2/gtksourceview-1.0/language-specs/
.
- Para obtener un archivo LaTeX con los comentarios y el codigo “pretty-printed” uso Lhs2TeX.
El tar con los archivos contiene:
- Gui.lhs: el código para manejar la interfaz gráfica,
- Makefile: para compilar (tiene un pequeño error de dependencias, pero es fácil de solucionar)
- imp.lang: para tener coloreado de sintáxis
- Ui.glade: la definición de la interfaz gráfica con Glade2.
Así se ve:
compiladores/ide.txt · Última modificación: 2018/08/10 03:03 por 127.0.0.1