From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/47199 Path: main.gmane.org!not-for-mail From: Kai.Grossjohann@CS.Uni-Dortmund.DE (Kai =?iso-8859-1?q?Gro=DFjohann?=) Newsgroups: gmane.emacs.gnus.general Subject: Re: Gnus always loads cl Date: Tue, 15 Oct 2002 21:27:15 +0200 Organization: University of Dortmund, Germany Sender: owner-ding@hpc.uh.edu Message-ID: <87k7kjwlik.fsf@crybaby.cs.uni-dortmund.de> References: <87u1jolt7k.fsf@crybaby.cs.uni-dortmund.de> <87adlgb3w7.fsf@crybaby.cs.uni-dortmund.de> <87hefnu7sn.fsf@crybaby.cs.uni-dortmund.de> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: main.gmane.org 1034710270 26872 80.91.224.249 (15 Oct 2002 19:31:10 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Tue, 15 Oct 2002 19:31:10 +0000 (UTC) Return-path: Original-Received: from malifon.math.uh.edu ([129.7.128.13]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 181XPA-0006yg-00 for ; Tue, 15 Oct 2002 21:31:01 +0200 Original-Received: from sina.hpc.uh.edu ([129.7.128.10] ident=lists) by malifon.math.uh.edu with esmtp (Exim 3.20 #1) id 181XLu-0007GA-00; Tue, 15 Oct 2002 14:27:38 -0500 Original-Received: by sina.hpc.uh.edu (TLB v0.09a (1.20 tibbs 1996/10/09 22:03:07)); Tue, 15 Oct 2002 14:28:21 -0500 (CDT) Original-Received: from sclp3.sclp.com (qmailr@sclp3.sclp.com [209.196.61.66]) by sina.hpc.uh.edu (8.9.3/8.9.3) with SMTP id OAA03110 for ; Tue, 15 Oct 2002 14:28:08 -0500 (CDT) Original-Received: (qmail 27801 invoked by alias); 15 Oct 2002 19:27:19 -0000 Original-Received: (qmail 27796 invoked from network); 15 Oct 2002 19:27:19 -0000 Original-Received: from quimby.gnus.org (80.91.224.244) by gnus.org with SMTP; 15 Oct 2002 19:27:19 -0000 Original-Received: from news by quimby.gnus.org with local (Exim 3.12 #1 (Debian)) id 181YBu-0008VM-00 for ; Tue, 15 Oct 2002 22:21:22 +0200 Original-To: ding@gnus.org Original-Path: not-for-mail Original-Newsgroups: gnus.ding Original-Lines: 55 Original-NNTP-Posting-Host: p5087760d.dip.t-dialin.net Original-X-Trace: quimby.gnus.org 1034713282 32695 80.135.118.13 (15 Oct 2002 20:21:22 GMT) Original-X-Complaints-To: usenet@quimby.gnus.org Original-NNTP-Posting-Date: 15 Oct 2002 20:21:22 GMT User-Agent: Gnus/5.090008 (Oort Gnus v0.08) Emacs/21.3.50 (i686-pc-linux-gnu) Cancel-Lock: sha1:56oXUXomBdN8M6TtFmnHX8olo/0= Precedence: list X-Majordomo: 1.94.jlt7 Xref: main.gmane.org gmane.emacs.gnus.general:47199 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:47199 Katsumi@Yamaoka.cc writes: >>>>>> In <87hefnu7sn.fsf@crybaby.cs.uni-dortmund.de> >>>>>> Kai.Grossjohann@CS.Uni-Dortmund.DE (Kai Großjohann) wrote: > >>> (unless (and (fboundp 'gethash) (fboundp 'hash-table-count) >>> (fboundp 'make-hash-table) (fboundp 'mapc) >>> (fboundp 'puthash)) >>> (require 'cl) >>> (unless (fboundp 'puthash) >>> (defalias 'puthash 'cl-puthash))) >>> >>> However, if such a thing is required, my will inclines to >>> forsake Emacs 20 users. Do you have any other ideas? > > Kai> Why forsake Emacs 20 users? The code is not that terrible :-) > > Since I'm not using Emacs 20 usually, I come to feel it > troublesome. But we cannot forsake Meadow users. ;-) Well. Hm. How to make it prettier? Maybe this one: (when (memq nil (mapcar 'fboundp '(gethash hash-table make-hash-table mapc puthash))) (require 'cl) (unless (fboundp 'puthash) (defalias 'puthash 'cl-puthash))) > Kai> And then, maybe it's sufficient to test some of those functions > Kai> instead of all of them -- we expect them to be defined in the same > Kai> file anyway, right? > > I make an issue of only cl run-time functions and I graspe all > of them. Which function do you think we can remove from a > subject of examination? I don't know. As a zero-th approximation, any function that is not fboundp in Emacs 20 will do. Maybe make-hash-table is the most basic function. (Without a hash table, you cannot do anything with it, so any Emacs which provides hash tables will also provide make-hash-table, I guess.) > By the way, I've made gnus-clfns.el in T-gnus (which is base on > Oort Gnus, using FLIM and SEMI for MIME functions, using APEL > to support Mule 19.34 as well as Emacs 20/21). That file > provides compiler macros for cl run-time functions as it is done > by dgnushack.el in Oort Gnus. If such demand increases, we > should probably do the same thing also in Oort Gnus. Whee. dgnushack is really weird. But if it's necessary... kai -- ~/.signature is: umop ap!sdn (Frank Nobis)