unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Guix Without Scheme
@ 2022-07-20  5:53 jgart
  2022-07-20 15:45 ` Csepp
  0 siblings, 1 reply; 4+ messages in thread
From: jgart @ 2022-07-20  5:53 UTC (permalink / raw)
  To: Guix Devel

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


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Guix Without Scheme
  2022-07-20  5:53 Guix Without Scheme jgart
@ 2022-07-20 15:45 ` Csepp
  2022-07-20 21:02   ` Munyoki Kilyungi
  0 siblings, 1 reply; 4+ messages in thread
From: Csepp @ 2022-07-20 15:45 UTC (permalink / raw)
  To: jgart; +Cc: guix-devel


jgart <jgart@dismail.de> 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.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Guix Without Scheme
  2022-07-20 15:45 ` Csepp
@ 2022-07-20 21:02   ` Munyoki Kilyungi
  2022-07-21 10:23     ` Csepp
  0 siblings, 1 reply; 4+ messages in thread
From: Munyoki Kilyungi @ 2022-07-20 21:02 UTC (permalink / raw)
  To: Csepp; +Cc: jgart, guix-devel

[-- Attachment #1: Type: text/plain, Size: 2133 bytes --]

Hi Csepp!

Csepp <raingloom@riseup.net> anaandika:

> jgart <jgart@dismail.de> 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.
>

Using other languages, if simple enough, would be
a nice way to have developers who fear the parens
dip their toe in GNU Guix using Guile.  Nice for
intro workshops/talks - maybe.

That said - and from a very biased view - I think
Scheme is simple enough for anyone, and outside
hobby or exploratory programming, should be
primarily used for GNU Guix hacking.  Perhaps,
over time that may change.

-- 
(Life is like a pencil that will surely run out,
    but will leave the beautiful writing of life.)
(D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
    (hkp://keys.gnupg.net))

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 865 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Guix Without Scheme
  2022-07-20 21:02   ` Munyoki Kilyungi
@ 2022-07-21 10:23     ` Csepp
  0 siblings, 0 replies; 4+ messages in thread
From: Csepp @ 2022-07-21 10:23 UTC (permalink / raw)
  To: Munyoki Kilyungi; +Cc: Csepp, jgart, guix-devel


Munyoki Kilyungi <me@bonfacemunyoki.com> writes:

> [[PGP Signed Part:Undecided]]
> Hi Csepp!
>
> Csepp <raingloom@riseup.net> anaandika:
>
>> jgart <jgart@dismail.de> 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.
>>
>
> Using other languages, if simple enough, would be
> a nice way to have developers who fear the parens
> dip their toe in GNU Guix using Guile.  Nice for
> intro workshops/talks - maybe.
>
> That said - and from a very biased view - I think
> Scheme is simple enough for anyone, and outside
> hobby or exploratory programming, should be
> primarily used for GNU Guix hacking.  Perhaps,
> over time that may change.

For non-sexpy programming we already have different syntaxes for Scheme,
like Wisp.  Those don't change the semantics of the language though.


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-07-21 10:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-20  5:53 Guix Without Scheme jgart
2022-07-20 15:45 ` Csepp
2022-07-20 21:02   ` Munyoki Kilyungi
2022-07-21 10:23     ` Csepp

Code repositories for project(s) associated with this inbox:

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).