Obliq
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 networks over the Internet.

Obliq objects have state and are local to a site. Obliq computations can roam over the network, while maintaining network connections.


          J.Stolfi


Documentation

A paper on Obliq: [US.pdf] [A4.pdf].

Slides (with neat diagrams): [A4.pdf].

The Obliq language description and manual: [US.pdf] [A4.pdf] [html].

Examples

Examples.

Related publications

    Collaborative Active Textbooks
    M.H.Brown, M.A.Najork (1996). [SRC Report #142.html]
    Distributed Active Objects
    M.H.Brown, M.A.Najork (1996). [SRC Report #141a.html]
    Distributed Scripting Idioms in Obliq (Talk Slides)
    L.Cardelli (1995).
    Visual Obliq
    K.A.Bharat, M.H.Brown (1995). [SRC Report #130a.html]
    JPG WMV SRC Report #130b, Videotape.
    Obliq-3D: A High-Level, Fast-Turnaround 3D Animation System
    M.Najork and M.H.Brown (1995) IEEE Transactions on Visualization and Computer Graphics, 1(2):175--193 (June 1995).
    Obliq-3D Tutorial and Reference Manual
    M.Najork (1995). [SRC Report #129.html]
    Network Objects
    Andrew Birrell, Greg Nelson, Susan Owicki, Edward Wobber (1994). [US.ps.Z]

Related projects

Distributed Applications on the Web
Obliq-3D
Visual Obliq
Algorithm Animation

Distribution

Obliq is freely available by ftp.
To obtain the Obliq sources you must download the whole Modula-3 distribution found at the Digital SRC site: Modula-3 (read the Modula-3 license, which is also valid for Obliq). The sources for Obliq and for Netobjd (which is needed when using Obliq with network objects), are included in the Modula-3 distribution as a collection of packages. The structure of the Obliq packages is described in the Obliq language manual.
To compile/build Obliq you must first download and build the whole Modula-3 distribution for your architecture (unless it is already installed at your site), then build the Obliq packages.

Several ports of Modula-3 (and probably Obliq) to various platforms, including binaries, are kept at this site:

http://www.vlsi.polymtl.ca/m3/binaries/index.html

Try-out Binaries

Some try-out, stand-alone, Obliq binaries are available from SRC: Binaries. These have limited functionality (no graphics/UI), but can be run immediately on the appropriate platform.

Running Obliq Interpreters

Instructions on how to get started quickly: Quick Start.