diff --git a/web/Yuyuan_ventana_heptagonal.JPG b/web/Yuyuan_ventana_heptagonal.JPG new file mode 100644 index 0000000..0954fd0 Binary files /dev/null and b/web/Yuyuan_ventana_heptagonal.JPG differ diff --git a/web/bib.php b/web/bib.php new file mode 100644 index 0000000..fb88564 --- /dev/null +++ b/web/bib.php @@ -0,0 +1,22 @@ + + + + + + Heptagon publications + + + + + + + + +
+

Publications about Heptagon: definition, compilation, case studies

+ + +
+ + diff --git a/web/header.php b/web/header.php new file mode 100644 index 0000000..4272a43 --- /dev/null +++ b/web/header.php @@ -0,0 +1,3 @@ + diff --git a/web/index.php b/web/index.php new file mode 100644 index 0000000..17965c9 --- /dev/null +++ b/web/index.php @@ -0,0 +1,133 @@ + + + + + + Heptagon + + + + + + + + +
+

+Heptagon is a synchronous dataflow language whose syntax and semantics is +inspired from Lustre, +with a syntax allowing the expression of control structures (e.g., switch or +mode automata). +

+

+Heptagon is also a research compiler, whose aim is to facilitate +experimentation. The current version of the compiler includes the following +features: +

+

+ +

+ Heptagon is developed in + the Parkas (ENS) + and Pop-Art (LIG/INRIA) research teams. +

+ +

How to get it or try it

+ +

Download

+ +Heptagon can be freely downloaded here. + +

Technical requirements

+ +The use of the Heptagon compiler by itself does not require any additional +tools. However, the usual use involves a compiler for the generated code (target +languages are currently C or Java). + +The tools below are optional or are related to some subparts of Heptagon: + + + +

Contact

Please + contact us for + further information. + + +

Main participants

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Gwenaël DelavalAssistant Prof. at UJF+33 4 76 61 54 31mailweb
Léonard GérardPhD student at ENSmail
Adrien GuattoPhD student at ENSmailweb
Hervé MarchandResearcher at INRIA+33 2 99 84 75 09mailweb
Cédric PasteurPhD student at ENSmailweb
Marc PouzetProfessor at ENSmailweb
Eric RuttenResearcher at INRIA+33 4 76 61 55 50mailweb
+
+ + diff --git a/web/pub/RR-7631.pdf b/web/pub/RR-7631.pdf new file mode 100644 index 0000000..c21e99b Binary files /dev/null and b/web/pub/RR-7631.pdf differ diff --git a/web/pub/heptagon-manual.pdf b/web/pub/heptagon-manual.pdf new file mode 100644 index 0000000..4669b91 Binary files /dev/null and b/web/pub/heptagon-manual.pdf differ diff --git a/web/publications.html b/web/publications.html new file mode 100644 index 0000000..6b83ea2 --- /dev/null +++ b/web/publications.html @@ -0,0 +1,471 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+[GGPP12] + +Léonard Gérard, Adrien Guatto, Cédric Pasteur, and Marc Pouzet. + A modular memory optimization for synchronous data-flow languages. + In Proc. of the ACM International Conference on Languages, + Compilers, Tools and Theory for Embedded Systems (LCTES'12), Beijing, China, + June 2012. +[ bib ] +
+The generation of efficient sequential code for + synchronous data-flow languages raises two + intertwined issues: control and memory + optimization. While the former has been extensively + studied, for instance in the compilation of LUSTRE + and SIGNAL, the latter has only been addressed in a + restricted manner. Yet, memory optimization becomes + a pressing issue when arrays are added to such + languages. This article presents a two-level + solution to the memory optimization problem. It + combines a compile-time optimization algorithm, + reminiscent of register allocation, paired with + language annotations on the source given by the + designer. Annotations express in-place modifications + and control where allocation is performed. Moreover, + they allow external functions performing in-place + modifications to be safely imported. Soundness of + annotations is guaranteed by a semilinear type + system and additional scheduling constraints. A key + feature is that annotations for well-typed programs + do not change the semantics of the language: + removing them may lead to less efficient code but + will not alter the semantics. The method has been + implemented in a new compiler for a LUSTRE-like + synchronous language extended with hierarchical + automata and arrays. Experiments show that the + proposed approach removes most of the unnecessary + array copies, resulting in faster code that uses + less memory. +
+

+Keywords: synchronous programming; type system +
+ +
+[ADPG+11] + +S. Aboubekr, G. Delaval, R. Pissard-Gibollet, É. Rutten, and D. Simon. + Automatic generation of discrete handlers of real-time continuous + control tasks. + In Proc. 18th World Congress of the International Federation of + Automatic Control (IFAC), Milano, Italy, August 2011. +[ bib | +.pdf ] +
+We present a novel technique for designing discrete, + logical control loops, on top of continuous control + tasks, ensuring logical safety properties of the + tasks sequencings and mode changes. We define this + new handler on top of the real-time executives built + with the Orccad design environment for control + systems, which is applied, e.g. to robotics and + real-time networked control. It features structures + of control tasks, each equipped with a local + automaton, used for the reactive, event-based + management of its activity and modes. The + additional discrete handler manages the interactions + between tasks, concerning, e.g., mutual exclusions, + forbidden or imposed sequences. We use a new + reactive programming language, with constructs for + finite-state machines and data-flow nodes, and a + mechanism of behavioral contracts, which involves + discrete controller synthesis. The result is a + discrete control loop, on top of the continuous + control loops, all integrated in a coherent + real-time architecture. Our approach is illustrated + and validated experimentally with the case study of + a robot arm. +
+

+

+[BPD+11] + +Fabienne Boyer, Noël De Palma, Gwenaël Delaval, Olivier Gruber, and + Eric Rutten. + Case studies in discrete control for autonomic system administration. + In Sixth International Workshop on Feedback Control + Implementation and Design in Computing Systems and Networks (FeBID 2011), + Karlsruhe, Germany, June 2011. +[ bib | +.pdf ] +
+This paper presents examples of autonomic system + administration issues that can be addressed and + solved as discrete control problems. This shows + evidence of the relevance of control techniques for + the discrete aspects of closed-loop control of + computing systems. The model-based control of + adaptive and reconfigurable systems is considered via + a reactive programming language, based on discrete + controller synthesis (DCS) techniques. We identify + control problems in autonomic systems belonging to + the class of logical, discrete systems, and + illustrate how to solve them using DCS. +
+

+

+[BSDR11] + +Tayeb Bouhadiba, Quentin Sabah, Gwenaël Delaval, and Éric Rutten. + Synchronous control of reconfiguration in fractal component-based + systems - a case study. + Rapport de recherche RR-7631, INRIA, May 2011. +[ bib | +http | +.pdf ] +
+In the context of component-based embedded systems, + the management of dynamic reconfiguration in + adaptive systems is an increasingly important + feature. The Fractal component-based framework, and + its industrial instantiation MIND, provide for + support for control operations in the lifecycle of + components. Nevertheless, the use of complex and + integrated architectures make the management of this + reconfiguration operations difficult to handle by + programmers. To address this issue, we propose to + use Synchronous languages, which are a complete + approach to the design of reactive systems, based on + behavior models in the form of transition + systems. Furthermore, the design of closed-loop + reactive managers of reconfigurations can benefit + from formal tools like Discrete Controller + Synthesis. In this paper we describe an approach to + concretely integrate synchronous reconfiguration + managers in Fractal component-based systems. We + describe how to model the state space of the control + problem, and how to specify the control + objectives. We describe the implementation of the + resulting manager with the Fractal/Cecilia + programming environment, taking advantage of the + Comete distributed middleware. We illustrate and + validate it with the case study of the Comanche HTTP + server on a multi-core execution platform. +
+

+Keywords: Component-based systems, synchronous programming, + reconfigurable systems, discrete controller + synthesis. +
+ +
+[DDR10] + +Noël De Palma, Gwenaël Delaval, and Éric Rutten. + Qos and energy management coordination using discrete controller + synthesis. + In 1st International Workshop on Green Computing Middleware + (GCM'2010), Bangalore, India, November 2010. +[ bib | +.pdf ] +
+Green computing is nowadays a major challenge for + most IT organizations. Administrators have to + manage the trade-off between system performances and + energy saving goals. Autonomic computing is a + promising approach to control the QoS and the energy + consumed by a system. This paper precisely + investigates the use of synchronous programming and + discrete controller synthesis to automate the + generation of a controller that enforces the + required coordination between QoS and energy + managers. We illustrate our approach by describing + the coordination between a simple admission + controller and an energy controller. +
+

+

+[DR10b] + +Gwenaël Delaval and Éric Rutten. + Reactive model-based control of reconfiguration in the fractal + component-based model. + In 13th International Symposium on Component Based Software + Engineering (CBSE 2010), Prague, Czech Republic, June 2010. +[ bib | +.pdf ] +
+We present a technique for designing reconfiguration + controllers in the Fractal component-based + framework. We obtain discrete control loops that + automatically enforce safety properties on the + interactions between components, concerning, e.g., + mutual exclusions, forbidden or imposed sequences. + We use a reactive programming language, with a new + mechanism of behavioural contracts. Its compilation + involves discrete controller synthesis, which + automatically generates the correct adaptation + controllers. We apply our approach to the problem + of adaptive ressource management, illustrated by the + example of a HTTP server. +
+

+

+[DMR10] + +Gwenaël Delaval, Hervé Marchand, and Éric Rutten. + Contracts for modular discrete controller synthesis. + In ACM International Conference on Languages, Compilers, and + Tools for Embedded Systems (LCTES 2010), Stockholm, Sweden, April 2010. +[ bib | +.pdf ] +
+We describe the extension of a reactive programming + language with a behavioral contract construct. It + is dedicated to the programming of reactive control + of applications in embedded systems, and involves + principles of the supervisory control of discrete + event systems. Our contribution is in a language + approach where modular discrete controller synthesis + (DCS) is integrated, and it is concretized in the + encapsulation of DCS into a compilation process. + From transition system specifications of possible + behaviors, DCS automatically produces controllers + that make the controlled system satisfy the property + given as objective. Our language features and + compiling technique provide + correctness-by-construction in that sense, and + enhance reliability and verifiability. Our + application domain is adaptive and reconfigurable + systems: closed-loop adaptation mechanisms enable + flexible execution of functionalities w.r.t. + changing resource and environment conditions. Our + language can serve programming such adaption + controllers. This paper particularly describes the + compilation of the language. We present a method + for the modular application of discrete controller + synthesis on synchronous programs, and its + integration in the BZR language. We consider + structured programs, as a composition of nodes, and + first apply DCS on particular nodes of the program, + in order to reduce the complexity of the controller + computation; then, we allow the abstraction of parts + of the program for this computation; and finally, we + show how to recompose the different controllers + computed from different abstractions for their + correct co-execution with the initial program. Our + work is illustrated with examples, and we present + quantitative results about its implementation. +
+

+

+[DR10a] + +Gwenaël Delaval and Éric Rutten. + A language-based approach to the discrete control of adaptive + resource management. + In Workshop on Adaptive Resource Management (WARM 2010), + Stockholm, Sweden, April 2010. +[ bib | +.pdf ] +
+We present a novel technique for designing discrete + control loops for adaptive systems. They + automatically enforce safety properties on the + interactions between tasks, concerning, e.g., mutual + exclusions, forbidden or imposed sequences. We use + a new reactive programming language, with a + mechanism of behavioural contracts. Its compilation + involves discrete controller synthesis, which + automatically generates the correct appropriate + adaptation controllers. We apply our approach to + the problem of adaptive ressource management, + illustrated by the example of a HTTP server. +
+

+

+[ADR09] + +Soufyane Aboubekr, Gwenaël Delaval, and Éric Rutten. + A programming language for adaptation control: Case study. + In 2nd Workshop on Adaptive and Reconfigurable Embedded Systems + (APRES 2009). ACM SIGBED Review, volume 6, Grenoble, France, October 2009. +[ bib | +.pdf ] +
+We illustrate an approach for the safe design of + adaptive embedded systems. It applies the BZR + programming language, featuring a special new + contract mechanism: its compilation involves + automatical discrete controller synthesis. The + contribution of this paper is to illustrate how it + can be used to enforce the correct adaptation + control of the application, meeting execution + constraints, with the case study of a video module + of a multimedia cellular phone. +
+

+

+[GYDR09] + +Abdoulaye Gamatié, Huafeng Yu, Gwenaël Delaval, and Éric Rutten. + A case study on controller synthesis for data-intensive embedded + systems. + In Proceedings of the 6th IEEE International Conference on + Embedded Software and Systems (ICESS'2009), HangZhou, Zhejiang, China, May + 2009. +[ bib ] +
+This paper presents an approach for the safe design + of data-intensive embedded systems. A multimedia + application module of last generation cellular + phones is considered as a case study. The OMG + standard profile MARTE is used to adequately model + the application. The resulting model is then + transformed into a synchronous program from which a + controller is synthesized by using a formal + technique, in order to enforce the safe behavior of + the modeled application while meeting quality of + service requirements. The whole study is carried out + in a design framework, GASPARD, dedicated to + high-performance embedded systems. +
+

+

+[DR07] + +Gwenaël Delaval and Éric Rutten. + A domain-specific language for multitask systems, applying discrete + controller synthesis. + EURASIP Journal on Embedded Systems, 2007:Article ID 84192, 17 + pages, 2007. +[ bib | +DOI | +.pdf ] +
+We propose a simple programming language, called + Nemo, specific to the domain of multi-task real-time + control systems, such as in robotic, automotive or + avionics systems. It can be used to specify a set of + resources with usage constraints, a set of tasks + that consume them according to various modes, and + applications sequencing the tasks. We obtain + automatically an application-specific task handler + that correctly manages the constraints (if there + exists one), through a compilation-like process + including a phase of discrete controller + synthesis. This way, this formal technique + contributes to the safety of the designed systems, + while being encapsulated in a tool that makes it + useable by application experts. Our approach is + based on the synchronous modelling techniques, + languages and tools. +
+

+Keywords: real-time systems, safe design, domain-specific + language, discrete control synthesis, synchronous + programming +
+ +
+[DR06] + +G. Delaval and E. Rutten. + A domain-specific language for task handlers generation, applying + discrete controller synthesis. + In SAC '06: Proceedings of the 2006 ACM Symposium on Applied + computing, pages 901-905, Dijon, France, April 2006. ACM Press. +[ bib | +DOI | +.ps.gz | +.pdf ] + +
+[DR05] + +G. Delaval and E. Rutten. + A domain-specific language for multi-task systems, applying discrete + controller synthesis. + Rapport de recherche INRIA nº5690, September 2005. +[ bib | +.ps.gz | +.pdf ] + +

This file was generated by +bibtex2html 1.95.

diff --git a/web/publications_bib.html b/web/publications_bib.html new file mode 100644 index 0000000..8897771 --- /dev/null +++ b/web/publications_bib.html @@ -0,0 +1,422 @@ +

publis.bib

+@inproceedings{Gerard:2012,
+  author = {L{\'e}onard G{\'e}rard and Adrien Guatto and
+                  C{\'e}dric Pasteur and Marc Pouzet},
+  title = {A Modular Memory Optimization for Synchronous
+                  Data-Flow Languages},
+  booktitle = {Proc. of the ACM International Conference on
+                  Languages, Compilers, Tools and Theory for Embedded
+                  Systems (LCTES'12)},
+  date-added = {2012-07-04 16:11:46 +0200},
+  date-modified = {2012-07-04 16:15:18 +0200},
+  keywords = {synchronous programming; type system},
+  year = 2012,
+  month = jun,
+  address = {Beijing, China},
+  abstract = {The generation of efficient sequential code for
+                  synchronous data-flow languages raises two
+                  intertwined issues: control and memory
+                  optimization. While the former has been extensively
+                  studied, for instance in the compilation of LUSTRE
+                  and SIGNAL, the latter has only been addressed in a
+                  restricted manner. Yet, memory optimization becomes
+                  a pressing issue when arrays are added to such
+                  languages.  This article presents a two-level
+                  solution to the memory optimization problem. It
+                  combines a compile-time optimization algorithm,
+                  reminiscent of register allocation, paired with
+                  language annotations on the source given by the
+                  designer. Annotations express in-place modifications
+                  and control where allocation is performed. Moreover,
+                  they allow external functions performing in-place
+                  modifications to be safely imported. Soundness of
+                  annotations is guaranteed by a semilinear type
+                  system and additional scheduling constraints. A key
+                  feature is that annotations for well-typed programs
+                  do not change the semantics of the language:
+                  removing them may lead to less efficient code but
+                  will not alter the semantics.  The method has been
+                  implemented in a new compiler for a LUSTRE-like
+                  synchronous language extended with hierarchical
+                  automata and arrays. Experiments show that the
+                  proposed approach removes most of the unnecessary
+                  array copies, resulting in faster code that uses
+                  less memory. }
+}
+
+ +
+@misc{rr-nemo,
+  author = {Delaval, G. and Rutten, E.},
+  title = {A Domain-Specific Language for Multi-task Systems,
+                  applying Discrete Controller Synthesis},
+  howpublished = {Rapport de recherche INRIA nº5690},
+  month = sep,
+  year = 2005,
+  pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.pdf},
+  ps = {http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.ps.gz}
+}
+
+ +
+@inproceedings{delaval06:_domain_specif_languag_multi_system,
+  author = {Delaval, G. and Rutten, E.},
+  title = {A Domain-specific Language for Task Handlers
+                  Generation, Applying Discrete Controller Synthesis},
+  booktitle = {SAC '06: Proceedings of the 2006 ACM Symposium on
+                  Applied computing},
+  year = 2006,
+  address = {Dijon, France},
+  month = apr,
+  isbn = {1-59593-108-2},
+  pages = {901--905},
+  doi = {10.1145/1141277.1141487},
+  publisher = {ACM Press},
+  pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.pdf},
+  ps = {http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.ps.gz}
+}
+
+ +
+@article{delaval07:_nemo_jes,
+  author = {Delaval, Gwenaël and Rutten, Éric },
+  title = {A Domain-Specific Language for Multitask Systems,
+                  Applying Discrete Controller Synthesis},
+  journal = {EURASIP Journal on Embedded Systems},
+  year = 2007,
+  volume = 2007,
+  pages = {Article ID 84192, 17 pages},
+  doi = {10.1155/2007/84192},
+  abstract = {We propose a simple programming language, called
+                  Nemo, specific to the domain of multi-task real-time
+                  control systems, such as in robotic, automotive or
+                  avionics systems. It can be used to specify a set of
+                  resources with usage constraints, a set of tasks
+                  that consume them according to various modes, and
+                  applications sequencing the tasks. We obtain
+                  automatically an application-specific task handler
+                  that correctly manages the constraints (if there
+                  exists one), through a compilation-like process
+                  including a phase of discrete controller
+                  synthesis. This way, this formal technique
+                  contributes to the safety of the designed systems,
+                  while being encapsulated in a tool that makes it
+                  useable by application experts. Our approach is
+                  based on the synchronous modelling techniques,
+                  languages and tools.},
+  keywords = {real-time systems, safe design, domain-specific
+                  language, discrete control synthesis, synchronous
+                  programming},
+  pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/nemo-jes2007.pdf}
+}
+
+ +
+@inproceedings{delaval10:_contracts_mod_dcs,
+  author = {Delaval, Gwena\"{e}l and Marchand, Herv\'{e} and
+                  Rutten, \'{E}ric},
+  title = {Contracts for Modular Discrete Controller Synthesis},
+  booktitle = {ACM International Conference on Languages,
+                  Compilers, and Tools for Embedded Systems (LCTES
+                  2010)},
+  year = 2010,
+  address = {Stockholm, Sweden},
+  month = apr,
+  abstract = {We describe the extension of a reactive programming
+                  language with a behavioral contract construct.  It
+                  is dedicated to the programming of reactive control
+                  of applications in embedded systems, and involves
+                  principles of the supervisory control of discrete
+                  event systems.  Our contribution is in a language
+                  approach where modular discrete controller synthesis
+                  (DCS) is integrated, and it is concretized in the
+                  encapsulation of DCS into a compilation process.
+                  From transition system specifications of possible
+                  behaviors, DCS automatically produces controllers
+                  that make the controlled system satisfy the property
+                  given as objective.  Our language features and
+                  compiling technique provide
+                  correctness-by-construction in that sense, and
+                  enhance reliability and verifiability.  Our
+                  application domain is adaptive and reconfigurable
+                  systems: closed-loop adaptation mechanisms enable
+                  flexible execution of functionalities w.r.t.
+                  changing resource and environment conditions.  Our
+                  language can serve programming such adaption
+                  controllers.  This paper particularly describes the
+                  compilation of the language.  We present a method
+                  for the modular application of discrete controller
+                  synthesis on synchronous programs, and its
+                  integration in the BZR language.  We consider
+                  structured programs, as a composition of nodes, and
+                  first apply DCS on particular nodes of the program,
+                  in order to reduce the complexity of the controller
+                  computation; then, we allow the abstraction of parts
+                  of the program for this computation; and finally, we
+                  show how to recompose the different controllers
+                  computed from different abstractions for their
+                  correct co-execution with the initial program.  Our
+                  work is illustrated with examples, and we present
+                  quantitative results about its implementation.},
+  pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/lctes2010.pdf}
+}
+
+ +
+@inproceedings{aboubekr09:_prog_lg_adapt_ctr,
+  author = {Aboubekr, Soufyane and Delaval, Gwena\"{e}l and
+                  Rutten, \'{E}ric},
+  title = {A Programming Language for Adaptation Control: Case
+                  Study},
+  booktitle = {2nd Workshop on Adaptive and Reconfigurable Embedded
+                  Systems (APRES 2009). ACM SIGBED Review},
+  year = 2009,
+  volume = 6,
+  number = 3,
+  address = {Grenoble, France},
+  month = oct,
+  abstract = {We illustrate an approach for the safe design of
+                  adaptive embedded systems. It applies the BZR
+                  programming language, featuring a special new
+                  contract mechanism: its compilation involves
+                  automatical discrete controller synthesis.  The
+                  contribution of this paper is to illustrate how it
+                  can be used to enforce the correct adaptation
+                  control of the application, meeting execution
+                  constraints, with the case study of a video module
+                  of a multimedia cellular phone.},
+  pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/apres09.pdf}
+}
+
+ +
+@inproceedings{delaval10:_warm,
+  author = {Delaval, Gwena\"{e}l and Rutten, \'{E}ric},
+  title = {A Language-Based Approach to the Discrete Control of
+                  Adaptive Resource Management},
+  booktitle = {Workshop on Adaptive Resource Management (WARM
+                  2010)},
+  year = 2010,
+  address = {Stockholm, Sweden},
+  month = apr,
+  abstract = {We present a novel technique for designing discrete
+                  control loops for adaptive systems.  They
+                  automatically enforce safety properties on the
+                  interactions between tasks, concerning, e.g., mutual
+                  exclusions, forbidden or imposed sequences.  We use
+                  a new reactive programming language, with a
+                  mechanism of behavioural contracts.  Its compilation
+                  involves discrete controller synthesis, which
+                  automatically generates the correct appropriate
+                  adaptation controllers.  We apply our approach to
+                  the problem of adaptive ressource management,
+                  illustrated by the example of a HTTP server.},
+  pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/warm10.pdf}
+}
+
+ +
+@inproceedings{delaval10:_react_model_based_contr_of,
+  author = {Delaval, Gwena\"{e}l and Rutten, \'{E}ric},
+  title = {Reactive model-based control of reconfiguration in
+                  the Fractal component-based model},
+  booktitle = {13th International Symposium on Component Based
+                  Software Engineering (CBSE 2010)},
+  year = 2010,
+  address = {Prague, Czech Republic},
+  month = jun,
+  abstract = {We present a technique for designing reconfiguration
+                  controllers in the Fractal component-based
+                  framework.  We obtain discrete control loops that
+                  automatically enforce safety properties on the
+                  interactions between components, concerning, e.g.,
+                  mutual exclusions, forbidden or imposed sequences.
+                  We use a reactive programming language, with a new
+                  mechanism of behavioural contracts.  Its compilation
+                  involves discrete controller synthesis, which
+                  automatically generates the correct adaptation
+                  controllers.  We apply our approach to the problem
+                  of adaptive ressource management, illustrated by the
+                  example of a HTTP server.},
+  pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/delaval-cbse10.pdf}
+}
+
+ +
+@inproceedings{gcm10:_qos_energ_coord_dcs,
+  author = {{De Palma}, No\"{e}l and Delaval, Gwena\"{e}l and
+                  Rutten, \'{E}ric},
+  title = {QoS and Energy Management Coordination using
+                  Discrete Controller Synthesis},
+  booktitle = {1st International Workshop on Green Computing
+                  Middleware (GCM'2010)},
+  year = 2010,
+  address = {Bangalore, India},
+  month = nov,
+  abstract = {Green computing is nowadays a major challenge for
+                  most IT organizations.  Administrators have to
+                  manage the trade-off between system performances and
+                  energy saving goals. Autonomic computing is a
+                  promising approach to control the QoS and the energy
+                  consumed by a system.  This paper precisely
+                  investigates the use of synchronous programming and
+                  discrete controller synthesis to automate the
+                  generation of a controller that enforces the
+                  required coordination between QoS and energy
+                  managers.  We illustrate our approach by describing
+                  the coordination between a simple admission
+                  controller and an energy controller.},
+  pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/delaval-gcm10.pdf}
+}
+
+ +
+@inproceedings{aboubekr11:_autom,
+  author = {S. Aboubekr and G. Delaval and R.  Pissard-Gibollet
+                  and {\'E}. Rutten and D. Simon},
+  title = {Automatic generation of discrete handlers of
+                  real-time continuous control tasks},
+  booktitle = {Proc.  18th World Congress of the International
+                  Federation of Automatic Control (IFAC)},
+  address = {Milano, Italy},
+  month = aug,
+  year = 2011,
+  abstract = {We present a novel technique for designing discrete,
+                  logical control loops, on top of continuous control
+                  tasks, ensuring logical safety properties of the
+                  tasks sequencings and mode changes.  We define this
+                  new handler on top of the real-time executives built
+                  with the Orccad design environment for control
+                  systems, which is applied, e.g. to robotics and
+                  real-time networked control.  It features structures
+                  of control tasks, each equipped with a local
+                  automaton, used for the reactive, event-based
+                  management of its activity and modes.  The
+                  additional discrete handler manages the interactions
+                  between tasks, concerning, e.g., mutual exclusions,
+                  forbidden or imposed sequences.  We use a new
+                  reactive programming language, with constructs for
+                  finite-state machines and data-flow nodes, and a
+                  mechanism of behavioral contracts, which involves
+                  discrete controller synthesis.  The result is a
+                  discrete control loop, on top of the continuous
+                  control loops, all integrated in a coherent
+                  real-time architecture.  Our approach is illustrated
+                  and validated experimentally with the case study of
+                  a robot arm.  },
+  pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/bzrccad.pdf}
+}
+
+ +
+@inproceedings{boyer11:_discr_contr_auton_system,
+  author = {Fabienne Boyer and No\"{e}l De Palma and Gwena\"{e}l
+                  Delaval and Olivier Gruber and Eric Rutten},
+  title = {Case Studies in Discrete Control for Autonomic
+                  System Administration },
+  booktitle = {Sixth International Workshop on Feedback Control
+                  Implementation and Design in Computing Systems and
+                  Networks (FeBID 2011)},
+  year = 2011,
+  address = {Karlsruhe, Germany},
+  month = jun,
+  abstract = {This paper presents examples of autonomic system
+                  administration issues that can be addressed and
+                  solved as discrete control problems. This shows
+                  evidence of the relevance of control techniques for
+                  the discrete aspects of closed-loop control of
+                  computing systems. The model-based control of
+                  adaptive and reconfigurable systems is considered via
+                  a reactive programming language, based on discrete
+                  controller synthesis (DCS) techniques. We identify
+                  control problems in autonomic systems belonging to
+                  the class of logical, discrete systems, and
+                  illustrate how to solve them using DCS.},
+  pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/febid2011.pdf}
+}
+
+ +
+@techreport{bouhadiba11:_sdc_fract,
+  hal_id = {inria-00596883},
+  url = {http://hal.inria.fr/inria-00596883/en/},
+  title = {Synchronous Control of Reconfiguration in Fractal
+                  Component-based Systems -- a Case Study},
+  author = {Bouhadiba, Tayeb and Sabah, Quentin and Delaval,
+                  Gwena{\"e}l and Rutten, \'Eric},
+  abstract = {{In the context of component-based embedded systems,
+                  the management of dynamic reconfiguration in
+                  adaptive systems is an increasingly important
+                  feature. The Fractal component-based framework, and
+                  its industrial instantiation MIND, provide for
+                  support for control operations in the lifecycle of
+                  components. Nevertheless, the use of complex and
+                  integrated architectures make the management of this
+                  reconfiguration operations difficult to handle by
+                  programmers. To address this issue, we propose to
+                  use Synchronous languages, which are a complete
+                  approach to the design of reactive systems, based on
+                  behavior models in the form of transition
+                  systems. Furthermore, the design of closed-loop
+                  reactive managers of reconfigurations can benefit
+                  from formal tools like Discrete Controller
+                  Synthesis. In this paper we describe an approach to
+                  concretely integrate synchronous reconfiguration
+                  managers in Fractal component-based systems. We
+                  describe how to model the state space of the control
+                  problem, and how to specify the control
+                  objectives. We describe the implementation of the
+                  resulting manager with the Fractal/Cecilia
+                  programming environment, taking advantage of the
+                  Comete distributed middleware. We illustrate and
+                  validate it with the case study of the Comanche HTTP
+                  server on a multi-core execution platform.}},
+  keywords = {Component-based systems, synchronous programming,
+                  reconfigurable systems, discrete controller
+                  synthesis.},
+  language = {Anglais},
+  affiliation = {SARDES - INRIA Grenoble Rh{\^o}ne-Alpes / LIG
+                  Laboratoire d'Informatique de Grenoble - INRIA -
+                  Institut National Polytechnique de Grenoble - INPG -
+                  Universit\'e Joseph Fourier - Grenoble I -
+                  Universit\'e Pierre Mend\`es-France - Grenoble II -
+                  CNRS : UMR5217},
+  pages = 31,
+  type = {Rapport de recherche},
+  institution = {INRIA},
+  number = {RR-7631},
+  year = 2011,
+  month = may,
+  pdf = {http://hal.inria.fr/inria-00596883/PDF/RR-7631.pdf}
+}
+
+ +
+@inproceedings{gamatie09:_case_study_contr_synth_for,
+  author = {Gamati\'e, Abdoulaye and Yu, Huafeng and Delaval,
+                  Gwena\"el and Rutten, \'Eric},
+  title = {A Case Study on Controller Synthesis for
+                  Data-Intensive Embedded Systems},
+  booktitle = {Proceedings of the 6th IEEE International Conference
+                  on Embedded Software and Systems (ICESS'2009)},
+  year = 2009,
+  address = {HangZhou, Zhejiang, China},
+  month = may,
+  abstract = {This paper presents an approach for the safe design
+                  of data-intensive embedded systems. A multimedia
+                  application module of last generation cellular
+                  phones is considered as a case study. The OMG
+                  standard profile MARTE is used to adequately model
+                  the application. The resulting model is then
+                  transformed into a synchronous program from which a
+                  controller is synthesized by using a formal
+                  technique, in order to enforce the safe behavior of
+                  the modeled application while meeting quality of
+                  service requirements. The whole study is carried out
+                  in a design framework, GASPARD, dedicated to
+                  high-performance embedded systems.}
+}
+
+ +

This file was generated by +bibtex2html 1.95.

diff --git a/web/publis.bib b/web/publis.bib new file mode 100644 index 0000000..429d06a --- /dev/null +++ b/web/publis.bib @@ -0,0 +1,395 @@ +@inproceedings{Gerard:2012, + Author = {L{\'e}onard G{\'e}rard and Adrien Guatto and + C{\'e}dric Pasteur and Marc Pouzet}, + Title = {A Modular Memory Optimization for Synchronous + Data-Flow Languages}, + Booktitle = {Proc. of the ACM International Conference on + Languages, Compilers, Tools and Theory for Embedded + Systems (LCTES'12)}, + Date-Added = {2012-07-04 16:11:46 +0200}, + Date-Modified= {2012-07-04 16:15:18 +0200}, + Keywords = {synchronous programming; type system}, + Year = 2012, + month = jun, + address = {Beijing, China}, + abstract = {The generation of efficient sequential code for + synchronous data-flow languages raises two + intertwined issues: control and memory + optimization. While the former has been extensively + studied, for instance in the compilation of LUSTRE + and SIGNAL, the latter has only been addressed in a + restricted manner. Yet, memory optimization becomes + a pressing issue when arrays are added to such + languages. This article presents a two-level + solution to the memory optimization problem. It + combines a compile-time optimization algorithm, + reminiscent of register allocation, paired with + language annotations on the source given by the + designer. Annotations express in-place modifications + and control where allocation is performed. Moreover, + they allow external functions performing in-place + modifications to be safely imported. Soundness of + annotations is guaranteed by a semilinear type + system and additional scheduling constraints. A key + feature is that annotations for well-typed programs + do not change the semantics of the language: + removing them may lead to less efficient code but + will not alter the semantics. The method has been + implemented in a new compiler for a LUSTRE-like + synchronous language extended with hierarchical + automata and arrays. Experiments show that the + proposed approach removes most of the unnecessary + array copies, resulting in faster code that uses + less memory. } +} + + +@misc{rr-nemo, + author = {Delaval, G. and Rutten, E.}, + title = {A Domain-Specific Language for Multi-task Systems, + applying Discrete Controller Synthesis}, + howpublished = {Rapport de recherche INRIA nº5690}, + month = sep, + year = 2005, + pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.pdf}, + ps = {http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.ps.gz} +} + +@inproceedings{delaval06:_domain_specif_languag_multi_system, + author = {Delaval, G. and Rutten, E.}, + title = {A Domain-specific Language for Task Handlers + Generation, Applying Discrete Controller Synthesis}, + booktitle = {SAC '06: Proceedings of the 2006 ACM Symposium on + Applied computing}, + year = 2006, + address = {Dijon, France}, + month = apr, + isbn = {1-59593-108-2}, + pages = {901--905}, + doi = {10.1145/1141277.1141487}, + publisher = {ACM Press}, + pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.pdf}, + ps = {http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.ps.gz} +} + +@article{delaval07:_nemo_jes, + author = {Delaval, Gwenaël and Rutten, Éric }, + title = {A Domain-Specific Language for Multitask Systems, + Applying Discrete Controller Synthesis}, + journal = {EURASIP Journal on Embedded Systems}, + year = 2007, + volume = 2007, + pages = {Article ID 84192, 17 pages}, + doi = {10.1155/2007/84192}, + abstract = {We propose a simple programming language, called + Nemo, specific to the domain of multi-task real-time + control systems, such as in robotic, automotive or + avionics systems. It can be used to specify a set of + resources with usage constraints, a set of tasks + that consume them according to various modes, and + applications sequencing the tasks. We obtain + automatically an application-specific task handler + that correctly manages the constraints (if there + exists one), through a compilation-like process + including a phase of discrete controller + synthesis. This way, this formal technique + contributes to the safety of the designed systems, + while being encapsulated in a tool that makes it + useable by application experts. Our approach is + based on the synchronous modelling techniques, + languages and tools.}, + keywords = {real-time systems, safe design, domain-specific + language, discrete control synthesis, synchronous + programming}, + pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/nemo-jes2007.pdf} +} + +@inproceedings{delaval10:_contracts_mod_dcs, + author = {Delaval, Gwena\"{e}l and Marchand, Herv\'{e} and + Rutten, \'{E}ric}, + title = {Contracts for Modular Discrete Controller Synthesis}, + booktitle = {ACM International Conference on Languages, + Compilers, and Tools for Embedded Systems (LCTES + 2010)}, + year = 2010, + address = {Stockholm, Sweden}, + month = apr, + abstract = {We describe the extension of a reactive programming + language with a behavioral contract construct. It + is dedicated to the programming of reactive control + of applications in embedded systems, and involves + principles of the supervisory control of discrete + event systems. Our contribution is in a language + approach where modular discrete controller synthesis + (DCS) is integrated, and it is concretized in the + encapsulation of DCS into a compilation process. + From transition system specifications of possible + behaviors, DCS automatically produces controllers + that make the controlled system satisfy the property + given as objective. Our language features and + compiling technique provide + correctness-by-construction in that sense, and + enhance reliability and verifiability. Our + application domain is adaptive and reconfigurable + systems: closed-loop adaptation mechanisms enable + flexible execution of functionalities w.r.t. + changing resource and environment conditions. Our + language can serve programming such adaption + controllers. This paper particularly describes the + compilation of the language. We present a method + for the modular application of discrete controller + synthesis on synchronous programs, and its + integration in the BZR language. We consider + structured programs, as a composition of nodes, and + first apply DCS on particular nodes of the program, + in order to reduce the complexity of the controller + computation; then, we allow the abstraction of parts + of the program for this computation; and finally, we + show how to recompose the different controllers + computed from different abstractions for their + correct co-execution with the initial program. Our + work is illustrated with examples, and we present + quantitative results about its implementation.}, + pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/lctes2010.pdf} +} + +@inproceedings{aboubekr09:_prog_lg_adapt_ctr, + author = {Aboubekr, Soufyane and Delaval, Gwena\"{e}l and + Rutten, \'{E}ric}, + title = {A Programming Language for Adaptation Control: Case + Study}, + booktitle = {2nd Workshop on Adaptive and Reconfigurable Embedded + Systems (APRES 2009). ACM SIGBED Review}, + year = 2009, + volume = 6, + number = 3, + address = {Grenoble, France}, + month = oct, + abstract = {We illustrate an approach for the safe design of + adaptive embedded systems. It applies the BZR + programming language, featuring a special new + contract mechanism: its compilation involves + automatical discrete controller synthesis. The + contribution of this paper is to illustrate how it + can be used to enforce the correct adaptation + control of the application, meeting execution + constraints, with the case study of a video module + of a multimedia cellular phone.}, + pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/apres09.pdf} +} + +@inproceedings{delaval10:_warm, + author = {Delaval, Gwena\"{e}l and Rutten, \'{E}ric}, + title = {A Language-Based Approach to the Discrete Control of + Adaptive Resource Management}, + booktitle = {Workshop on Adaptive Resource Management (WARM + 2010)}, + year = 2010, + address = {Stockholm, Sweden}, + month = apr, + abstract = {We present a novel technique for designing discrete + control loops for adaptive systems. They + automatically enforce safety properties on the + interactions between tasks, concerning, e.g., mutual + exclusions, forbidden or imposed sequences. We use + a new reactive programming language, with a + mechanism of behavioural contracts. Its compilation + involves discrete controller synthesis, which + automatically generates the correct appropriate + adaptation controllers. We apply our approach to + the problem of adaptive ressource management, + illustrated by the example of a HTTP server.}, + pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/warm10.pdf} +} + +@inproceedings{delaval10:_react_model_based_contr_of, + author = {Delaval, Gwena\"{e}l and Rutten, \'{E}ric}, + title = {Reactive model-based control of reconfiguration in + the Fractal component-based model}, + booktitle = {13th International Symposium on Component Based + Software Engineering (CBSE 2010)}, + year = 2010, + address = {Prague, Czech Republic}, + month = jun, + abstract = {We present a technique for designing reconfiguration + controllers in the Fractal component-based + framework. We obtain discrete control loops that + automatically enforce safety properties on the + interactions between components, concerning, e.g., + mutual exclusions, forbidden or imposed sequences. + We use a reactive programming language, with a new + mechanism of behavioural contracts. Its compilation + involves discrete controller synthesis, which + automatically generates the correct adaptation + controllers. We apply our approach to the problem + of adaptive ressource management, illustrated by the + example of a HTTP server.}, + pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/delaval-cbse10.pdf} +} + +@inproceedings{gcm10:_qos_energ_coord_dcs, + author = {{De Palma}, No\"{e}l and Delaval, Gwena\"{e}l and + Rutten, \'{E}ric}, + title = {QoS and Energy Management Coordination using + Discrete Controller Synthesis}, + booktitle = {1st International Workshop on Green Computing + Middleware (GCM'2010)}, + year = 2010, + address = {Bangalore, India}, + month = nov, + abstract = {Green computing is nowadays a major challenge for + most IT organizations. Administrators have to + manage the trade-off between system performances and + energy saving goals. Autonomic computing is a + promising approach to control the QoS and the energy + consumed by a system. This paper precisely + investigates the use of synchronous programming and + discrete controller synthesis to automate the + generation of a controller that enforces the + required coordination between QoS and energy + managers. We illustrate our approach by describing + the coordination between a simple admission + controller and an energy controller.}, + pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/delaval-gcm10.pdf} +} + +@inproceedings{aboubekr11:_autom, + author = {S. Aboubekr and G. Delaval and R. Pissard-Gibollet + and {\'E}. Rutten and D. Simon}, + title = {Automatic generation of discrete handlers of + real-time continuous control tasks}, + booktitle = {Proc. 18th World Congress of the International + Federation of Automatic Control (IFAC)}, + address = {Milano, Italy}, + month = aug, + year = 2011, + abstract = {We present a novel technique for designing discrete, + logical control loops, on top of continuous control + tasks, ensuring logical safety properties of the + tasks sequencings and mode changes. We define this + new handler on top of the real-time executives built + with the Orccad design environment for control + systems, which is applied, e.g. to robotics and + real-time networked control. It features structures + of control tasks, each equipped with a local + automaton, used for the reactive, event-based + management of its activity and modes. The + additional discrete handler manages the interactions + between tasks, concerning, e.g., mutual exclusions, + forbidden or imposed sequences. We use a new + reactive programming language, with constructs for + finite-state machines and data-flow nodes, and a + mechanism of behavioral contracts, which involves + discrete controller synthesis. The result is a + discrete control loop, on top of the continuous + control loops, all integrated in a coherent + real-time architecture. Our approach is illustrated + and validated experimentally with the case study of + a robot arm. }, + pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/bzrccad.pdf} +} + +@inproceedings{boyer11:_discr_contr_auton_system, + author = {Fabienne Boyer and No\"{e}l De Palma and Gwena\"{e}l + Delaval and Olivier Gruber and Eric Rutten}, + title = {Case Studies in Discrete Control for Autonomic + System Administration }, + booktitle = {Sixth International Workshop on Feedback Control + Implementation and Design in Computing Systems and + Networks (FeBID 2011)}, + year = 2011, + address = {Karlsruhe, Germany}, + month = jun, + abstract = {This paper presents examples of autonomic system + administration issues that can be addressed and + solved as discrete control problems. This shows + evidence of the relevance of control techniques for + the discrete aspects of closed-loop control of + computing systems. The model-based control of + adaptive and reconfigurable systems is considered via + a reactive programming language, based on discrete + controller synthesis (DCS) techniques. We identify + control problems in autonomic systems belonging to + the class of logical, discrete systems, and + illustrate how to solve them using DCS.}, + pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/febid2011.pdf} +} + +@techreport{bouhadiba11:_sdc_fract, + hal_id = {inria-00596883}, + url = {http://hal.inria.fr/inria-00596883/en/}, + title = {Synchronous Control of Reconfiguration in Fractal + Component-based Systems -- a Case Study}, + author = {Bouhadiba, Tayeb and Sabah, Quentin and Delaval, + Gwena{\"e}l and Rutten, \'Eric}, + abstract = {{In the context of component-based embedded systems, + the management of dynamic reconfiguration in + adaptive systems is an increasingly important + feature. The Fractal component-based framework, and + its industrial instantiation MIND, provide for + support for control operations in the lifecycle of + components. Nevertheless, the use of complex and + integrated architectures make the management of this + reconfiguration operations difficult to handle by + programmers. To address this issue, we propose to + use Synchronous languages, which are a complete + approach to the design of reactive systems, based on + behavior models in the form of transition + systems. Furthermore, the design of closed-loop + reactive managers of reconfigurations can benefit + from formal tools like Discrete Controller + Synthesis. In this paper we describe an approach to + concretely integrate synchronous reconfiguration + managers in Fractal component-based systems. We + describe how to model the state space of the control + problem, and how to specify the control + objectives. We describe the implementation of the + resulting manager with the Fractal/Cecilia + programming environment, taking advantage of the + Comete distributed middleware. We illustrate and + validate it with the case study of the Comanche HTTP + server on a multi-core execution platform.}}, + keywords = {Component-based systems, synchronous programming, + reconfigurable systems, discrete controller + synthesis.}, + language = {Anglais}, + affiliation = {SARDES - INRIA Grenoble Rh{\^o}ne-Alpes / LIG + Laboratoire d'Informatique de Grenoble - INRIA - + Institut National Polytechnique de Grenoble - INPG - + Universit\'e Joseph Fourier - Grenoble I - + Universit\'e Pierre Mend\`es-France - Grenoble II - + CNRS : UMR5217}, + pages = 31, + type = {Rapport de recherche}, + institution = {INRIA}, + number = {RR-7631}, + year = 2011, + month = may, + pdf = {http://hal.inria.fr/inria-00596883/PDF/RR-7631.pdf} +} + +@inproceedings{gamatie09:_case_study_contr_synth_for, + author = {Gamati\'e, Abdoulaye and Yu, Huafeng and Delaval, + Gwena\"el and Rutten, \'Eric}, + title = {A Case Study on Controller Synthesis for + Data-Intensive Embedded Systems}, + booktitle = {Proceedings of the 6th IEEE International Conference + on Embedded Software and Systems (ICESS'2009)}, + year = 2009, + address = {HangZhou, Zhejiang, China}, + month = may, + abstract = {This paper presents an approach for the safe design + of data-intensive embedded systems. A multimedia + application module of last generation cellular + phones is considered as a case study. The OMG + standard profile MARTE is used to adequately model + the application. The resulting model is then + transformed into a synchronous program from which a + controller is synthesized by using a formal + technique, in order to enforce the safe behavior of + the modeled application while meeting quality of + service requirements. The whole study is carried out + in a design framework, GASPARD, dedicated to + high-performance embedded systems.} +} + diff --git a/web/rsyncweb b/web/rsyncweb new file mode 100755 index 0000000..2f0a2b4 --- /dev/null +++ b/web/rsyncweb @@ -0,0 +1 @@ +rsync -vz bib.php header.php index.php publications_bib.html publications.html style.css toc.php try.php Yuyuan_ventana_heptagonal.JPG pub scm.gforge.inria.fr:/home/groups/heptagon/htdocs diff --git a/web/style.css b/web/style.css new file mode 100644 index 0000000..aa23148 --- /dev/null +++ b/web/style.css @@ -0,0 +1,120 @@ +body { + background-color: #FFFFFF; + color: #444444; + font-family: Helvetica,Arial,Verdana; + font-size: 100%; + margin:25px 50px; + text-align: justify; +} + +a { + color: #8A0000; + font-weight: bold; + text-decoration: none; +} +a:hover { + color: #E00000; +} +ol, ul { +} +li { + line-height: 20px; + text-align: left; +} + +#logo { + float:left; +} + +#header { + margin: 0 auto 40px; + width: 750px; +} + +#header h1 { + border-bottom: 2px solid #8A0000; + color: #8A0000; + font-family: "Century Gothic",Helvetica,"Arial Narrow",Arial,sans-serif; + font-size: 2em; + font-weight: normal; + margin: 0 0 10px; + padding: 30px 0 0; + text-align: left; +} + +#header h2 { + color: #8A0000; + font-family: "Century Gothic",Helvetica,"Arial Narrow",Arial,sans-serif; + font-size: 1.4em; + font-weight: normal; + margin: 0; + padding: 0; + text-align: left; +} + +#toc { + float:left; +} + +#toc h2 { + border-bottom: 1px solid #8A0000; + color: #8A0000; + font-family: "Century Gothic",Helvetica,"Arial Narrow",Arial,sans-serif; + font-size: 1.5em; + font-weight: normal; +} + +#toc ul { + list-style-type: none; +} + +#content { + margin: 0 auto; + text-align: justify; + width: 750px; +} + + +#content h2 { + border-bottom: 1px solid #8A0000; + color: #8A0000; + font-family: "Century Gothic",Helvetica,"Arial Narrow",Arial,sans-serif; + font-size: 1.5em; + font-weight: normal; +} +#content h3 { + color: #8A0000; + font-size: 1.2em; + font-weight: normal; + padding: 0; +} +#content p { +} +table { + background-color: #FFFFFF; +} +table td { + border-collapse: collapse; + padding: 5px; +} +#rightcontent { + float: right; + font-size: 95%; + text-align: left; + width: 160px; +} +#rightcontent h1 { + border-bottom: 1px solid #EEEEEE; + color: #905F40; + font-family: "Century Gothic",Helvetica,"Arial Narrow",Arial,sans-serif; + font-size: 20px; + font-weight: normal; + text-align: right; + text-transform: uppercase; +} +#rightcontent p { + line-height: 20px; +} +#rightcontent a { + font-weight: normal; +} \ No newline at end of file diff --git a/web/toc.php b/web/toc.php new file mode 100644 index 0000000..55e9f49 --- /dev/null +++ b/web/toc.php @@ -0,0 +1,15 @@ +
+ + Yuyuan ventana heptagonal + + + +
diff --git a/web/try.php b/web/try.php new file mode 100644 index 0000000..8399f8f --- /dev/null +++ b/web/try.php @@ -0,0 +1,135 @@ + + + + + + + Heptagon - try it ! + + + + + + +
+

Try Heptagon !

+ +
+ + Heptagon program (with "main" node): + +
+
+ +
+
+ +Compilation...

'; + flush(); + ob_flush(); + // Temporary directory creation + $workdir = tempdir("heptagon-"); + // Copy Heptagon program to working directory + $heptfile = $workdir . "/main.ept"; + $isfile = move_uploaded_file($_FILES['heptfile']['tmp_name'], $heptfile); + if (! $isfile) { + $hepthandle = fopen($heptfile,'a+'); + fputs($hepthandle,"(*@ java\npackage main;\n@*)\n"); + fputs($hepthandle,$_POST['heptprog']); + fclose($hepthandle); + }; + // Go to working directory + chdir($workdir); + // Compile main file + echo '
';
+  $last_line = system(HEC
+                      . ' -stdlib '
+                      . HEPTLIB
+                      . ' -target java -i main.ept 2> main.out',$res);
+  echo '
'; + flush(); + if ($res == 0) { + // Make interface Java class + mkdir('main_interface'); + echo ''; + echo '
';
+    // Java compilation
+    system('javac '
+           . '-classpath /home_nas/gdelaval/public_html/bzr/heptagon_applet.jar:.'
+           . ' main_interface/MainInterface.java 2>&1');
+    //system('ls -l *');
+    echo '
'; + // Make jar file + $tempfile=tempnam('/home_nas/gdelaval/public_html/bzr/jar','main-'); + system('jar cf ' . $tempfile . '.jar main/*.class main_interface/*.class 2>&1'); + // $_SESSION['jarfile'] = $tempfile; + // Generate applet HTML code + ?> +
+ + width="800" + height= + alt="Simulation loading..."> + +
+'; + passthru('cat main.out'); + echo ''; + echo '

Compilation failed !

'; + } + system("rm -fr " . $workdir. "/*"); + // Get the compilation result + // Working directory suppression + rmdir($workdir); +} +?> + + +