From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id 2FjeHYIl2GLjQgEAbAwnHQ (envelope-from ) for ; Wed, 20 Jul 2022 17:55:46 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id uA/4HIIl2GJVbgEAG6o9tA (envelope-from ) for ; Wed, 20 Jul 2022 17:55:46 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 413072D717 for ; Wed, 20 Jul 2022 17:55:46 +0200 (CEST) Received: from localhost ([::1]:39108 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oEC37-00045c-Co for larch@yhetil.org; Wed, 20 Jul 2022 11:55:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44506) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oEC2d-0003zn-CB for guix-devel@gnu.org; Wed, 20 Jul 2022 11:55:15 -0400 Received: from mx1.riseup.net ([198.252.153.129]:41810) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oEC2a-0002Uz-W0 for guix-devel@gnu.org; Wed, 20 Jul 2022 11:55:14 -0400 Received: from fews2.riseup.net (fews2-pn.riseup.net [10.0.1.84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mail.riseup.net", Issuer "R3" (not verified)) by mx1.riseup.net (Postfix) with ESMTPS id 4Lp0dp4sR2zDqTL; Wed, 20 Jul 2022 15:55:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak; t=1658332510; bh=QLRDldAfm2T+CKs3iEdDwVfJpk5oIyK7sDAW5YCAVLg=; h=References:From:To:Cc:Subject:Date:In-reply-to:From; b=EKXOAier/Gn0PsvJW9PLMbigChaOpg5NmcAe6YAbFpA7miER7zcK6N0RPnrygpSLG jAa4cBE9evz0ihdVhEKzGM7zc7qEZuj6/C020qfq5u4c2v/VrUJoyfbou1//2Tu1md eWhTRR8Um472S929lvGfsmw0Q1c24p1rmNq2dYnY= X-Riseup-User-ID: 0926A72EDFDE4ACE3BC1091ABCDDE7F1F9C7C558DA3B37A9366B1AD062048BDB Received: from [127.0.0.1] (localhost [127.0.0.1]) by fews2.riseup.net (Postfix) with ESMTPSA id 4Lp0dn5Vd2z20cj; Wed, 20 Jul 2022 15:55:09 +0000 (UTC) References: <20220720005325.GB24891@gac> From: Csepp To: jgart Cc: guix-devel@gnu.org Subject: Re: Guix Without Scheme Date: Wed, 20 Jul 2022 17:45:51 +0200 In-reply-to: <20220720005325.GB24891@gac> Message-ID: <87v8rrn5ie.fsf@riseup.net> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=198.252.153.129; envelope-from=raingloom@riseup.net; helo=mx1.riseup.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list 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+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1658332546; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=FqmPRvppg3TGHHHXNOwv0nNLJC757GwjvBEyYfrdoKc=; b=mnBwetFQzkMd+F6k2qDQc9Ial8wTOr0iDRz+IZ4clYyGD7wW0AzYfxFH3h50a6yDylT9WN tI483HyzK2mFS9UloFPPD/yeqZ7y5WAolT1Y1SpdyLaqq7WF07sRDTbIGmaVktvb1xS0P/ UyMZNJy+WqYDMGkgC9B+JnDBAeqHfkf1mwbOrDEdO0+PaOWXSy9xUTz9C07LCN6dmjdtj5 vHYnwJTNI44MQavEZgw/7D9a3RKo/iYeSL8tnOQmfo2iKpLy7wfOIcQffUyutIoqSfcg9d 9e8BTP0HtrRo0lvnsb8EZZVB9HYwPofD9W5Frr9d+TsDTkCUQ75+rtNeCSgJ5w== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1658332546; a=rsa-sha256; cv=none; b=XLkaQDPrqyYYyoYBTVYv3K1HeiGy01ByDLLmZyeQYhdtSBd7E267JUwCdO/1DiQshPYlKH d103//rWnjR/xGuZ83nllqfNzY/1zBF9Wg4/CsM4I5WVLSUWJS7LPjRLsb/4ZkO5xSv6Pp XSzY+l3Oc0rf5t8vO7c+ymxi5vBgBe5IH8FvBr+j1p1Cbri0nhI3iRJvwhAzRlZivw9dsb mSGxRjIknXpTy4PGRW3kqbyfVoeWzdG5uWwkTGsoD7DkK2JbvWjttm0vs2aw7TbeZ7wws0 Oai/0OSl4KdTqe0nkJ7O9i7xSJ5XOTyo88YuIk0JNmtQXnaprsxstTvKBKImhA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=riseup.net header.s=squak header.b=EKXOAier; dmarc=pass (policy=none) header.from=riseup.net; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -4.73 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=riseup.net header.s=squak header.b=EKXOAier; dmarc=pass (policy=none) header.from=riseup.net; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 413072D717 X-Spam-Score: -4.73 X-Migadu-Scanner: scn0.migadu.com X-TUID: OkzT84/Qbl0k jgart writes: > Hi Guixers, > > I just wanted to share this presentation that Singpolyma gave titled "Guix Without Scheme": > > https://archive.org/details/singpolyma-guix-without-scheme > > Through the course of the presentation, singpolyma demos how to build > a Guix package with javascript as well as lua. > > What do people think of leveraging Guile's compiler tower to write Guix > packages in lua, javascript, python, and other languages? > > nix perhaps? Might be meta fun to write a Guix package in a guile implemented nix frontend. > > Maybe we should think of Scheme as just one frontend among many to Guile's compiler tower? > > Is it a future goal for Guix to fully support this unique feature? > > all best, > > jgart I like Lua but this doesn't seem to be a wise use of developer resources. Those languages have subtle differences that would surface if this idea was pursued further. The most obvious one: Scheme is very permissive with what you can name your variables, while all the others basically follow C's restrictions. How would you map those names? It is not possible to create a bijection between sets of different cardinality. And then we haven't gotten into how the module systems are different or how record systems aren't even standardized among Schemes. If you want to experiment with mixing languages, Racket is likely a better starting point.