HDTenEightyP/NetNews huggingface dataset:
From: uaa1006@dircon.co.uk (Peter Miles)
Newsgroups: comp.lang.perl
Subject: Using unexec() with perl
Date: 8 Apr 92 11:47:21 GMT


Can anyone tell me how I need to patch unexec() (from EMACS 
18.57) to work with Perl, so I can use the perl -u option to 
produce an executable?

I'm running SCO UNIX v3.2.2.

Alternatively, could someone please send me the dump/undump 
programs from TeX?

Finally, do UNDUMPed or unexec'ed executables use the shared libraries
if Perl was originally compiled with them?

Thanks!

                        -- Pete
-- 
Pete Miles			uaa1006@dircon.co.uk
				...uknet!dircon!uaa1006
From: rwk@crl.dec.com (Bob Kerns)
Newsgroups: comp.lang.perl
Subject: Re: Randal's sigs...
Date: 14 Apr 92 00:48:48 GMT
	<1992Apr12.164543.28418@mtholyoke.edu>
Organization: Cambridge Research Lab, Digital Equipment Corp.

In article <1992Apr12.164543.28418@mtholyoke.edu> jbotz@mtholyoke.edu (Jurgen Botz) writes:

   From: jbotz@mtholyoke.edu (Jurgen Botz)
   Date: 12 Apr 92 16:45:43 GMT

   In article <1992Apr10.151116.27309@cis.umassd.edu> stoodt@cis.umassd.edu (Michael Stoodt) writes:
   >Randal, do you have a collection of your infinite variations on
   >
   >print "Just another Perl hacker,"
   >
   >signature lines, that you could post or put on an ftp site or
   >something?  Do you make them up on the fly, or do you prepare them
   >ahead of time?

   I think Randal's answer to this question should go into the FAQ list.
   8-)

Also, Larry should be saving them and using them
as a compatibility regression test suite, testing
all sorts of obscure aspects of the language!
From: corwin@Apple.COM (Paul Frommeyer)
Newsgroups: comp.lang.perl
Subject: No-luck Perl 4.019 install on A/UX (help!)
Date: 10 Apr 92 20:33:49 GMT
Organization: Apple Computer, Inc.

After several days of trying to install perl 4.019 on A/UX 2.0.1, I've decided
it's time to throw in the personal ego towel and seek the net's expertise.

Problem: compiles fine, fails regression tests as follows:
	comp/cpp	wait returned from unrecognized child pid XXXXX (2 messages)
	comp/decl	FAILED on test 0
	op/regexp	FAILED on test 9

Manually running the tests results in segmentation faults for decl and regexp,
and the messages "not ok 2" and "cc: wait returned from unrecognized child; pid XXXXX" for cpp.

I contacted other people in our company who've installed perl OK, got a known
good config.sh, and got the same results. I've also played with the various
ccp and cc parameters in config.sh. I discovered I was low on swap space and
kernel regions, so increased these. I haven't attempted a debug of the 
program or the source code, since I have neither the time nor, I suspect, the
brainpower to pull this off.

Any help or tips from anyone who's encountered this or has any hints would be
appreciated. Informative factoids:

System: Mac IIci, 4Mb RAM (soon to be 8), 80Mb swap, 45 Mb free in /usr,
25 Mb free in /. Kernel NREGION=500, NPROC=300, MAXUP=200, used to be 200,100,
and 50, respectively. MINAREM=0xa, MINASMEM=0xf, MAXUMEM=0x40000, CDLIMIT=
0x10000000.

Attempted compilation flags and options: 
In all cases: 
	-B /usr/lib/big/
Various combinations:
Optimization: -O  cpp: -DPARAM_NEEDS_TYPES  cc: -ZP -DPARAM_NEEDS_TYPES -DPOSIX
Optimization:     cpp: -DPARAM_NEEDS_TYPES  cc: -ZP -DPARAM_NEEDS_TYPES -DPOSIX
Optimization: -O  cpp: -DPARAM_NEEDS_TYPES  cc: -DPARAM_NEEDS_TYPES -DBSD_UNIX
Optimization:     cpp: -DPARAM_NEEDS_TYPES  cc: -DPARAM_NEEDS_TYPES -DBSD_UNIX
Optimization: -O  cpp:                      cc: -DBSD_UNIX
Optimization:     cpp:                      cc: -DBSD_UNIX
From our working config.sh:
Optimization: -O  cpp:                      cc: 

I tried each of these both with A/UX malloc and with Perl malloc. Each compile
behaved the same; a successful compile with failed regression tests.
Thanks in advance for any help or advice (replies by e-mail please),
								Paul Frommeyer

Paul "Corwin" Frommeyer                          "Better is the enemy of Good."
Network Sorcerer and Telecom Hacker                  Internet: corwin@apple.com
Apple Computer Incorporated, Napa IS&T    UUCP: apple!corwin   AppleLink:CORWIN
printf("Disclaimer:%s\n",common&&sense?"My opinion, not Apple's":"No comment");
Newsgroups: comp.lang.perl
From: chare@unilabs.uucp (Chris Hare)
Subject: sprintf problems
Organization: None: Just Me, Chris Hare
Date: Mon, 13 Apr 1992 21:40:17 GMT

I have a program which is very data driven.  I read a user supplied
configuration file which is used to describe the file which I am about to 
transform.

The input side is Ok, but the output definition may involve padding or
truncatiing.  The length of the field is provided for in an array,

	$OutputFieldLength[$FieldNum]

How do I get the value of this element into an sprintf string, so that my
field is of the appropriate width?

	$Text = eval" sprintf( '%$lens', $value );";

Doesn't seem to work.  If it is suppossed to, then I'll go back and make
sure again I have all of the variables stuffed with the values I think they
are.

Thanks
-- 
+------------------------------------------------------------------------------+
| Chris Hare, Manager Technical Services Ottawa | Phone : (613) 238-1050       |
| Choreo Systems Inc.                           | Fax   : (613) 238-4453       |
| SCO Authorized Instructor                     | email : uunet!choreo!chare   |
|   *** STANDARD DISCLAIMER APPLIES ***         |   uunet!choreo!unilabs!chare |
|      --- It Always works for me! ---          | INTERNET : chare@choreo.ca   |
+------------------------------------------------------------------------------+

-- 
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Chris Hare				UUCP : uunet.ca!choreo!unilabs!chare
SCO Authorized Instructor		Choreo Systems Inc., Ottawa Canada
*** STANDARD DISCLAIMER APPLIES ***	DOMAIN: chare@choreo.ca
From: Bob_Sidebotham@transarc.com
Newsgroups: comp.lang.perl
Subject: psh, anyone?
Date: 16 Apr 92 17:29:58 GMT
Reply-To: bob+@transarc.com
Organization: DEC Palo Alto
To: comp.lang.perl.usenet

So I've spent half an hour and hacked up a simple psh (pearl shell). The
first cut was just a loop that printed a prompt and used "system" to
execute the command. In order to make it look a little more like a
"real" shell interface, it needed a couple of things added, such as
"alias", "setenv", etc. Obviously performance can also be improved by
not using the full shell to parse every command line.

So why did I do this? Because I want my extension language to be perl,
but I don't quite want my command language to be perl, or at least I
want the option of having a command language that looks somewhat like a
traditional shell interface.  A particular motivation is that I have a
2000 line perl script that I want to be hot, and for which I would like
to preserve internal state. I'd also like implement tcsh-like facilities
such as comand completion in a context sensitive manner (and integrate
them with help). I might also like to have command-sensitive quoting
conventions. For example, the alias command I hacked in does not have
the quoting problems that the csh alias command does. Find could have a
more reasonable syntax. *-names could glob in a context sensitive
manner, etc. Non-perl programs could have surrogate user interfaces
built to do appropriate command-completion, etc. There can be other
hooks for handling command prompting, for modifying command completion,
etc (no more ridiculous csh aliases for setting your prompt!).

So I hacked into my throw-away version of this thing something to do a
"require" of the specified command. If it finds it, it then calls a
routine of the same name in the loaded package, otherwise it executes it
as a shell command. That was just a hack: there are other approaches
that will work better, and allow you to supply more than one command in
a file, etc.

There are other problems that will crop up, such as pipelines of perl
commands, etc. These aren't fatal to making the tool useful.

One nice side-effect is that libraries that are required by different
programs only get loaded once.

The psh I hacked together was just to convince myself it was doable.
It's actually usable (barely). I suspect that someone else has already
done it, or may want to do it properly. Any takers?

Bob Sidebotham
Transarc Corporation
Newsgroups: comp.lang.perl
From: Tom Christiansen <tchrist@convex.COM>
Subject: Re: keeping track of file handles in assoc array
Originator: tchrist@pixel.convex.com
Keywords: associative array open files
Reply-To: tchrist@convex.COM (Tom Christiansen)
Organization: CONVEX Realtime Development, Colorado Springs, CO
Date: Fri, 10 Apr 1992 14:53:25 GMT
X-Disclaimer: This message was written by a user at CONVEX Computer
              Corp. The opinions expressed are those of the user and
              not necessarily those of CONVEX.

From the keyboard of chare@unilabs.uucp (Chris Hare):
:
:I am having a problem in that I have to have a number of different files
:open which are based upon a field in the source file I am processing.
:
:What I want to do is
:
:while data
:	get category type
:	if file not open
:		open
:	endif
:	write data
:end while
:
:What I have coded is this:
:
:	 if ( ! defined( $FileDes{$Category} ) )
:	    {
:	    printf "ADVISORY : opening price file for $Category\n";
:	    open( $FileDes{$Category}, ">$Category.$Output" );
:	    }
:	 select( $FileDes{$Category} );
:         printf "$Category:$ItemNo:$Desc1:$Desc2:";
:	 printf "$Price1:$Price2:$Price3:$Replace:";
:	 printf "$QtyOnHand:$QtyCommitt:$QtyOnOrder\n";
:	 select( STDOUT );

All what Randal said, plus: you want to be using print, not printf.
You're not passing a format mask, which means any percent signs in 
the data will have undesired results.

--tom
Newsgroups: comp.lang.perl
From: brunson@epas.utoronto.ca (Barbara Brunson)
Subject: Looking for Perl archive site
Organization: University of Toronto - EPAS
Date: Thu, 9 Apr 1992 10:57:20 GMT

What happened to the Perl archives that were at convex.com?
There was a large archive of Perl programs, articles, etc., 
there a couple of months ago, and now it has all disappeared.

Is there another site that has the same sort of ftp archive
that convex.com had?
From: rwk@crl.dec.com (Bob Kerns)
Newsgroups: comp.lang.perl
Subject: Re: novice q: finding unique words in a list
Date: 12 Apr 92 13:16:24 GMT
	<1992Apr7.222504.5891@cs.ruu.nl> <JGD.92Apr8175246@kodiak.acl.lanl.gov>
	<18376@ector.cs.purdue.edu> <mcook.702824404@mrc.dev.cdx.mot.com>
	<18400@ector.cs.purdue.edu>
Organization: Cambridge Research Lab, Digital Equipment Corp.

In article <18400@ector.cs.purdue.edu> spaf@cs.purdue.EDU (Gene Spafford) writes:

   From: spaf@cs.purdue.EDU (Gene Spafford)
   Date: 10 Apr 92 16:30:18 GMT
   # The reason that the right hand side of the conditional is
   # ($previous = $_, 1) instead of ($previous = $_) is left as an exercise
   # for the reader (Hint: what could be in $_ ?)

   sub uniq {
       local($previous) = undef;

       grep((($_ ne $previous) && ($previous = $_, 1)), @_);

   }

Alternatively, you could write

       grep((($_ ne $previous), ($previous = $_))[0], @_);

to make a conditional which just depends on the first
expression.

To handle utashiro-san's complaint about null strings, and to
do what you intended, you really need to write:

       grep(((!(defined $previous) || ($_ ne $previous)), ($previous = $_))[0], @_);


because ("" eq undef).
Newsgroups: comp.lang.perl
From: covici@world.std.com (John Covici)
Subject: Problem compiling perl under msdos
Organization: The World Public Access UNIX, Brookline, MA
Date: Sat, 11 Apr 1992 00:25:54 GMT

Reply-To: covici@ccs.covici.com

Hi.  I am new to perl, so I hope this won't be too rediculous, but I am trying
to compile perl under MSDOS using the material in the MSDOS directory.

I am using Borlandc ++ 3.0 instead of Microsoft (Borland said it was
supposed to be source compatible) and I am having the following problem.

In doio.c off_t is mentioned twice at line 833 and 888.  I can find it 
no where else in the  distribution or the include files.
What I am getting is undefined symbol from the compiler at line 888, but
the line 833 usage seems to be ok.  What is going on and how do I get 
around the error?  

Any assistance would be appreciated.

Please reply by e-mail to covici@ccs.covici.com or to this article.

Thanks much.
From: joel@abigale.UUCP (Joel Rosi-Schwartz)
Newsgroups: comp.lang.perl
Subject: readdir seems broken ;-(
Date: 6 Apr 92 15:53:31 GMT
Organization: Techne Research, Finchampstead, Berkshire (UK)

Hi,

I seem to have a broken readdir and was wondering if anybody out there
has seen this already (before I go ripping perl apart ;-)

The behaviour is that the fisrt two chars of the filenames are truncated.
Below is a simple script, the output and an ls to match.

This occurs under both 4.010 and 4.019.  At first I thought it was broke
because my 4.010 was compiled under ISC 386/ix and I am running it on
SCO Unix 3.2 2 i386.  I've been putting off updating to patch 19 and
recompliling---this seemed like a good excuse to do it.  No help.

Both were compiled with gcc version 1.40.

DIRENT is configured:
#define	I_DIRENT	/**/

Any advice would be appreciated---but a fix would be better \smiley.

-- Script

opendir(dot, '.') || die "Could not open dot\n";
@file = readdir(dot);
foreach (@file) {
    print ("$_\n");
}

-- perl output
t
mp
.init
u
.coming
x
cal
t.going
move
i

-- ls
alt
comp
db.init
gnu
in.coming
local
out.going
remove
sci
xxx

====  A diffentent subject ====

BTW, if Larry is listening, I had to fix the following in array.c to
prevent core dumps.  I would guess that even though the pointer "ar" is not
null the pointer to malloced memory is and the SCO free() complains by
dumping core---guess not so safe under SCO.

void
afree(ar)
register ARRAY *ar;
{
    register int key;

    if (!ar)
	return;
    /*SUPPRESS 560*/
    if (key = ar->ary_array - ar->ary_alloc) {
	ar->ary_max += key;
	ar->ary_array -= key;
    }
    if (ar->ary_flags & ARF_REAL) {
	for (key = 0; key <= ar->ary_max; key++)
	    str_free(ar->ary_array[key]);
    }
    if (ar->ary_magic)		/*dumped here - FIXED HERE*/
	str_free(ar->ary_magic);
    if (ar->ary_alloc)		/*FIXED HERE also jic*/
	Safefree(ar->ary_alloc);
    Safefree(ar);
}

Thanks in advance.

Cheers,
joel
-- 
     ==================================================================
     ||               T E C H N E   R E S E A R C H                  ||
     ||  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++  ||
     ||                     Joel Rosi-Schwartz                       ||
     ||   Hildorien House            +   Email: joel@abigale.UUCP    ||
     ||   12 Waverley Way            +   Phone: +44 (734) 730.260    ||
     ||   Finchampstead, Wokingham   +   Fax:   +44 (734) 730.272    ||
     ||   Berkshire RG11 4YD (UK)    +                               ||
     ==================================================================
Newsgroups: comp.lang.perl
From: merlyn@iWarp.intel.com (Randal L. Schwartz)
Subject: Re: keeping track of file handles in assoc array
Keywords: associative array open files
Reply-To: merlyn@iWarp.intel.com (Randal L. Schwartz)
Organization: Stonehenge; netaccess via Intel, Beaverton, Oregon, USA
Date: Fri, 10 Apr 1992 04:39:06 GMT

In article <1992Apr10.023821.1147@unilabs.uucp>, chare@unilabs (Chris Hare) writes:
| What I have coded is this:
| 
| 	 if ( ! defined( $FileDes{$Category} ) )
| 	    {
| 	    printf "ADVISORY : opening price file for $Category\n";
| 	    open( $FileDes{$Category}, ">$Category.$Output" );
| 	    }
| 	 select( $FileDes{$Category} );
|          printf "$Category:$ItemNo:$Desc1:$Desc2:";
| 	 printf "$Price1:$Price2:$Price3:$Replace:";
| 	 printf "$QtyOnHand:$QtyCommitt:$QtyOnOrder\n";
| 	 select( STDOUT );
| 
| The if ALWAYS fails, resulting in the file being re-opened every time.
| 
| So, 
| 	1) How can I save the filehandle in the associative array
| 	   so that the subsequent test will succeed;
| 
| 	2) Any other ideas?  I may need up to 20 files open, so I need to do
| 	it this way.

You never set $FileDes{$Category} = ##something##!!

open does *not* make up filehandles for you.  You must name them
something.  The fastest way would be to have $nexthandle =
"somename00000000"; early in your program, and $FileDes{$Category} =
$nexthandle++; just before the open.

Or, just look at 'cacheout.pl' in the library, and avoid re-inventing
the wheel.

@m[0..255]=0..255;@m[65..90,97..122]=(78..90,65..77,110..122,97..109);print pack("C*",@m[unpack("C*","Whfg nabgure Crey unpxre,")])
-- 
/=Randal L. Schwartz, Stonehenge Consulting Services (503)777-0095 ==========\
| on contract to Intel's iWarp project, Beaverton, Oregon, USA, Sol III      |
| merlyn@iwarp.intel.com ...!any-MX-mailer-like-uunet!iwarp.intel.com!merlyn |
\=Cute Quote: "Intel: putting the 'backward' in 'backward compatible'..."====/
From: rahardj@ccu.umanitoba.ca (Budi Rahardjo)
Newsgroups: comp.lang.perl
Subject: Re: Perl for MS-DOS?
Date: 13 Apr 92 14:49:56 GMT
Organization: University of Manitoba, Winnipeg, Canada

hochman@milton.u.washington.edu (Daryl Hochman) writes:
...
>  Does there exist a version of Perl for ms-dos at an ftp site?
>  If there is, how do I go about getting and installing it?

Anonymous ftp : simtel20 and its mirrors (oak.oakland.edu, wuarchive/
wustl.edu) under msdos/perl directory (or <msdos.perl> on simtel20).
or ftp.ee.umanitoba.ca in pub/msdos/perl directory.

--  budi
-- 
Budi Rahardjo <rahardj@ccu.umanitoba.ca>
Unix Support - Computer Services - University of Manitoba
Newsgroups: comp.lang.perl
From: Tom Christiansen <tchrist@convex.COM>
Subject: Re: Syntax of delete
Originator: tchrist@pixel.convex.com
Reply-To: tchrist@convex.COM (Tom Christiansen)
Organization: CONVEX Realtime Development, Colorado Springs, CO
Date: Mon, 13 Apr 1992 15:45:23 GMT
X-Disclaimer: This message was written by a user at CONVEX Computer
              Corp. The opinions expressed are those of the user and
              not necessarily those of CONVEX.

From the keyboard of rbj@uunet.uu.net (Root Boy Jim):
:krab@iesd.auc.dk (Kresten Krab Thorup) writes:
:?Root Boy Jim wrote:
:?
:?	I tried to write "delete($foo{'bar'});"
:?	
:?	Perl complained about the parens. Why?
:?
:?The delete operation expects an lvalue as it's operand.  By enclosing
:?the $foo{'bar'} in parenthesis, you make it an rvalue, namely a list
:?with one element in it, the value of $foo{'bar'}.
:?	This list will be anonymous, ie only live on the runtime
:?stack, and hence, it makes no sense to delete it.
:
:Sorry, I don't buy that. Then why does "chop($foo = $bar);" work?
:Or "($foo = $bar) =~ s/qaz/wsx/;"

Because assigment returns an lvalue, not an rvalue, of course.  

    DB> print (++($foo = 'bar'))
    bas


:Either way you answer, perl is inconsistent.

Perhaps less so than you sem to thinkk.

--tom
From: lwall@netlabs.com (Larry Wall)
Newsgroups: comp.lang.perl
Subject: Re: Proposal: Interactive Perl Tutorial
Date: 10 Apr 92 00:45:55 GMT
Organization: NetLabs, Inc.

In article <5fpj!8.jfh@netcom.com> jfh@netcom.com (Jack Hamilton) writes:
: One problem is that it probably won't help MS-DOS users, since we don't
: have curseperl.  Possibly OS/2 and any other non-Unix implementation would
: have the same problem.  
: 
: But it won't be the first time we've been ignored.  

I hope you're not expecting me to do something about that.  I'm not
an MS-DOS hacker, nor do I even have MS-DOS at home.  I'm entirely reliant
on other folk's good natures to port anything to MS-DOS.  I'm not a
software company, appearances to the contrary.

Larry
Newsgroups: comp.lang.clos
From: moon@cambridge.apple.com (David A. Moon)
Subject: Re: CLOS With-Accessors
Organization: The Ohio State University Department of Computer and Information Science
Date: Mon, 13 Apr 1992 14:57:47 GMT

I'll answer since you sent this specifically to me, although I'm not sure
I can shed any light on your questions.

> Date: Mon, 13 Apr 1992 09:52-0000
> From: Guy Footring <Guy@AVON.sltd.dialnet.symbolics.com>
>     > The second quote has me even more confused.  It may be intended just to
>     > restate the restriction in the first quote.  This sense of the term
>     > "accessor" is never defined precisely in the standard
> 
> I think that this is my main problem for my first query.  I got the feeling
> that "accessor" was refering to accessors defined by DEFCLASS not (necessarily)
> user supplied equivalents, but I couldn't quite find anything that clarified 
> this definitively for either interpretation.

Don't look at me, I never understood what that sentence is trying to say.

> Now I'm back to my first question again, which I guess can be summarised as
> "Is there anything special about the accessors defined by DEFCLASS?"

Yes and no.  (I bet you find that real helpful!)

A user is supposed to be able to get exactly the same effect writing out
accessors explicitly using DEFMETHOD and SLOT-VALUE.  However, many 
implementations implement DEFCLASS-generated accessors more efficiently in space 
and/or speed than they implement ones written out explicitly by the user.  Also 
in implementations with a metaobject protocol the class of the method metaobject 
for an accessor method is usually different from the class of a user-defined 
method.  However, this is outside the scope of the Common Lisp standard.

> A related question: Are the following two DEFCLASS forms guaranteed to be 
> equivalent in all conforming Lisp implementations?
> 
> (defclass A ()
>   ((slot1 :accessor slot1)))
> 
> (defclass A ()
>   ((slot1 :reader slot1 :writer (setf slot1))))

Yes.  This can be inferred from the specifications of the :accessor, :reader, and 
:writer slot-options.  All three of these slot options create "accessor methods."  
:accessor is just an abbreviation.
Newsgroups: comp.lang.clos
From: imai@sakura.bpe.osaka-u.ac.jp (Katsunobu Imai)
Subject: Re:  redefining keys
Organization: The Ohio State University Department of Computer and Information Science
Date: Mon, 6 Apr 1992 12:05:27 GMT


> When I push such keys in MCL, it beeps even if there is a char in my
> font which is associated with the key. (It works into to keyboard
> accessory).

Even if function-keys do not work in MCL, you can define 
as fred commands.

(def-fred-command (:function #\c) #'(lambda (d) (format d "~A" #\200)))

I don't have Extended-keyboard. But according to MCL manual,
this binds the F12 key to a command that prints code 200 char.

See page 375 of the 2.0b1 manual.

-----------
Katsunobu Imai
imai@bpe.osaka-u.ac.jp
Newsgroups: comp.lang.clos
From: tk@HUNNY.research.ATt.COM (Thomas Kirk)
Subject: Re: no-applicable-method
Reply-To: tk@research.att.com
Organization: The Ohio State University Department of Computer and Information Science
Date: Thu, 16 Apr 1992 11:53:00 GMT

    From: Barry Margolin <barmar@Think.COM>
    Subject: Re: no-applicable-method
    To: tk@research.att.com
    Cc: mh5l+@andrew.cmu.edu, comp.lang.clos@cis.ohio-state.edu
    In-Reply-To: <19920416170513.9.TK@PETZL.research.att.com>
    Message-Id: <19920416182843.6.BARMAR@occam.think.com>

	Date: Thu, 16 Apr 1992 13:05 EDT
	From: Thomas Kirk <tk@HUNNY.research.att.com>

	    From: barmar@think.com (Barry Margolin)

	    However, this won't work if you're trying to do this to generic functions
	    that you don't define yourself, since you can't override their metaclasses.

	this will work fine. assuming that you can get at the generic functions,
	just change the class of the generic function object, like so:

    Sorry, this isn't permitted.  According to p.197 of "The Art of the
    Metaobject Protocol", third paragraph, "the class of a generic function
    metaobject may not be changed...".

						    barmar

true enough. however, given that (a) this is a useful thing to do,
and (b) many extant CLOS implementations allow it, it may be worthwhile 
to relax this restriction. it's in the spirit of the specification in 
the AMOP to consider such improvements, unless there's some convincing 
rationale for leaving it alone (perhaps there is, but i can think of 
no reason myself).

Newsgroups: comp.lang.clos