@article{obliq, author = "Luca Cardelli", title = {Obliq: A Language with Distributed Scope}, month = "June", day = "3", year = "1994", institution = {Digital Equipment Corporation}, number = "SRC-RR-122", note = "Available from \url{http://www.hpl.hp.com/techreports/Compaq-DEC/SRC-R R-122.html}", abstract = { Obliq is a lexically-scoped untyped interpreted language that supports distributed object-oriented computation. An Obliq computation may involve multiple threads of control within an address space, multiple address spaces on a machine, heterogeneous machines over a local network, and multiple net- works over the Internet. Obliq objects have state and are local to a site. Obliq computations can roam over the network, while maintaining network connections. }, notes = {
In lexically scoped languages, the binding location of every identifier is determined by simple analysis of the program text surrounding the identifier. Therefore, one can be sure of the meaning of program identifiers, and can much more easily reason about the behavior of programs.
In Obliq, analysing the program text allows you to discover where a binding is located. When procedures are transmitted, free variables are sent as references back to their defining location. Lexical scoping has a security implication; incoming agents come with their own variable references and have no way of accessing state at the execution site. }, bibtexurl = {http://www.recoil.org/~djs/bibtex/obliq.bib}, pdf = {\url{ftp://gatekeeper.research.compaq.com/pub/DEC/SRC/research-reports/SRC-122.pdf}}, }