From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.devel Subject: Re: Search Elisp buffers with pcase patterns Date: Wed, 19 Aug 2015 20:33:40 +0200 Message-ID: <87lhd7f7qz.fsf@web.de> References: <87h9ojj918.fsf@web.de> <87lhd7nz6a.fsf@lifelogs.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1440121877 2288 80.91.229.3 (21 Aug 2015 01:51:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 21 Aug 2015 01:51:17 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Aug 21 03:51:11 2015 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 1ZSbU6-0007I7-8I for ged-emacs-devel@m.gmane.org; Fri, 21 Aug 2015 03:51:10 +0200 Original-Received: from localhost ([::1]:39160 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZSbU5-0002QP-K4 for ged-emacs-devel@m.gmane.org; Thu, 20 Aug 2015 21:51:09 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:54229) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZS8BS-0008CN-IW for emacs-devel@gnu.org; Wed, 19 Aug 2015 14:33:59 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZS8BN-0001yW-JO for emacs-devel@gnu.org; Wed, 19 Aug 2015 14:33:58 -0400 Original-Received: from plane.gmane.org ([80.91.229.3]:48404) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZS8BN-0001xv-Di for emacs-devel@gnu.org; Wed, 19 Aug 2015 14:33:53 -0400 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1ZS8BH-0000uo-SX for emacs-devel@gnu.org; Wed, 19 Aug 2015 20:33:47 +0200 Original-Received: from ip-90-186-131-46.web.vodafone.de ([90.186.131.46]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 19 Aug 2015 20:33:47 +0200 Original-Received: from michael_heerdegen by ip-90-186-131-46.web.vodafone.de with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 19 Aug 2015 20:33:47 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 29 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: ip-90-186-131-46.web.vodafone.de User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) Cancel-Lock: sha1:yaYf+hAymv7diXfeJfmSyrmBD1I= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 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:189013 Archived-At: Ted Zlatanov writes: > I would love a lot more examples. You mean examples of usage? That should be doable. Any suggestions? > I'd love it to be generalized for other languages. I don't know if you > think that makes sense, but I can imagine doing similar search or > search+replace work against XML, HTML, JSON, or other structured data > formats. The package cries for that generalization, but I don't know how to do it in a reasonable and efficient way. For Elisp, I can just call `read' to get a suitable syntax tree. For other languages, I would also need something like an abstract syntax tree. Prior versions of semantic could generate ASTs, but they dismissed it because it was too slow. AFAIK I can maximally get something like a flat tag list from semantic. That's not enough to expand the thing to other languages in a reasonable way. But if someone has an enlightening idea... Regards, Michael.