Download Jordi Saludes, UPC MOLTO 1st meeting, Varna
Document related concepts
no text concepts found
Transcript
Using GF from Python Jordi Saludes, UPC MOLTO 1st meeting,Varna miércoles 8 de septiembre de 2010 Goal miércoles 8 de septiembre de 2010 Goal • Part of WP2 miércoles 8 de septiembre de 2010 Goal • Part of WP2 • To use gf from the NLTK miércoles 8 de septiembre de 2010 Goal • Part of WP2 • To use gf from the NLTK • …which is python-based miércoles 8 de septiembre de 2010 Goal • Part of WP2 • To use gf from the NLTK • …which is python-based • Mainly STM miércoles 8 de septiembre de 2010 Plugin miércoles 8 de septiembre de 2010 Plugin • python miércoles 8 de septiembre de 2010 C Plugin • python • FFI layer: C miércoles 8 de septiembre de 2010 C Haskell Plugin C • python Haskell • FFI layer: C • Inspired by Kevin Kofler on c-bindings miércoles 8 de septiembre de 2010 Features miércoles 8 de septiembre de 2010 Features • Reading pgf modules miércoles 8 de septiembre de 2010 Features • Reading pgf modules • Parsing/linearization miércoles 8 de septiembre de 2010 Features • Reading pgf modules • Parsing/linearization • Breaking down the structure of a gf expression. miércoles 8 de septiembre de 2010 The C side • GFpgf, GFLang, GFType, GFTree • Each struct stores a opaque reference to a haskell structure. miércoles 8 de septiembre de 2010 The Haskell side miércoles 8 de septiembre de 2010 The Haskell side • Storable class miércoles 8 de septiembre de 2010 The Haskell side • Storable class • therning.org/ magnus » hsc2hs miércoles 8 de septiembre de 2010 The Haskell side • Storable class • therning.org/ magnus » hsc2hs • A Haskell class where you define: miércoles 8 de septiembre de 2010 The Haskell side • Storable class • therning.org/ magnus » hsc2hs • A Haskell class where you define: • peek miércoles 8 de septiembre de 2010 The Haskell side • Storable class • therning.org/ magnus » hsc2hs • A Haskell class where you define: • peek • poke miércoles 8 de septiembre de 2010 Demo miércoles 8 de septiembre de 2010 Haskell: f a1 a2 … miércoles 8 de septiembre de 2010 Haskell: f a1 a2 … miércoles 8 de septiembre de 2010 Haskell: f a1 a2 … Python:[f, a1, a2, …] miércoles 8 de septiembre de 2010 Haskell: f a1 a2 … Python:[f, a1, a2, …] CId miércoles 8 de septiembre de 2010 Expr Expr miércoles 8 de septiembre de 2010 • Features miércoles 8 de septiembre de 2010 • Features • parsing/linearizing miércoles 8 de septiembre de 2010 • Features • parsing/linearizing • Expression structure miércoles 8 de septiembre de 2010 • Features • parsing/linearizing • Expression structure • Unicode miércoles 8 de septiembre de 2010 • Features • parsing/linearizing • Expression structure • Unicode • Only for Linux miércoles 8 de septiembre de 2010 • Features • parsing/linearizing • Expression structure • Unicode • Only for Linux • depends on ghc miércoles 8 de septiembre de 2010 • Features • parsing/linearizing • Expression structure • Unicode • Only for Linux • depends on ghc • Integration into nltk core? miércoles 8 de septiembre de 2010 • Features • parsing/linearizing • Expression structure • Unicode • Only for Linux • depends on ghc • Integration into nltk core? miércoles 8 de septiembre de 2010