From mboxrd@z Thu Jan 1 00:00:00 1970 From: taylanbayirli@gmail.com (Taylan Ulrich =?utf-8?Q?Bay=C4=B1rl=C4=B1?= =?utf-8?Q?=2FKammer?=) Subject: Re: Some macros to make package definitions prettier Date: Wed, 25 Feb 2015 20:46:05 +0100 Message-ID: <87vbip6agy.fsf@taylan.uni.cx> References: <874mqa6iz4.fsf@taylan.uni.cx> <20150225181217.GB6653@debian.math.u-bordeaux1.fr> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:44922) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YQhuO-0006aa-FK for guix-devel@gnu.org; Wed, 25 Feb 2015 14:46:13 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YQhuK-0004r1-GD for guix-devel@gnu.org; Wed, 25 Feb 2015 14:46:12 -0500 Received: from mail-we0-x236.google.com ([2a00:1450:400c:c03::236]:34074) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YQhuK-0004qJ-A2 for guix-devel@gnu.org; Wed, 25 Feb 2015 14:46:08 -0500 Received: by wesq59 with SMTP id q59so5841899wes.1 for ; Wed, 25 Feb 2015 11:46:07 -0800 (PST) In-Reply-To: <20150225181217.GB6653@debian.math.u-bordeaux1.fr> (Andreas Enge's message of "Wed, 25 Feb 2015 19:12:17 +0100") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Andreas Enge Cc: guix-devel@gnu.org Andreas Enge writes: > Actually, I do not like the imperative, non-functional style of these > syntax rules. For me, they rather obscure what is happening. For those not very familiar with Scheme, the sequential notation will be significantly more readable. For those familiar with Scheme, it should be trivial to learn. Wouldn't you say it's worth it in the long run? And just to chip in my personal opinion, I find the deeply nested and reverse notation to be fairly ugly. :-) The notation I propose builds on the idea of a pipeline, which is still purely functional, and I suspect it's more intuitive to most humans even if they know FP well. > The general drawback of such syntax rules is that newcomers do not see > all the inner cogwheels of the system. So on one hand, one gains that > contributing packages becomes easier; on the other hand, understanding > what is actually happening becomes harder, and also learning scheme > through guix becomes more difficult as we move to our own domain > specific language. Indeed, I agree. However, I think these are simple enough macros, such that if the manual just shows with an example what their use expands to, it should be enough for those interested to quickly grasp it. Taylan