Academic Journal
Embedding an interpreted language using higher-order functions and types.
| Τίτλος: | Embedding an interpreted language using higher-order functions and types. |
|---|---|
| Συγγραφείς: | RAMSEY, NORMAN |
| Πηγή: | Journal of Functional Programming; Nov2011, Vol. 21 Issue 6, p585-615, 31p |
| Θεματικοί όροι: | Embedded computer systems, Programming languages, Application software, Software engineering, Mathematical functions software, Embeddings (Mathematics), Lua (Computer program language) |
| Περίληψη: | Using an embedded, interpreted language to control a complicated application can have significant software-engineering benefits. But existing interpreters are designed for embedding into C code. To embed an interpreter into a different language requires an API suited to that language. This paper presents Lua-ML, a new API that is suited to languages that provide higher-order functions and types. The API exploits higher-order functions and types to reduce the amount of glue code needed to use an embedded interpreter. Where embedding in C requires a special-purpose “glue function” for every function to be embedded, embedding in Lua-ML requires only a description of each function's type. Lua-ML also makes it easy to define a Lua function whose behavior depends on the number and types of its arguments. [ABSTRACT FROM AUTHOR] |
| Copyright of Journal of Functional Programming is the property of Cambridge University Press and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.) | |
| Βάση Δεδομένων: | Complementary Index |
| FullText | Links: – Type: other Text: Availability: 0 |
|---|---|
| Header | DbId: edb DbLabel: Complementary Index An: 67486043 RelevancyScore: 834 AccessLevel: 6 PubType: Academic Journal PubTypeId: academicJournal PreciseRelevancyScore: 834.066711425781 |
| IllustrationInfo | |
| Items | – Name: Title Label: Title Group: Ti Data: Embedding an interpreted language using higher-order functions and types. – Name: Author Label: Authors Group: Au Data: <searchLink fieldCode="AR" term="%22RAMSEY%2C+NORMAN%22">RAMSEY, NORMAN</searchLink> – Name: TitleSource Label: Source Group: Src Data: Journal of Functional Programming; Nov2011, Vol. 21 Issue 6, p585-615, 31p – Name: Subject Label: Subject Terms Group: Su Data: <searchLink fieldCode="DE" term="%22Embedded+computer+systems%22">Embedded computer systems</searchLink><br /><searchLink fieldCode="DE" term="%22Programming+languages%22">Programming languages</searchLink><br /><searchLink fieldCode="DE" term="%22Application+software%22">Application software</searchLink><br /><searchLink fieldCode="DE" term="%22Software+engineering%22">Software engineering</searchLink><br /><searchLink fieldCode="DE" term="%22Mathematical+functions+software%22">Mathematical functions software</searchLink><br /><searchLink fieldCode="DE" term="%22Embeddings+%28Mathematics%29%22">Embeddings (Mathematics)</searchLink><br /><searchLink fieldCode="DE" term="%22Lua+%28Computer+program+language%29%22">Lua (Computer program language)</searchLink> – Name: Abstract Label: Abstract Group: Ab Data: Using an embedded, interpreted language to control a complicated application can have significant software-engineering benefits. But existing interpreters are designed for embedding into C code. To embed an interpreter into a different language requires an API suited to that language. This paper presents Lua-ML, a new API that is suited to languages that provide higher-order functions and types. The API exploits higher-order functions and types to reduce the amount of glue code needed to use an embedded interpreter. Where embedding in C requires a special-purpose “glue function” for every function to be embedded, embedding in Lua-ML requires only a description of each function's type. Lua-ML also makes it easy to define a Lua function whose behavior depends on the number and types of its arguments. [ABSTRACT FROM AUTHOR] – Name: Abstract Label: Group: Ab Data: <i>Copyright of Journal of Functional Programming is the property of Cambridge University Press and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.) |
| PLink | https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edb&AN=67486043 |
| RecordInfo | BibRecord: BibEntity: Identifiers: – Type: doi Value: 10.1017/S0956796811000219 Languages: – Code: eng Text: English PhysicalDescription: Pagination: PageCount: 31 StartPage: 585 Subjects: – SubjectFull: Embedded computer systems Type: general – SubjectFull: Programming languages Type: general – SubjectFull: Application software Type: general – SubjectFull: Software engineering Type: general – SubjectFull: Mathematical functions software Type: general – SubjectFull: Embeddings (Mathematics) Type: general – SubjectFull: Lua (Computer program language) Type: general Titles: – TitleFull: Embedding an interpreted language using higher-order functions and types. Type: main BibRelationships: HasContributorRelationships: – PersonEntity: Name: NameFull: RAMSEY, NORMAN IsPartOfRelationships: – BibEntity: Dates: – D: 01 M: 11 Text: Nov2011 Type: published Y: 2011 Identifiers: – Type: issn-print Value: 09567968 Numbering: – Type: volume Value: 21 – Type: issue Value: 6 Titles: – TitleFull: Journal of Functional Programming Type: main |
| ResultId | 1 |