unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Brett Gilio <brettg@posteo.net>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 38605@debbugs.gnu.org, bandali@gnu.org,
	zimoun <zimon.toutoune@gmail.com>
Subject: [bug#38605] [WIP MLton 0/1] Add MLton
Date: Mon, 16 Dec 2019 20:20:45 -0600	[thread overview]
Message-ID: <878snbzo8y.fsf@posteo.net> (raw)
In-Reply-To: <87k16wdkx0.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 16 Dec 2019 22:23:39 +0100")

Ludovic Courtès <ludo@gnu.org> writes:

> Hi Simon,
>
> zimoun <zimon.toutoune@gmail.com> skribis:
>
>> To my knowledge, the most advanced ML-family language able to
>> bootstrap (and verified with prover etc.) is CakeML (subset of
>> Standard ML).
>>
>> (And not packaged in Guix, AFAICT.)
>>
>> https://cakeml.org/
>
> Right, thanks for the pointer!  CakeML is truly impressive.  It’s also
> nice to see how the tiny diagram to the right of the web page clearly
> and succinctly describes its compiler/language tower.
>
> Ludo’.

I may be misspeaking, but I think CakeML is formally verified in HOL
which bootstraps against PolyML or SMLnj, and also requires MLton. So
the issue of cyclic binary-derived bootstrapping remains an issue. This
is where I think Amin Bandali (CC) and I's idea of writing a C-based
boostrapping compiler and dedicating it to the GNU project would be
really valuable.

Ultimately I think we need a vehicle for ML to be fledged out in Guix so
that we can have a consistent set of utilities for the formal methods
community to work in with Guix (see my formal methods working group
proposal email).

Maybe at some later date we could even fledge out that bootstrapping
compiler to be its own distinct implementation of ML, but i'll save that
for a later date. Regardless, the issue of binaries-on-binaries in ML
seems to be reaching back to 1993! It's about time we ended that. Stay
tuned for more information on what I think we could do about that.

-- 
Brett M. Gilio <brettg@posteo.net>
GNU Guix, Contributor <https://guix.gnu.org/>

  reply	other threads:[~2019-12-17  2:22 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-14  3:58 [bug#38605] [WIP MLton 0/1] Add MLton Brett Gilio
2019-12-14  3:59 ` [bug#38605] [WIP MLton 1/1] gnu: Add mlton Brett Gilio
2020-09-14 17:36   ` zimoun
2022-04-12 10:21     ` [bug#38605] [WIP MLton 0/1] Add MLton zimoun
2022-05-04 11:58       ` bug#38605: " zimoun
2019-12-14 17:58 ` [bug#38605] " Ludovic Courtès
2019-12-15 22:32   ` Brett Gilio
2019-12-16 10:02     ` Ludovic Courtès
2019-12-15  1:59       ` zimoun
2019-12-16 21:23         ` Ludovic Courtès
2019-12-17  2:20           ` Brett Gilio [this message]
2019-12-17 16:42             ` zimoun
2019-12-18 14:48               ` Ludovic Courtès
2019-12-21  4:56                 ` Brett Gilio

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

  List information: https://guix.gnu.org/

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

  git send-email \
    --in-reply-to=878snbzo8y.fsf@posteo.net \
    --to=brettg@posteo.net \
    --cc=38605@debbugs.gnu.org \
    --cc=bandali@gnu.org \
    --cc=ludo@gnu.org \
    --cc=zimon.toutoune@gmail.com \
    /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 public 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).