English

A Lightweight Combination of Semantics for Non-deterministic Functions

Programming Languages 2009-03-13 v1

Abstract

The use of non-deterministic functions is a distinctive feature of modern functional logic languages. The semantics commonly adopted is call-time choice, a notion that at the operational level is related to the sharing mechanism of lazy evaluation in functional languages. However, there are situations where run-time choice, closer to ordinary rewriting, is more appropriate. In this paper we propose an extension of existing call-time choice based languages, to provide support for run-time choice in localized parts of a program. The extension is remarkably simple at three relevant levels: syntax, formal operational calculi and implementation, which is based on the system Toy.

Keywords

Cite

@article{arxiv.0903.2205,
  title  = {A Lightweight Combination of Semantics for Non-deterministic Functions},
  author = {Francisco Javier Lopez-Fraguas and Juan Rodriguez-Hortala and Jaime Sanchez-Hernandez},
  journal= {arXiv preprint arXiv:0903.2205},
  year   = {2009}
}

Comments

Paper presented at the 18th Workshop on Logic-based Methods in Programming Environments (WLPE2008) (Report-No: WLPE/2008). Paper submitted by a co-editor of the Workshop proceedings

R2 v1 2026-06-21T12:39:54.650Z