| The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html. |
....primitives for programming processes which may migrate among nodes, and primitives which support fine grain control on dynamic linking of components and dynamic checking of security policies. Our calculus, called MetaKlaim, builds on Klaim [DFP98, KHP98, DFPV00] and MetaML [TS97, She99, TS00, MHP00] Klaim (Kernel Language for Agents Interaction and Mobility) is an experimental language, inspired by the Linda coordination model [Gel85, CG89] specifically designed to model and to program WAN applications by exploiting distribution and mobility. MetaML supports staging constructs for ....
....a process abstraction in any TS, but the abstraction becomes an active process only if (a process at) another (receiving) node input it. Higher order remote communication between nodes, like that provided by Klaim, is essential to implement this form of mobility. # From MetaML [TS97, She99, TS00, MHP00] we borrow the types for code with potentially unresolved links (represented by dynamic variables) the stratification into levels of declarations (level n 0 for dynamic variables) and evaluation (level n 0 for symbolic evaluation) and the following staging annotations: Brackets #e# ....
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
....language. 1 Introduction Staging a computation into multiple steps is a well known optimization technique used in algorithms, which exploits information available in early stages for generating code that will be executed in later stages. Multi stage programming languages, like MetaML (see [MHP00, Tah99, TS00, CMSar] provide constructs for expressing staging in a natural and concise manner, and must allow arbitrary interleaving of code generation and computation. Multi stage programming is particularly convenient for defining generative components, which take as input a specification of ....
....related work and some issues specific to MMML. A more general discussion of open issues in meta programming can be found in [She01] Comparison with MetaML, # # and # . The motivation for looking at the interactions between computational e#ects and run time code generation comes from MetaML [MHP00, Tah99, TS00, CMSar] We borrow code types from MetaML (and # # of [Dav96] but use annotated term constructors as in # of [Dav96] see also [GJ95] so that simplification and computation rules are level insensitive. Indeed, the term constructors of MMML can be given by an alternative BNF ....
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
....coexist. 1 Introduction Staging a computation into multiple steps is a well known optimization technique used in algorithms, which exploits information available in early stages for generating code that will be executed in later stages. Multi stage programming languages, like MetaML (see [MHP00, TS97a, Tah99, TS99, TS00, CMSar] provide constructs for expressing staging in a natural and concise manner, and must allow arbitrary interleaving of code generation and computation. Multi stage programming is particularly convenient for defining generative components, which take in input a ....
....## v, then exists e # s.t. e , E) ret(e # ) E) and v #n e # Proof By induction on the derivation of e ## v, and by exploiting Lemma 6.4 and 6.5. 11 7 Related Work We review related work and stress relations and di#erences with our work. Multi stage programming languages. MetaML [MHP00, TS97a, Tah99, TS99, TS00, CMSar] has provided the motivation for looking at the interactions between computational e#ects and run time code generation. Some of primitives of MMML (up and dn) are related to the cross stage persistence and run primitive of MetaML. MMML, like any monadic ....
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
....aspects of WAN programming. We have abstracted the basic feature of the problem in a calculus having primitives for programming agents which may migrate among sites, and primitives which support ne grain control of dynamic linking and security checks. Our calculus builds on Klaim [8] and MetaML [26,1]. Klaim (Kernel Language for Agents Interaction and Mobility) is an experimental language, inspired by the Linda coordination model [18,5] speci cally designed to model and to program WAN applications by exploiting mobility. MetaML supports most features of SML and meta programming constructs. ....
The MetaML Home Page (2000), provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
....The theoretical strengths of multi stage languages are expected to translate to bene ts such as clarity, soundness, and type safety, without interfering with the key goal of staging, which is to improve performance. The only publicly available implementation of a multi stage language is MetaML [50, 29]. The presence of MetaML has been invaluable for the conceptual development of multi stage languages and programming and as a research and educational tool. But MetaML can still be improved in a number of signi cant ways [40] For example, MetaML is interpreted, and so is not a convincing basis ....
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
....[MTBS99] to safely combining imperative and multi stage programming. One would expect that the addition of staging constructs to an imperative language should not prevent writing programs like those in normal imperative languages. In fact, a practical multi stage programming language like MetaML [Met00] is designed to be a conservative extension of a standard programming language, like SML, for good pragmatic reasons: to gain acceptance from an existing user community, and to con ne the challenges for new users to the staging constructs only. Unfortunately, MiniML BN ref fails to be a ....
....location of closed type hti c, which is beyond conventional analyses. Structure of the paper. Section 2 introduces MiniML ref , which is MiniML of [CDDK86] with ML style references. Section 3 introduces MiniML meta ref , which extends MiniML ref with The three staging constructs of MetaML [TS97,TBS98,Met00]: Brackets hei, Escape e and Run run e. A let binder (let c x = e 1 in e 2 ) for variables of closed type. A binder e, called Bullet, of all the free variables in a term e of closed type. We also prove type safety along the lines of [CMT00] Section 4 shows that MiniML meta ref is a ....
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
....[GJ91,GJ96,Mog98,Dav96] provide a mechanism for constructing and combining open code. Multi stage languages [TS97,TBS98,MTBS99,BMTS99,Tah99,Tah00] extend multi level languages with a construct for executing the code generated at run time. Multi stage programming can be illustrated using MetaML [TS97,Met00], an extension of Research partially supported by MURST and ESPRIT WG APPSEM. Postdoctoral Fellow funded by the Swedish Research Council for Engineering Sciences (TFR) grant number 221 96 403. datatype nat = z s of nat; natural numbers ) datatype nat fun p z x y = y ....
....well typed, in fact the (close) rule is not applicable to derive a: ref nat 0 ; x: nat 1 [hxi] hnati] 0 . Contributions and organisation of this paper This paper shows that multistage and imperative features can be combined safely in the same programming 1 The current release of MetaML [Met00] is a substantial language, supporting most features of SML and a host of novel meta programming constructs. In this release, safety is not guaranteed for meta programs that use Run or effects. We hope to incorporate the ideas presented in this paper into the next MetaML release. 2 The ....
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
....[GJ91,GJ96,Mog98,Dav96] provide a mechanism for constructing and combining open code. Multi stage languages [TS97,TBS98,MTBS99,BMTS99,Tah99,Tah00] extend multi level languages with a construct for executing the code generated at run time. Multi stage programming can be illustrated using MetaML [TS97,Met00], an extension of Research partially supported by MURST and ESPRIT WG APPSEM. Postdoctoral Fellow funded by the Swedish Research Council for Engineering Sciences (TFR) grant number 221 96 403. datatype nat = z s of nat; natural numbers ) datatype nat fun p z x y = y : 1.0) ....
....well typed, in fact the (close) rule is not applicable to derive a: ref nat 0 ; x: nat 1 [hxi] hnati] 0 . Contributions and organisation of this paper This paper shows that multistage and imperative features can be combined safely in the same programming 1 The current release of MetaML [Met00] is a substantial language, supporting most features of SML and a host of novel meta programming constructs. In this release, safety is not guaranteed for meta programs that use Run or e ects. We hope to incorporate the ideas presented in this paper into the next MetaML release. 2 The ....
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
No context found.
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
No context found.
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
No context found.
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
No context found.
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html. 50
No context found.
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
No context found.
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
No context found.
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
No context found.
The MetaML Home Page, 2000. Provides source code and documentation online at http://www.cse.ogi.edu/PacSoft/projects/metaml/index.html.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC