dragora-members
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dragora-members] Relation of Qi and Qire


From: Kevin "The Nuclear" Bloom
Subject: Re: [Dragora-members] Relation of Qi and Qire
Date: Tue, 09 Jun 2020 09:06:40 -0400
User-agent: mu4e 1.4.6; emacs 28.0.50

Matias Fonzo writes:

> El 2020-06-09 09:07, Kevin "The Nuclear" Bloom escribió:
>> Michael Siegel writes:
>>
>>> Am 05.06.20 um 21:24 schrieb Matias Fonzo:
>>>> El 2020-06-05 09:44, Michael Siegel escribió:
>>>>> Am 04.06.20 um 20:40 schrieb Kevin "The Nuclear" Bloom:
>>>>>> I partly agree with this line of thought: why have 2 interfaces for
>>>>>> the
>>>>>> same command? There really is only 1 reason for such a thing:
>>>>>> easy-of-use. Instead of folks trying to remember if they're to use Qi or
>>>>>> Qire, they can just use Qire since that's how most people will be
>>>>>> working with packages (if they choose to use remote repos, of course).
>>>>> My idea is basically the same, only that I'd suggest users simply
>>>>> always
>>>>> use Qi.
>>>>>
>>>> I think it could be done as long as Qi can call those extensions
>>>> externally, since they are files written in Scheme/Scheme dialect.
>>> Right. You could just implement remote commands in Qi in such a way
>>> that
>>> executing them would make Qi try to trigger Qire and return an error if
>>> that fails.
>
> Yeah.
>
>>>> Ideally the package manager is based ALL on Scheme, the bad thing is
>>>> that imposing Scheme for the bootstrap does not seem to be good idea...
>>> Well, Fennel is very small, isn't it? So, writing everything in Fennel
>>> could be an option. Also, Fennel compiles to Lua, so you need Lua (and
>>> only Lua, if I got that right) anyway, which would also make it viable
>>> to write Qi all in Lua.
>>>
>> Yes, Fennel and Lua are very small and very fast. Qire will not require
>> Lua or Fennel at runtime, however, thanks to luastatic.
>
> Interesting.  We have lua and luarocks, is luastatic missing on Dragora?.
>

luastatic can be installed via luarocks.

>>> A potential problem with both approaches might be that Fennel as well as
>>> Lua might not be up to the task without extra libraries. But then, you
>>> could still use GNU core utilities from a Lua script pretty easily, I guess.
>>>
>> I doubt that we will need many libraries for this task. However, Lua
>> does have pretty decent ecosystem which can be used easily in Fennel.
>
> That's good.
>
>>> That said, I'd definitely keep rewriting Qi for later and concentrate on
>>> making it work in sh for now.
>>>
>
> I'm open to whatever you guys decide to do, especially you Nuclearkev who are
> the author of Qire.  Except for rewriting all of Qi on Lua for now, Qi 2.0 is
> close but there is time to incorporate the extensions of Qire into Qi.  Let me
> know what do you think.
>

I do /not/ think Qi should be rewritten in Lua/Fennel. Since Qi is
already finished and already working very well, I see no benefit. Having
Qi & Qire written in the same language does really do anything. Many
extensions of programs are written in a language other than the main
program's language. Many programs are extended via Guile and Lua but the
program itself is written in C/C++. In the case of Qi & Qire, Qire
simply runs Qi and isn't wired directly into the code. Therefore, Qire
could be written in anything! (Whereas if we needed to wire it directly
we'd have to use an extension language that worked with whatever
language it was written in) The reason for Fennel/Lua is that it's
small, fast, and, thanks to Fennel, lisp.

>
> Thanks,
> Matías



reply via email to

[Prev in Thread] Current Thread [Next in Thread]