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
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.
[-- 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 --]
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.