all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: zimoun <zimon.toutoune@gmail.com>
To: "Thompson, David" <dthompson2@worcester.edu>
Cc: 22366@debbugs.gnu.org
Subject: bug#22366: [EXT] Bug#22366 Status? Chicken Scheme release tarballs ship non-source C code
Date: Fri, 15 May 2020 12:15:21 +0200	[thread overview]
Message-ID: <CAJ3okZ3Y0uiEd6zX6Y8wLUG8=VM5T9vxoH1=cfAXZaNdaaxQjA@mail.gmail.com> (raw)
In-Reply-To: <CAJ=RwfYs5AmO=nsEEqVJW0chcTCq94iBapOd8ab8ECKh9odTjA@mail.gmail.com>

Dear David,

On Thu, 14 May 2020 at 21:04, Thompson, David <dthompson2@worcester.edu> wrote:

> > Why is it an issue for bootstrappability?
>
> Because software is not bootstrappable if it requires taking for
> granted files that are not source code.  In this case, it is these C
> files.  These files are not source code because they are machine
> generated.  In order to generate these files, you need a Chicken
> Scheme compiler.  Therefore, you cannot build Chicken Scheme from
> source code without already having Chicken Scheme, which makes it
> non-bootstrappable.  I have not kept track of this issue but my
> understanding was that the Chicken developers do not care (which is
> unfortunately a very common reaction from developers of self-hosted
> compilers) but it is nevertheless a bootstrapping issue.

I am not following your reasoning.  The point is not how the C files
are generated but if they are auditable. -- which in most of the cases
means human-readable.

Considering these generated C files, even if I am not a C expert, they
seems un-auditable.

--8<---------------cut here---------------start------------->8---
C_noret_decl(f24858)
static void C_ccall f24858(C_word c,C_word *av) C_noret;
C_noret_decl(f_10015)
static void C_ccall f_10015(C_word c,C_word *av) C_noret;
C_noret_decl(f_10019)

[...]

/* k10021 in k10017 in a10014 in k9990 in k9987 in k9984 in k8730 in
k8463 in k8451 in k8448 in k8445 in k8441 in k8438 in k8432 in k8393
in walk in chicken.compiler.core#canonicalize-expression in k6295 in
k6292 in k6289 in k6286 in k6283 in ... */
static void C_ccall f_10023(C_word c,C_word *av){
C_word tmp;
C_word t0=av[0];
C_word t1=av[1];
C_word t2;
C_word t3;
C_word t4;
C_word *a;
if(C_unlikely(!C_demand(C_calculate_demand(4,c,4)))){
C_save_and_reclaim((void *)f_10023,c,av);}
a=C_alloc(4);
t2=C_mutate(((C_word *)((C_word*)t0)[2])+1,t1);
t3=(*a=C_CLOSURE_TYPE|3,a[1]=(C_word)f_10026,a[2]=((C_word*)t0)[3],a[3]=((C_word*)t0)[4],tmp=(C_word)a,a+=4,tmp);
/* core.scm:890: ##sys#current-environment1643 */
t4=((C_word*)t0)[5];{
C_word *av2;
if(c >= 5) {
  av2=av;
} else {
  av2=C_alloc(5);
}
av2[0]=t4;
av2[1]=t3;
av2[2]=((C_word*)t0)[6];
av2[3]=C_SCHEME_FALSE;
av2[4]=C_SCHEME_TRUE;
((C_proc)(void*)(*((C_word*)t4+1)))(5,av2);}}
--8<---------------cut here---------------end--------------->8---


> I don't think this can be closed because it is still an issue.

I have failed to generated these C files using another scheme
interpreter.  Yeah, it is more than a hack between the coffee and the
shower. :-)


Thank you for the clarifications and it is still an issue. :-)

All the best,
simon




  reply	other threads:[~2020-05-15 10:16 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-13 18:54 bug#22366: Chicken Scheme release tarballs ship non-source C code Thompson, David
2020-05-12 23:33 ` bug#22366: Status? " zimoun
2020-05-14 19:04   ` bug#22366: [EXT] Bug#22366 " Thompson, David
2020-05-15 10:15     ` zimoun [this message]
2021-08-17  9:13 ` bug#22366: " Mario Domenech Goulart
2021-08-17 17:24   ` Tobias Geerinckx-Rice

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAJ3okZ3Y0uiEd6zX6Y8wLUG8=VM5T9vxoH1=cfAXZaNdaaxQjA@mail.gmail.com' \
    --to=zimon.toutoune@gmail.com \
    --cc=22366@debbugs.gnu.org \
    --cc=dthompson2@worcester.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.