From: Serafeim
Subject: discrete event simulator
Date: 
Message-ID: <deqbkt$pd6$1@nwrdmz02.dmz.ncs.ea.ibs-infra.bt.com>
Hello,

I'm unable to find any discrete event simulation library for Lisp. Any
pointers?

Thanks,
Serafeim

From: Fred Gilham
Subject: Re: discrete event simulator
Date: 
Message-ID: <u71x4cfu9e.fsf@snapdragon.csl.sri.com>
There seems to be some stuff in Pop11 that can be used for discrete
event simulation.

   http://www.poplog.org/docs/popdocs/pop11/help/libfiles

Pop11 is a multi-dialect version of lisp.  I think.

Here's the relevant information from the above page:


-- (Event Simulation, Multi-Tasking) ----------------------------------

HELP *ACTOR, LIB *EVENT, HELP *PROCESS

    Using the Pop11 PROCESS facility to implement basic procedures for
    discrete event simulation. This can be used for multi - tasking.


There also seem to be some libraries in Scheme for this.

> The PLT Scheme Simulation Collection provides a discrete-event
> simulation engine based on a process interaction model. The PLT
> Scheme Simulation Collection has been prototyped. The PLT Scheme
> Inferencing Collection provides a rule-based inferencing engine.

You can find stuff about this in google.

-- 
Fred Gilham                                      ······@csl.sri.com
Ah, the 20th century, when the flight from reason crash-landed into
the slaughterhouse.  --- James Ostrowski
From: Fred Gilham
Subject: Re: discrete event simulator
Date: 
Message-ID: <u7slwsed9n.fsf@snapdragon.csl.sri.com>
Following up to myself...anyway there is something called CoDA that
might be of interest, though it uses clips as well as Lisp:

  http://cdps.umcs.maine.edu/CoDA/Public/

-- 
Fred Gilham                                   ······@csl.sri.com
I think it's pretty obvious that the worship of that false idol known
as the State has, in the 20th Century, had some very bad effects. The
historians I'm familiar with have settled on the number of dead as 177
million, although I've seen estimates of up to 200 million.
                                                          -Bob Wallace
From: Fred Gilham
Subject: Re: discrete event simulator
Date: 
Message-ID: <u7mzn0eclt.fsf@snapdragon.csl.sri.com>
OK, one more last one: MICE.

Located at ftp.eecs.umich.edu:/groups/DIAG/Mice.tar.Z (etc.).

It's a multi-agent system that uses discrete event simulation.  I
think it's completely based on Lisp.

-- 
Fred Gilham                                          ······@csl.sri.com
99% of lawyers give the rest a bad name.                -- Steve Wright
From: Serafeim
Subject: Re: discrete event simulator
Date: 
Message-ID: <df2ri8$9ro$1@nwrdmz01.dmz.ncs.ea.ibs-infra.bt.com>
Fred Gilham wrote:

> 
> OK, one more last one: MICE.
> 
> Located at ftp.eecs.umich.edu:/groups/DIAG/Mice.tar.Z (etc.).
> 
> It's a multi-agent system that uses discrete event simulation.  I
> think it's completely based on Lisp.


Fred, thanks for your reply. The systems you pointed out though appear to be
quite dead (ie, unmaintained). I came across MICE as well, but it isn't a
general purpose simulator.

Freshmeat and sourceforge do not yield anything for simulation and lisp, so
I guess there isn't anything out there.

Thanks again,
Serafeim
From: ··············@hotmail.com
Subject: Re: discrete event simulator
Date: 
Message-ID: <1125450779.664179.155540@g43g2000cwa.googlegroups.com>
Serafeim wrote:
> Fred, thanks for your reply. The systems you pointed out though appear to be
> quite dead (ie, unmaintained). I came across MICE as well, but it isn't a
> general purpose simulator.
>
> Freshmeat and sourceforge do not yield anything for simulation and lisp, so
> I guess there isn't anything out there.

"Dead" and "unmaintained" are distinct, and both are distinct from
"nothing there."

Have you tried compiling and using the code described? Is it
insufficiently documented?
Not written in portable Common Lisp? Code from 15 years ago should run
quite well in modern implementations, and might not need maintenance to
be useful.

Freshmeat and SourceForge are hardly the be-all and end-all of
software, *particularly* for Lisp.
From: GP lisper
Subject: Re: discrete event simulator
Date: 
Message-ID: <1125461524.6adde9eff2d0c12235ff96da76963bbb@teranews>
On 30 Aug 2005 18:12:59 -0700, <············@gmail.com> wrote:

> Not written in portable Common Lisp? Code from 15 years ago should run
> quite well in modern implementations, and might not need maintenance to
> be useful.

I have 12 yr old code written for 

  Texas Instruments Common Lisp version 6.1
  Macintosh Common LISP (Allegro/Coral) versions 1.3.2 and 2.0b1
  Lucid Common LISP version 4.0.x, 4.1
  Allegro Common LISP (Franz inc.) version 4.1

that so far, has worked in every modern CL I've tried (~7).  Needs
some work, but impressive.  I use "old or abandoned" code rather
often, it's usually the _only_ available code in many areas.


-- 
Program A uses CLOS, Program B is implemented with structs, leading
to a fourfold increase in execution speed.  --J. B. Heimatseiten
From: Serafeim
Subject: Re: discrete event simulator
Date: 
Message-ID: <df5fij$jck$1@nwrdmz01.dmz.ncs.ea.ibs-infra.bt.com>
··············@hotmail.com wrote:

> 
> Serafeim wrote:
>> Freshmeat and sourceforge do not yield anything for simulation and lisp,
>> so I guess there isn't anything out there.
> 
> "Dead" and "unmaintained" are distinct, and both are distinct from
> "nothing there."

I see your point but I'd rather code my own simulator than get stuck with a
complicated piece of software that doesn't have an active community.
Moreover, none of the pointed resources are general purpose simulation
frameworks. (Coda may be general purpose but the readme says "for your
information only, not guaranteed to run")

> Not written in portable Common Lisp? Code from 15 years ago should run
> quite well in modern implementations, and might not need maintenance to
> be useful.
> 
> Freshmeat and SourceForge are hardly the be-all and end-all of
> software, *particularly* for Lisp.

Well I've done lot's of googling too (and checked some lisp repositories)

Thanks,
Serafeim
From: ··············@hotmail.com
Subject: Re: discrete event simulator
Date: 
Message-ID: <1125550146.105343.68900@f14g2000cwb.googlegroups.com>
Serafeim wrote:
> ··············@hotmail.com wrote:
>
> >
> > Serafeim wrote:
> >> Freshmeat and sourceforge do not yield anything for simulation and lisp,
> >> so I guess there isn't anything out there.
> >
> > "Dead" and "unmaintained" are distinct, and both are distinct from
> > "nothing there."
>
> I see your point but I'd rather code my own simulator than get stuck with a
> complicated piece of software that doesn't have an active community.

So you will create code supported only by you? To avoid working alone?

"Active community" seems to be some kind of SourceForge code for
"people smarter than me to help me for free." Or a mental outlook
created by experience, where all software is inherently broken and
needs a community of fellow sufferers to find a way through the chaos.

I don't mean to take my annoyance out on you personally, but I simply
am bewildered by the seemingly common idea that just because people
swarm like ants over some half-finished, cobbled-together, ill-designed
body of C++/Java code, that's somehow superior to a (hypothetical)
finished solution that is offered up for free, and might not *need* a
massive community to make it work right.
And that the monument to half-finished brokenness that is SourceForge
is somehow a beacon of light, when compared against, for instance, the
state-of-the-art in Fortran libraries for scientific computing, created
over decades of deliberately funded and organized work by academia and
government laboratories.

> Moreover, none of the pointed resources are general purpose simulation
> frameworks. (Coda may be general purpose but the readme says "for your
> information only, not guaranteed to run")
>
> Well I've done lot's of googling too (and checked some lisp repositories)

You've been very vague in this forum about specific requirements and
problem descriptions. "Simulation" and "event" are pretty vague terms.
What kind of systems? What kind of dynamics do you need to model?  And
why is Lisp a specific requirement?

Do you have funding for this project? Have you spoken to commercial
vendors?
From: Serafeim
Subject: Re: discrete event simulator
Date: 
Message-ID: <dfaqu7$cpl$1@nwrdmz03.dmz.ncs.ea.ibs-infra.bt.com>
··············@hotmail.com wrote:

> 
> Serafeim wrote:
>> I see your point but I'd rather code my own simulator than get stuck with
>> a complicated piece of software that doesn't have an active community.
> 
> So you will create code supported only by you? To avoid working alone?

Working alone on code I understand is better than working alone on code I
don't (which is likely if something is complex and not well documented).
 
> You've been very vague in this forum about specific requirements and
> problem descriptions. "Simulation" and "event" are pretty vague terms.

"discrete event simulation" is sufficiently clear to people that know what
it's about. Thanks for your responses and pointers anyway.

-S
From: Rob Warnock
Subject: Re: discrete event simulator
Date: 
Message-ID: <bfmdnYmVs8RjKojeRVn-pQ@speakeasy.net>
Fred Gilham  <······@snapdragon.csl.sri.com> wrote:
+---------------
| There also seem to be some libraries in Scheme for this.
| > The PLT Scheme Simulation Collection provides a discrete-event
| > simulation engine based on a process interaction model. The PLT
| > Scheme Simulation Collection has been prototyped. The PLT Scheme
| > Inferencing Collection provides a rule-based inferencing engine.
+---------------

If Scheme is acceptable, there's also Aubrey Jaffer's SIMSYNCH:

    http://swiss.csail.mit.edu/~jaffer/SIMSYNCH

    Current Version 	Released 	Terms
    1b9 		2005-06-23 	GPL

    SIMSYNCH is a simulator for digital electronics at scales from
    chip to board.

    The design files are comprised of Scheme definitions and
    expressions. These design files can be run as a Scheme program
    at high speed. The design files can also be translated into
    formats suitable for logic compilers (MACHXL and Verilog).

    SIMSYNCH simulates blocks of synchronous logic, signals whose
    states change simultaneously on a clock signal transition. Each
    block also has a reset signal, which forces all signals to the
    state specified in the design file. SIMSYNCH can simultaneously
    simulate multiple blocks with different clocks and resets. Devices
    can contain multiple blocks; Blocks can span multiple devices. 
    ...


-Rob

-----
Rob Warnock			<····@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607
From: Joe Marshall
Subject: Re: discrete event simulator
Date: 
Message-ID: <u0h617r7.fsf@ccs.neu.edu>
Serafeim <······@it.teithe.gr> writes:

> Hello,
>
> I'm unable to find any discrete event simulation library for Lisp.

Perhaps the authors are being discreet....
From: ··············@hotmail.com
Subject: Re: discrete event simulator
Date: 
Message-ID: <1125552292.320994.43460@g14g2000cwa.googlegroups.com>
Serafeim wrote:
> Hello,
>
> I'm unable to find any discrete event simulation library for Lisp. Any
> pointers?
>
> Thanks,
> Serafeim

Have you seen MESS: http://eksl-www.cs.umass.edu/research/mess.html ?
or Omar/L http://omar.bbn.com/ ?
Patrick Henry Winston's textbook has a chapter on simulation, code is
accessible at
http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/lisp/bookcode/winston/
?