Realizing Monads in Interaction Nets via Generic Typed Rules

Interaction net systems are a model of computation based on graph rewriting. We extend interaction rules with generic rules , thus adding a form of higher-order functions. In addition, we propose a simple type system in order to appropriately restrict the matching of generic rules. Finally, we show how the combination of these features, i.e., generic typed rules, can be used to model impure functions in interaction nets via monads in an intuitive and simple manner.

[1]  Ian Mackie Towards a Programming Language for Interaction Nets , 2005, Electron. Notes Theor. Comput. Sci..

[2]  Marinus J. Plasmeijer,et al.  The Ins and Outs of Clean I/O , 1995, J. Funct. Program..

[3]  Ian Mackie,et al.  Visual Programming with Recursion Patterns in Interaction Nets , 2007, Electron. Commun. Eur. Assoc. Softw. Sci. Technol..

[4]  Marc de Falco An Explicit Framework for Interaction Nets , 2010 .

[5]  Yves Lafont,et al.  Interaction nets , 1989, POPL '90.

[6]  Ian Mackie,et al.  Interaction Nets vs. the rho-calculus: Introducing Bigraphical Nets , 2006, EXPRESS.

[7]  Ian Mackie A Visual Model of Computation , 2010, TAMC.

[8]  Philip Wadler,et al.  Comprehending monads , 1990, LISP and Functional Programming.

[9]  Ian Mackie,et al.  Combining interaction nets with externally defined programs , 2001, APPIA-GULP-PRODE.

[10]  Simon L. Peyton Jones,et al.  Imperative functional programming , 1993, POPL '93.

[11]  Marc de Falco,et al.  An Explicit Framework for Interaction Nets , 2009, RTA.

[12]  Maribel Fernández Type assignment and termination of interaction nets , 1998, Math. Struct. Comput. Sci..

[13]  Eugen Jiresch Realizing Impure Functions in Interaction Nets , 2010, ICGT.

[14]  Yoshihito Toyama,et al.  Semantics and Strong Sequentiality of Priority Term Rewriting Systems , 1996, RTA.

[15]  Ian Mackie,et al.  Efficient lambda-Evaluation with Interaction Nets , 2004, RTA.

[16]  Hélène Kirchner,et al.  PORGY: Strategy-Driven Interactive Transformation of Graphs , 2011, TERMGRAPH.

[17]  Eugenio Moggi,et al.  Notions of Computation and Monads , 1991, Inf. Comput..

[18]  Ian Mackie YALE: yet another lambda evaluator based on interaction nets , 1998, ICFP '98.

[19]  Jorge Sousa Pinto,et al.  A Tool for Programming with Interaction Nets , 2008, Electron. Notes Theor. Comput. Sci..

[20]  Ian Mackie,et al.  From Term Rewriting to Generalised Interaction Nets , 1996, PLILP.

[21]  Shinya Sato,et al.  An Implementation of Nested Pattern Matching in Interaction Nets , 2009, RULE.

[22]  Ian Mackie,et al.  Interaction Nets and Term-Rewriting Systems , 1998, Theor. Comput. Sci..

[23]  Shinya Sato,et al.  Interaction Nets With Nested Pattern Matching , 2008, Electron. Notes Theor. Comput. Sci..

[24]  Philip Wadler,et al.  How to declare an imperative , 1997, CSUR.

[25]  César A. Muñoz,et al.  The proof monad , 2010, J. Log. Algebraic Methods Program..

[26]  Sylvain Lippi in2 : A Graphical Interpreter for Interaction Nets , 2002, RTA.

[27]  Pieter H. Hartel,et al.  Programming Languages: Implementations, Logics, and Programs , 1996, Lecture Notes in Computer Science.

[28]  Ian Mackie,et al.  Operational equivalence for interaction nets , 2003, Theor. Comput. Sci..

[29]  Franz Baader,et al.  Unification theory , 1986, Decis. Support Syst..

[30]  Yves Lafont Interaction Combinators , 1997, Inf. Comput..