From: Saverio Perugini
Subject: program slicer
Date: 
Message-ID: <Pine.OSF.4.33.0210161640570.27742-100000@csgrad.cs.vt.edu>
Hello,

Are there freely-available program slicers
for Lisp or CommonLisp?
If so, can you please direct me to them?

Thank You and Best Regards,

S. Perugini

From: Christopher C. Stacy
Subject: Re: program slicer
Date: 
Message-ID: <uelaqcb3j.fsf@dtpq.com>
>>>>> On Wed, 16 Oct 2002 16:41:39 -0400, Saverio Perugini ("Saverio") writes:

 Saverio> Hello,
 Saverio> Are there freely-available program slicers
 Saverio> for Lisp or CommonLisp?
 Saverio> If so, can you please direct me to them?

What's a program slicer?
From: Will Deakin
Subject: Re: program slicer
Date: 
Message-ID: <aoknr9$465$2@helle.btinternet.com>
Christopher C. Stacy wrote:
> What's a program slicer?
Damn, I was going to ask that...but then again I was frightened that he 
might tell me.

;)w
From: Barry Margolin
Subject: Re: program slicer
Date: 
Message-ID: <kylr9.27$T52.2539@paloalto-snr1.gtei.net>
In article <············@helle.btinternet.com>,
Will Deakin  <···········@hotmail.com> wrote:
>Christopher C. Stacy wrote:
>> What's a program slicer?
>Damn, I was going to ask that...but then again I was frightened that he 
>might tell me.

I also thought of asking, but then decided that if I didn't know what it
was, I probably wouldn't know the answer to the question, either.

Maybe it's a development tool that does everything you ever needed: it
slices, it dices, etc... :)

-- 
Barry Margolin, ······@genuity.net
Genuity, Woburn, MA
*** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups.
Please DON'T copy followups to me -- I'll assume it wasn't posted to the group.
From: ozan s yigit
Subject: Re: program slicer
Date: 
Message-ID: <vi41y6penio.fsf@blue.cs.yorku.ca>
Barry Margolin [on program slicer]:

> Maybe it's a development tool that does everything you ever needed: it
> slices, it dices, etc... :)

it is a program abstraction technique first developed (so far as i
know) by mark weiser for his thesis. the idea is to extract parts of
a program given some criteria (eg. variables) where the extract only
contains statements that effect those variables. this is used for
automated analysis, debugging, program comprehension, etc.

a good pointer is worth a dozen googles: a very good survey of the field
is found in frank tip's "A Survey of Program Slicing Techniques" from 1994.
newer material is easily found through citeseer. [a lot of work is going
on but when i last looked, i did not notice anything that was relevant
to lisp-family languages.]

http://www.research.ibm.com/people/t/tip/

oz
-- 
if you do not work on important problems
how can you expect to do important work? -- richard w. hamming
From: Marco Antoniotti
Subject: Re: program slicer
Date: 
Message-ID: <y6chefl16id.fsf@octagon.valis.nyu.edu>
ozan s yigit <··@blue.cs.yorku.ca> writes:

> Barry Margolin [on program slicer]:
> 
> > Maybe it's a development tool that does everything you ever needed: it
> > slices, it dices, etc... :)
> 
> it is a program abstraction technique first developed (so far as i
> know) by mark weiser for his thesis. the idea is to extract parts of
> a program given some criteria (eg. variables) where the extract only
> contains statements that effect those variables. this is used for
> automated analysis, debugging, program comprehension, etc.
> 
> a good pointer is worth a dozen googles: a very good survey of the field
> is found in frank tip's "A Survey of Program Slicing Techniques" from 1994.
> newer material is easily found through citeseer. [a lot of work is going
> on but when i last looked, i did not notice anything that was relevant
> to lisp-family languages.]
> 
> http://www.research.ibm.com/people/t/tip/

Ahhhhhhh.  Isn't that what the WALKER does?

Cheers



-- 
Marco Antoniotti ========================================================
NYU Courant Bioinformatics Group        tel. +1 - 212 - 998 3488
715 Broadway 10th Floor                 fax  +1 - 212 - 995 4122
New York, NY 10003, USA                 http://bioinformatics.cat.nyu.edu
                    "Hello New York! We'll do what we can!"
                           Bill Murray in `Ghostbusters'.
From: Pascal Costanza
Subject: Re: program slicer
Date: 
Message-ID: <aokqru$cm0$1@newsreader2.netcologne.de>
Christopher C. Stacy wrote:
>>>>>>On Wed, 16 Oct 2002 16:41:39 -0400, Saverio Perugini ("Saverio") writes:
>>>>>
> 
>  Saverio> Hello,
>  Saverio> Are there freely-available program slicers
>  Saverio> for Lisp or CommonLisp?
>  Saverio> If so, can you please direct me to them?
> 
> What's a program slicer?

A program slicer is a tool that determines what parts of your program 
may affect a certain variable / set of variables. So in the following 
function

(defun f ()
   (let (x y)
     (setq x 5)
     (setq y 4)
     (setq x 6)))

(which is obviously nonsense), a program slicer that's asked about x 
should highlight lines 2, 3 and 5.

(At least, that's the basic idea AFAIK.)


Pascal


-- 
Given any rule, however �fundamental� or �necessary� for science, there 
are always circumstances when it is advisable not only to ignore the 
rule, but to adopt its opposite. - Paul Feyerabend
From: Barry Margolin
Subject: Re: program slicer
Date: 
Message-ID: <w0nr9.34$T52.2820@paloalto-snr1.gtei.net>
In article <············@newsreader2.netcologne.de>,
Pascal Costanza  <········@web.de> wrote:
>Christopher C. Stacy wrote:
>>>>>>>On Wed, 16 Oct 2002 16:41:39 -0400, Saverio Perugini ("Saverio") writes:
>>>>>>
>> 
>>  Saverio> Hello,
>>  Saverio> Are there freely-available program slicers
>>  Saverio> for Lisp or CommonLisp?
>>  Saverio> If so, can you please direct me to them?
>> 
>> What's a program slicer?
>
>A program slicer is a tool that determines what parts of your program 
>may affect a certain variable / set of variables.

We used to call that a cross-referencer.

-- 
Barry Margolin, ······@genuity.net
Genuity, Woburn, MA
*** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups.
Please DON'T copy followups to me -- I'll assume it wasn't posted to the group.
From: Christopher C. Stacy
Subject: Re: program slicer
Date: 
Message-ID: <u7kghd2vz.fsf@dtpq.com>
 Saverio> Are there freely-available program slicers for Lisp or CommonLisp? 
 Saverio>  If so, can you please direct me to them?

 Chris> What's a program slicer?

 Pascal Costanza> A program slicer is a tool that
 Pascal Costanza> determines what parts of your program may affect a certain
 Pascal Costanza> variable / set of variables.

 Barry Margolin> We used to call that a cross-referencer.


And (hoping that Saverio is reading this) most Common Lisp
development environments come with the following tools:

 "Find Source By Referenced Symbol" (aka "meta-dot"),
 "Tags/System Query Replace",
 "List Callers" or "Graph Call Tree",
 the APROPOS function,
 and of course a Class/Method Browser.

Lisp also includes several other tools for tracing program execution,
breakpoints, and interactive real-time debugging and data inspection.

Since Lisp code is represented by Lisp data, it is possible to
easily create powerful analysis tools.  (The slicer sounds like
a rather trivial tool whose functions are practically subsumed
by the facilities I've mentioned above.  Note that Lisp has had
those facilities since the late 1970s, some of them longer ago.)

Saverio should download the trial/educational versions of
the development environments from Xanalys or Franz.

Chris
From: ozan s yigit
Subject: Re: program slicer
Date: 
Message-ID: <vi4adldaz5f.fsf@blue.cs.yorku.ca>
······@dtpq.com (Christopher C. Stacy) writes:

>                                       (The slicer sounds like
> a rather trivial tool whose functions are practically subsumed
> by the facilities I've mentioned above.

it is not. read frank tip's survey.

oz
-- 
if you do not work on important problems
how can you expect to do important work? -- richard w. hamming
From: Christopher C. Stacy
Subject: Re: program slicer
Date: 
Message-ID: <uadlcq4t7.fsf@dtpq.com>
>>>>> On 17 Oct 2002 11:00:28 -0400, ozan s yigit ("ozan") writes:

 ozan> ······@dtpq.com (Christopher C. Stacy) writes:
 >> (The slicer sounds like
 >> a rather trivial tool whose functions are practically subsumed
 >> by the facilities I've mentioned above.

 ozan> it is not. read frank tip's survey.

If all it does is what was reported here, then it's trivial.

But since you've already analyzed it, could you summarize how the
facilities that I listed do not subsume the purpose of the slicer?
People here are always interested in program analysis tools.
From: ozan s. yigit
Subject: Re: program slicer
Date: 
Message-ID: <4da3d9af.0210172042.151eb420@posting.google.com>
······@dtpq.com (Christopher C. Stacy) [on slicing after i mentioned
a survey paper that describes slicing techniques]

> If all it does is what was reported here, then it's trivial.

oh. when i briefly looked at slicing as a part of some research into
proogram analysis, i did not think it was trivial, certainly not for any
programming language in daily production use that would benefit from the
technique. the idea was to use slicing to extract semantically correct
subprograms and subject them to model checking. maybe i'll go revisit
the technique.

> But since you've already analyzed it, could you summarize how the
> facilities that I listed do not subsume the purpose of the slicer?

not much to summarize. i'm not aware of anything in the lisp tools you
mention that allow me to extract (based on some criteria) a subprogram
that can be (for example) automatically regression-tested, or could be
transformed for other analysis of my choice. maybe they exist in some
implementation of CL but i don't know.

> people here are always interested in program analysis tools.

i'll admit that i'm not really at all interested in analysis tools /for/ lisp.
i'm interested in tools /in/ lisp for things like operating system kernels
written in C and huge applications written in C++

oz
---
do nothing which is of no use. -- miyamoto musashi
From: Christopher Browne
Subject: Re: program slicer
Date: 
Message-ID: <aol63c$nnjjl$1@ID-125932.news.dfncis.de>
The world rejoiced as ······@dtpq.com (Christopher C. Stacy) wrote:
>>>>>> On Wed, 16 Oct 2002 16:41:39 -0400, Saverio Perugini ("Saverio") writes:
>
>  Saverio> Hello,
>  Saverio> Are there freely-available program slicers
>  Saverio> for Lisp or CommonLisp?
>  Saverio> If so, can you please direct me to them?
>
> What's a program slicer?

You stick your finger, or something, in it, and it cuts part of it
off...

Didn't you get one with CMU/CL?  It may be an extra cost option. 

It comes standard with C and C++ environments, *for free*.
-- 
(reverse (concatenate 'string ········@" "enworbbc"))
http://www3.sympatico.ca/cbbrowne/advocacy.html
`When you  say "I wrote a  program that crashed  Windows", people just
stare at you  blankly and say "Hey, I got those  with the system, *for
free*".'  -- Linus Torvalds
From: Barry Margolin
Subject: Re: program slicer
Date: 
Message-ID: <8lAr9.7$MU5.759@paloalto-snr1.gtei.net>
In article <··············@ID-125932.news.dfncis.de>,
Christopher Browne  <········@acm.org> wrote:
>The world rejoiced as ······@dtpq.com (Christopher C. Stacy) wrote:
>>>>>>> On Wed, 16 Oct 2002 16:41:39 -0400, Saverio Perugini ("Saverio") writes:
>>
>>  Saverio> Hello,
>>  Saverio> Are there freely-available program slicers
>>  Saverio> for Lisp or CommonLisp?
>>  Saverio> If so, can you please direct me to them?
>>
>> What's a program slicer?
>
>You stick your finger, or something, in it, and it cuts part of it
>off...
>
>Didn't you get one with CMU/CL?  It may be an extra cost option. 
>
>It comes standard with C and C++ environments, *for free*.

I thought C/C++ programmers lost brain cells, not appendages....

-- 
Barry Margolin, ······@genuity.net
Genuity, Woburn, MA
*** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups.
Please DON'T copy followups to me -- I'll assume it wasn't posted to the group.