From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Vibhav Pant Newsgroups: gmane.emacs.devel Subject: Re: master fffd4ff: ; etc/TODO: Remove 'switch' item, as it is now implemented. Date: Tue, 14 Feb 2017 11:52:34 +0530 Message-ID: References: <20170213172606.5097.68821@vcs0.savannah.gnu.org> <20170213172606.E451B232B9@vcs0.savannah.gnu.org> <87k28tsn57.fsf@holos> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Trace: blaine.gmane.org 1487053386 14950 195.159.176.226 (14 Feb 2017 06:23:06 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 14 Feb 2017 06:23:06 +0000 (UTC) Cc: "emacs-devel@gnu.org" To: Mark Oteiza Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Feb 14 07:23:01 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cdWVw-0003MF-Ho for ged-emacs-devel@m.gmane.org; Tue, 14 Feb 2017 07:23:00 +0100 Original-Received: from localhost ([::1]:32939 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdWW1-0002Nb-Nj for ged-emacs-devel@m.gmane.org; Tue, 14 Feb 2017 01:23:05 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56933) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdWVs-0002MT-Vm for emacs-devel@gnu.org; Tue, 14 Feb 2017 01:22:58 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cdWVr-0005Do-N5 for emacs-devel@gnu.org; Tue, 14 Feb 2017 01:22:56 -0500 Original-Received: from mail-yw0-x230.google.com ([2607:f8b0:4002:c05::230]:33893) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cdWVr-0005Dc-Gx for emacs-devel@gnu.org; Tue, 14 Feb 2017 01:22:55 -0500 Original-Received: by mail-yw0-x230.google.com with SMTP id w75so61415755ywg.1 for ; Mon, 13 Feb 2017 22:22:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=iBUD+yneBaXIAtaTYBEOK5gNuJs0PGAzsqP154kYYo0=; b=b4InaA70kpS2jO3OjuBsL6QeS6z1BfdZpv4Mn8Y30IhHv+0ymPXZXhj3ASvV+Qggib 9vQddwxyHb1ht7aqBXjyPIief6Lqnh5orDeFON428/d3dYVc/OVhIZgF1pcdNEfyz575 Nd9sRe+Jd7NXVC4Khx7UKzLKE2QLQfN1X6sYPYnMl/G5Q2Yk7WipTSORKXKZhaD6LRqJ V70gW6+3B9OK5rHqu3JLDp6fmVkfanid3eXYPs36xRGwGJGr9wQfjGgaJ5a+hY6MaDsE mfzEfVbGkN4mVIEduxhf3tJ5Ish2jG70znoUw1XnIDnQY4mpGT9rTxOnkdgH525ZODgw BPsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=iBUD+yneBaXIAtaTYBEOK5gNuJs0PGAzsqP154kYYo0=; b=Wm6GTBniyRp0JP7jSynH2CbZKqqLn742eusGrdJNpbHdGT7OCLaL3kj6pF4Gai3Y21 9Y81az1F00XaeBB0ITL7SEXn8/Z3+tfE+PCe839IWEYuCyDLtUFoYrsOOtVEiXNcPOv8 2Q9C8ZCbMpi5eCisYah8On6K7WjBepiSa46i21/kLkE2MryywaBHavwCZkyXM7C7A1Gs KuXz+g9YOwNhhZyjN+RlS778/UzWCqQAhMMvIwcfesnnaZdHJphWUExYqBjjbkB0R6IK LCl/g1ZiVoOhwEVG3XnaItBRr/MlECq+MIdKlUIKrg4eE+dzjoe39Z3v/NhYqKSWgH5h 1PMA== X-Gm-Message-State: AMke39n+XpXESLH23fBCDcyVZnZ7w8mBCjeGDA3oZSGvmq2lzp5GnrcjTzKy5OkZKce7MqVQFK5cq2unksMdNA== X-Received: by 10.13.218.195 with SMTP id c186mr20979004ywe.15.1487053374795; Mon, 13 Feb 2017 22:22:54 -0800 (PST) Original-Received: by 10.129.153.77 with HTTP; Mon, 13 Feb 2017 22:22:34 -0800 (PST) In-Reply-To: <87k28tsn57.fsf@holos> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:4002:c05::230 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:212362 Archived-At: On Tue, Feb 14, 2017 at 4:40 AM, Mark Oteiza wrote: > > vibhavp@gmail.com (Vibhav Pant) writes: >> diff --git a/etc/TODO b/etc/TODO >> index fc442f9..b102bdf 100644 >> --- a/etc/TODO >> +++ b/etc/TODO >> @@ -35,20 +35,6 @@ Change src/bytecode.c so that calls from byte-code functions to byte-code >> functions don't go through Ffuncall/funcall_lambda/exec_byte_code but instead >> stay within exec_byte_code. >> >> -** Add new 'switch' byte-code >> -This byte-code would take one argument from the stack (the object to test) >> -and one argument from the constant-pool (a switch table, implemented as an >> -'eq' hash table) and would jump to the "label" contained in the hash table. >> - >> -Then add a 'case' special-form that can be compiled to this byte-code. >> -This would behave just like cl-case, but instead of expanding to cond+eq it >> -would be its own special form and would be compiled specially. >> - >> -Then change pcase to use 'case' when applicable. >> - >> -Then change the byte-compiler to recognize (cond ((eq x 'foo) bar) ...) >> -and turn it into a 'case' for more efficient execution. > > What about the second and third items? Both pcase and cl-cond are macros that expand to a cond form, so they also compile to switch bytecode. -- Vibhav Pant vibhavp@gmail.com