{"id":{"repo_id":"calpoly","oai_identifier":"oai:digitalcommons.calpoly.edu:theses-1524"},"canonical_url":"https://search.dev.ndltd.org/etd/calpoly/oai:digitalcommons.calpoly.edu:theses-1524","repository":{"repo_id":"calpoly","name":"Cal Poly","base_url":"https://digitalcommons.calpoly.edu/do/oai/"},"display":{"title":"Interoperation for Lazy and Eager Evaluation","abstract":"<p>Programmers forgo existing solutions to problems in other programming lan- guages where software interoperation proves too cumbersome; they remake so- lutions, rather than reuse them. To facilitate reuse, interoperation must resolve language incompatibilities transparently. To address part of this problem, we present a model of computation that resolves incompatible lazy and eager eval- uation strategies using dual notions of evaluation contexts and values to mirror the lazy evaluation strategy in the eager one. This method could be extended to resolve incompatible evaluation strategies for any pair of languages with common expressions.</p>","abstract_html":"&lt;p&gt;Programmers forgo existing solutions to problems in other programming lan- guages where software interoperation proves too cumbersome; they remake so- lutions, rather than reuse them. To facilitate reuse, interoperation must resolve language incompatibilities transparently. To address part of this problem, we present a model of computation that resolves incompatible lazy and eager eval- uation strategies using dual notions of evaluation contexts and values to mirror the lazy evaluation strategy in the eager one. This method could be extended to resolve incompatible evaluation strategies for any pair of languages with common expressions.&lt;/p&gt;","abstract_has_math":false,"creators":["Faught, William Jeffrey"],"institution":null,"degree_name":"MS in Computer Science","degree_level":null,"degree_discipline":"Computer Science","degree_department":null,"school":null,"contributors":["John Clements"],"advisors":[],"committee_chairs":[],"committee_members":[],"year":2011,"date_issued":"2011-05-01T07:00:00Z","date_published":"2011-05-01T07:00:00Z","updated_at":"2026-07-24T01:31:11Z","subjects":["lazy","eager","interoperation","evaluation","strategy","transparency","Computational Engineering"],"languages":[],"rights":[],"rights_urls":[],"identifier_entries":[{"key":"dc:identifier","label":"Identifier","values":["10.15368/theses.2011.51"],"render_values":[{"text":"10.15368/theses.2011.51","href":"https://doi.org/10.15368/theses.2011.51","code":true}]}]},"links":{"outbound_url":"https://digitalcommons.calpoly.edu/theses/496","outbound_label":"Repository record","outbound_source":"dc:identifier"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor","label":"Contributor","values":["John Clements"]},{"key":"dc:creator","label":"Author","values":["Faught, William Jeffrey"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date.available","label":"Dc Date Available","values":["2011-05-15T07:00:00Z"]},{"key":"thesis:degree_discipline","label":"Discipline","values":["Computer Science"]},{"key":"thesis:degree_name","label":"Degree Name","values":["MS in Computer Science"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["lazy","eager","interoperation","evaluation","strategy","transparency","Computational Engineering"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier","label":"Identifier","values":["https://digitalcommons.calpoly.edu/theses/496","10.15368/theses.2011.51"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description.abstract","label":"Abstract","values":["<p>Programmers forgo existing solutions to problems in other programming lan- guages where software interoperation proves too cumbersome; they remake so- lutions, rather than reuse them. To facilitate reuse, interoperation must resolve language incompatibilities transparently. To address part of this problem, we present a model of computation that resolves incompatible lazy and eager eval- uation strategies using dual notions of evaluation contexts and values to mirror the lazy evaluation strategy in the eager one. This method could be extended to resolve incompatible evaluation strategies for any pair of languages with common expressions.</p>"]},{"key":"dc:title","label":"Title","values":["Interoperation for Lazy and Eager Evaluation"]}]}],"canonical_facts":{"dc:contributor":["John Clements"],"dc:creator":["Faught, William Jeffrey"],"dc:date.available":["2011-05-15T07:00:00Z"],"dc:description.abstract":["<p>Programmers forgo existing solutions to problems in other programming lan- guages where software interoperation proves too cumbersome; they remake so- lutions, rather than reuse them. To facilitate reuse, interoperation must resolve language incompatibilities transparently. To address part of this problem, we present a model of computation that resolves incompatible lazy and eager eval- uation strategies using dual notions of evaluation contexts and values to mirror the lazy evaluation strategy in the eager one. This method could be extended to resolve incompatible evaluation strategies for any pair of languages with common expressions.</p>"],"dc:identifier":["https://digitalcommons.calpoly.edu/theses/496","10.15368/theses.2011.51"],"dc:subject":["lazy","eager","interoperation","evaluation","strategy","transparency","Computational Engineering"],"dc:title":["Interoperation for Lazy and Eager Evaluation"],"thesis:degree_discipline":["Computer Science"],"thesis:degree_name":["MS in Computer Science"]},"updated_at":"2026-07-24T01:31:11Z"}