🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.prolog
Article #1648

Re: Demons in Prolog

#1648
From: Micha Meier
Date: Thu, 06 Dec 1990 09:52
36 lines
2321 bytes
In article <4716@mahendo.Jpl.Nasa.Gov> alan@nereid.jpl.nasa.gov (Alan Quan) writes:
>I need to find out if it's possible to implement demons in Prolog in an
>efficient manner. 
>...
>--- any comments you can provide on suitability of
>Prolog for real-time environments (Prolog alone or Prolog in conjuction
>with C) will be of considerable interest. 

In the design of the SEPIA Prolog we tried to address exactly these problems,
namely the suitability of Prolog for real-time applications and
data-driven computation. First about the demons: If the condition for
triggering a demon can be stated as a constraint on one or more variables,
it is possible to use the coroutining facility, so that each time a variable
occurring in the constraint is instantiated (or bound to another
such variable), the suspended constraint is woken and the system checks if
it can be evaluated or not. If not, it delays and waits for further
instantiation. If yes, the body of the constraint predicate is executed
in the normal manner.

As far as real-time applications are concerned, SEPIA is able to
process interrupts asynchronously, so that even if the interrupt
comes while an external predicate written in C is executed,
the execution is immediately interrupted and the user-defined
interrupt handler, which can be any Prolog or external procedure,
is invoked. It is also reasonably fast, so that fast response
is guaranteed. On the other hand, currently it is running only under UNIX,
which is not very good for such applications.
We are actually looking for possible real-time applications for SEPIA
and we are interested in cooperations in this field.

--Micha
--
E-MAIL  micha@ecrc.de            	MAIL	Micha Meier
						ECRC, Arabellastr. 17
                     				8000 Munich 81
						Germany
Technical Details
Message-ID: <2413@ecrc.de>
Path: arc1-ca.pugleaf.net!utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!ira.uka.de!fauern!tumuc!guug!ecrc!micha
References: <4716@mahendo.Jpl.Nasa.Gov>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!ira.uka.de!fauern!tumuc!guug!ecrc!micha
From: micha@ecrc.de (Micha Meier)
Newsgroups: comp.lang.prolog
Subject: Re: Demons in Prolog
Message-ID: <2413@ecrc.de>
Date: 6 Dec 90 09:52:13 GMT
References: <4716@mahendo.Jpl.Nasa.Gov>
Sender: news@ecrc.de
Reply-To: micha@ecrc.de (Micha Meier)
Organization: European Computer-Industry Research Centre
Lines: 36