From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dmitry Antipov Newsgroups: gmane.emacs.devel Subject: Re: RFC: User-defined pseudovectors Date: Thu, 10 Oct 2013 17:41:26 +0400 Message-ID: <5256AE86.20500@yandex.ru> References: <85k3hlcqvm.fsf@junk.nocrew.org> <5256A2FD.4020208@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1381412512 12446 80.91.229.3 (10 Oct 2013 13:41:52 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 10 Oct 2013 13:41:52 +0000 (UTC) Cc: emacs-devel@gnu.org To: Lars Brinkhoff Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Oct 10 15:41:52 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1VUGUy-0004KC-CM for ged-emacs-devel@m.gmane.org; Thu, 10 Oct 2013 15:41:52 +0200 Original-Received: from localhost ([::1]:47184 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VUGUy-0008K0-0H for ged-emacs-devel@m.gmane.org; Thu, 10 Oct 2013 09:41:52 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48937) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VUGUn-00088S-80 for emacs-devel@gnu.org; Thu, 10 Oct 2013 09:41:48 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VUGUe-0006zQ-0I for emacs-devel@gnu.org; Thu, 10 Oct 2013 09:41:41 -0400 Original-Received: from forward5h.mail.yandex.net ([84.201.186.23]:54965) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VUGUd-0006zJ-Lr for emacs-devel@gnu.org; Thu, 10 Oct 2013 09:41:31 -0400 Original-Received: from smtp3h.mail.yandex.net (smtp3h.mail.yandex.net [84.201.186.20]) by forward5h.mail.yandex.net (Yandex) with ESMTP id 13FC3D02009; Thu, 10 Oct 2013 17:41:28 +0400 (MSK) Original-Received: from smtp3h.mail.yandex.net (localhost [127.0.0.1]) by smtp3h.mail.yandex.net (Yandex) with ESMTP id B29B31B41B23; Thu, 10 Oct 2013 17:41:28 +0400 (MSK) Original-Received: from unknown (unknown [37.139.80.10]) by smtp3h.mail.yandex.net (nwsmtp/Yandex) with ESMTP id gT8CyguP39-fSjGqhnb; Thu, 10 Oct 2013 17:41:28 +0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1381412488; bh=0ASOnH5E+b/TSb8WC9NDxkv/NLWR/UxLIcleptOsGT4=; h=Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject: References:In-Reply-To:Content-Type:Content-Transfer-Encoding; b=nmyD8K9Xl8jvXo9ViGL/u29GW5ToqaTsp8l3veIpXtMNJ3zN67Zd5Z7Q/RfS2vb/K FxXIzVPMpYHGebkkvlmPFtPURWcU1MYnNbyutQBry0R2jA83Q7aB4Bz4vJNoXrB0HF tRspcRzZDY3JZWJ/Y4IfDpfTvW+o+kpaNEBaGKHM= Authentication-Results: smtp3h.mail.yandex.net; dkim=pass header.i=@yandex.ru User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.0 In-Reply-To: <5256A2FD.4020208@yandex.ru> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] [fuzzy] X-Received-From: 84.201.186.23 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:164062 Archived-At: On 10/10/2013 04:52 PM, Dmitry Antipov wrote: >> The gist of my patch is to add a new type of pseudovector which is >> like a normal vector, except the first element holds a symbol which is >> its Lisp type. So type-of returns whatever is in the first slot. >> This may sound slightly reckless, and probably is. It's just a first >> shot. > > Why make-typed-pseudovector & the rest can't be done in elisp? > > (Look at lisp/emacs-lisp/timer.el to see how some non-trivial > things can be implemented on top of plain vector). Plus, if we really need the ability to add builtin Lisp types to interface foreign DSOs, I'll vote to design this on top of Lisp_Misc. Dmitry