{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,30]],"date-time":"2026-03-30T02:28:05Z","timestamp":1774837685788,"version":"3.50.1"},"reference-count":29,"publisher":"Springer Science and Business Media LLC","issue":"3","license":[{"start":{"date-parts":[[2007,5,1]],"date-time":"2007-05-01T00:00:00Z","timestamp":1177977600000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["New Gener. Comput."],"published-print":{"date-parts":[[2007,5]]},"DOI":"10.1007\/s00354-007-0020-x","type":"journal-article","created":{"date-parts":[[2008,3,8]],"date-time":"2008-03-08T07:56:37Z","timestamp":1204962997000},"page":"305-336","source":"Crossref","is-referenced-by-count":17,"title":["Implicitly Heterogeneous Multi-Stage Programming"],"prefix":"10.1007","volume":"25","author":[{"given":"Jason","family":"Eckhardt","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Roumen","family":"Kaiabachev","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Emir","family":"Pasalic","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Kedar","family":"Swadi","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Walid","family":"Taha","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2008,3,9]]},"reference":[{"key":"20_CR1","doi-asserted-by":"crossref","unstructured":"Calcagno, C., Moggi, E. and Taha, W., \u201cML-like inference for classifiers,\u201d in European Symposium on Programming (ESOP \u201804), LNCS 2986, Springer-Verlag, pp. 79-93, 2004.","DOI":"10.1007\/978-3-540-24725-8_7"},{"key":"20_CR2","volume-title":"Introduction to Algorithms","author":"T. Cormen","year":"1994","unstructured":"Cormen, T., Leiserson, C. and Rivest, R., Introduction to Algorithms, 14th ed. MIT Press and McGraw-Hill Book Company, 1994.","edition":"14"},{"key":"20_CR3","unstructured":"Dynamic Programming Benchmarks, available online from: http:\/\/www.metaocaml.org\/examples\/dp , 2005."},{"key":"20_CR4","doi-asserted-by":"crossref","unstructured":"Eckhardt, J., Kaiabachev, R., Pasalic, E., Swadi, K. and Taha, T., \u201cImplicitly heterogeneous multi-stage programming,\u201d in Proc. of the 4th ACM Intl. Conf. on Generative Programming and Component Engineering (GPCE \u201805), LNCS 3676, Springer-Verlag, pp. 275-292, 2005.","DOI":"10.1007\/11561347_19"},{"key":"20_CR5","doi-asserted-by":"crossref","unstructured":"Elliott, C., Finne, S. and de Moore, O., \u201cCompiling embedded languages,\u201d in 17), pp. 9-7, 2000.","DOI":"10.1007\/3-540-45350-4_5"},{"key":"20_CR6","unstructured":"Frigo, M and Johnson, S.G, \u201cFFTW: An adaptive software architecture for the FFT,\u201d in Proc. 1998 IEEE Intl. Conf. Acoustics Speech and Signal Processing vol. 3, IEEE, pp. 1381-1384, 1998."},{"key":"20_CR7","doi-asserted-by":"crossref","unstructured":"Gluck, R. and Jorgensen, J., \u201cMulti-level specialization (extended abstract)\u201d in Partial Evaluation: Practice and Theory (Hatcli, J., Torben, M. and Thiemann, P, ed.), LNCS 1706, Springer-Verlag, pp. 326-337, 1999.","DOI":"10.1007\/3-540-47018-2_13"},{"key":"20_CR8","unstructured":"Kamin, S., \u201cStandard ML as a meta-programming language,\u201d Technical Report, Univ. of Illinois Computer Science Dept, 1996, available at http:\/\/www-faculty.cs.uiuc.edu\/~kamin\/pubs ."},{"key":"20_CR9","doi-asserted-by":"crossref","unstructured":"Kamin, S.N., Callahan, M. and Clausen, L., \u201cLightweight and generative components I: Source-level components,\u201d in Proc. of the First Intl. Symposium on Generative and Component-Based Software Engineering (GCSE \u201999), LNCS 1799, Springer-Verlag, pp. 49-64, London, UK, 2000.","DOI":"10.1007\/3-540-40048-6_5"},{"key":"20_CR10","unstructured":"MetaOCaml: A compiled, type-safe multi-stage programming language, available online from http:\/\/www.metaocaml.org\/ , 2004."},{"key":"20_CR11","unstructured":"Neverov, G. and Roe, P., \u201cTowards a Fully-reflective Meta-programming Language,\u201d Twenty-Eighth Australasian Computer Science Conference (ACSC \u201805), Conferences in Research and Practice in Information Institute Technology Vol. 38, ACS, pp. 151-158, Newcastle, Australia, 2005."},{"key":"20_CR12","unstructured":"Oregon Graduate Institute Technical Reports, P.O. Box 91000, Portland, OR 97291-1000, USA, available online from ftp:\/\/cse.ogi.edu\/pub\/tech-reports\/README.html ."},{"key":"20_CR13","doi-asserted-by":"crossref","unstructured":"Pasalic, E., Taha, W. and Sheard, T., \u201cTagless staged interpreters for typed languages,\u201d in Proc. of the Intl Conf. on Functional Programming (ICFP \u201802), Pittsburgh, USA, ACM, pp. 218-229, October 2002.","DOI":"10.1145\/581478.581499"},{"key":"20_CR14","unstructured":"Stolpmann, G.. DL-ad-hoc dynamic loading for OCaml, available from http:\/\/www.ocaml-programming.de\/packages\/documentation\/dl ."},{"key":"20_CR15","doi-asserted-by":"crossref","unstructured":"Swadi, K., Taha, W., Kiselyov, O. and Pasalic, E., \u201cA monadic approach for avoiding code duplication when staging memoized functions,\u201d in Proc. of the ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation (PEPM \u201806), ACM Press, January 2006.","DOI":"10.1145\/1111542.1111570"},{"key":"20_CR16","unstructured":"Taha, W., Multi-Stage Programming: Its Theory and Applications, PhD thesis, Oregon Graduate Institute of Science and Technology, 1999, available from 12)."},{"key":"20_CR17","unstructured":"Semantics, Applications, and Implementation of Program Generation(Taha, W. (ed.)), LNCS 1924, Springer-Verlag, Montr\u00e9al, 2000."},{"key":"20_CR18","doi-asserted-by":"crossref","unstructured":"Taha, W., \u201cA sound reduction semantics for untyped CBN multi-stage computation. Or, the theory of MetaML is non-trivial,\u201d in Proc. of the Workshop on Partial Evaluation and Semantics-Based Program Manipulation (PEPM \u201800), Boston, ACM Press, pp. 34-43, 2000.","DOI":"10.1145\/328691.328697"},{"key":"20_CR19","doi-asserted-by":"crossref","unstructured":"Taha, W. and Nielsen, M.F., \u201cEnvironment classifiers,\u201d in Proc. of the Symposium on Principles of Programming Languages (POPL \u201803) New Orleans, Louisisana, ACM SIGPLAN vol. 38(1), pp. 26-37, 2003.","DOI":"10.1145\/604131.604134"},{"key":"20_CR20","doi-asserted-by":"crossref","unstructured":"Taha, W. and Sheard, T., \u201cMulti-stage programming with explicit annotations,\u201d in Proc. of Symposium on Partial Evaluation and Semantics Based Program manipulation, ACM SEGPLAN, pp. 203-217, 1997.","DOI":"10.1145\/258994.259019"},{"key":"20_CR21","doi-asserted-by":"crossref","unstructured":"Tarditi, D., Lee, P. and Acharya, A., \u201cNo assembly required: Compiling standard ML to C,\u201d ACM Letters on Programming Languages and Systems, 1(2), pp. 161-177, June 1992.","DOI":"10.1145\/151333.151343"},{"key":"20_CR22","doi-asserted-by":"crossref","unstructured":"Xi, H., Chen, C. and Chen, G., \u201cGuarded recursive datatype constructors,\u201d in Proc. of the 30th ACM SIGPLAN-SIGACT Symposium on Principles of programming languages (POPL \u201903), New Orleans, Louisiana, USA, ACM Press, pp. 224-235, 2003.","DOI":"10.1145\/604131.604150"},{"key":"20_CR23","unstructured":"Cheney, J. and Hinze, R., \u201cFirst-Class Phantom Types,\u201d Technical Report 1901, Cornell University, Mar. 2006."},{"key":"20_CR24","unstructured":"Sheard, T. and Pasalic, E., \u201cMeta-programming with built-in type equality,\u201d presented at the Fourth International Workshop on Logical Frameworks and Meta-Languages (LFM 4), Cork, Ireland, July, 2004."},{"key":"20_CR25","doi-asserted-by":"crossref","unstructured":"Jones, S.P., Vytiniotis, D., Weirich, S and Washburn, G., \u201cSimple unification-based type inference for GADTs,\u201d in ACM SIGPLAN Notices, vol. 41(9), pp. 50-61, Sep, 2006.","DOI":"10.1145\/1160074.1159811"},{"key":"20_CR26","doi-asserted-by":"crossref","unstructured":"Engler, D.R., \u201cVCODE : A Retargetable, Extensible, Very Fast Dynamic Code Generation System,\u201d in Proc. of the ACM SIGPLAN Conference on Programming Language Design and Implemantation, New York, ACM Press, pp. 160-170, May, 1996.","DOI":"10.1145\/249069.231411"},{"key":"20_CR27","doi-asserted-by":"crossref","unstructured":"Consel, C., and Noel, F., \u201cA General Approach for Run-Time Specialization and its Application to C,\u201d in Proc. of The 23 rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL \u201996), pp. 145-156, 1996.","DOI":"10.1145\/237721.237767"},{"key":"20_CR28","doi-asserted-by":"crossref","unstructured":"Grant, B., Mock, M., Philipose, M., Chambers, C. and Eggers, S.J., \u201cAnnotation-Directed Run-Time Specialization in C,\u201d in Proc. of the ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, Amsterdam, The Netherlands, pp. 163-178, Jun 1997,.","DOI":"10.1145\/258994.259016"},{"key":"20_CR29","doi-asserted-by":"crossref","unstructured":"Sperber, M. and Thiemann, P, \u201cTwo for the Price of One: Composing Partial Evaluation and Compilation\u201d in Proc. of the ACM SIGPLAN \u201897 Conference on Programming Language Design and Implementation (PLDI), Las Vegas, Nevada, pp. 215-225, Jun, 1997.","DOI":"10.1145\/258916.258935"}],"container-title":["New Generation Computing"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s00354-007-0020-x.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s00354-007-0020-x\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s00354-007-0020-x","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,28]],"date-time":"2019-05-28T10:27:49Z","timestamp":1559039269000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s00354-007-0020-x"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2007,5]]},"references-count":29,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2007,5]]}},"alternative-id":["20"],"URL":"https:\/\/doi.org\/10.1007\/s00354-007-0020-x","relation":{},"ISSN":["0288-3635","1882-7055"],"issn-type":[{"value":"0288-3635","type":"print"},{"value":"1882-7055","type":"electronic"}],"subject":[],"published":{"date-parts":[[2007,5]]}}}