unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
* GNU Hurd on $scheme (was: [ANN] the Guile 100 Programs Project)
@ 2013-02-02  2:49 Daniel Hartwig
  2013-02-02  3:51 ` Nala Ginrut
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Daniel Hartwig @ 2013-02-02  2:49 UTC (permalink / raw)
  To: l4-hurd; +Cc: guile-user

[Hello l4-hurd, I see you have been quiet lately.]

On 2 February 2013 01:28, Nala Ginrut <nalaginrut@gmail.com> wrote:
> On Fri, 2013-02-01 at 16:40 +0000, Ian Price wrote:
>> Heh, reimplementing coreutils in Scheme has been a plan of mine for a
>> while, as part of justifying my Iteratees library, but that has taken a
>> sideline to newer and shinier projects.
>>
>
> Maybe another new project, say, rewrite GNU with Guile, include part of
> HURD, heh? I even get the name, GoG, GNU on Guile. ;-P
>

Something I have thought about for some time.  Next on the TODO list :-)


There is a paper by Rees, _A Security Kernel Based on the
Lambda-Calculus_.  It discusses a Lisp dialect, Scheme¯, similar to
Scheme but with certain operations removed; in there place are some
logical guarantees with implications for security for any code written
in the dialect.  This is used to construct a security kernel, W7,
which becomes the basis for Scheme48 (a language supporting R5RS).

I don't want to get in to the details of the paper, I think that many
on this list will be familiar with it.  Suffice to say that the
security kernel provides concepts that closely map to a capability
model.  Also, verified processes can run within the same machine
process and I wonder if this has implications for the communication
overhead that microkernel systems tend to get labelled with.  In
theory the security kernel, core services, and any Scheme (and other)
language programs should be able to reside in the same process without
having to implement access restrictions beyond those implicit in the
language.

After bootstrapping my current pet project, I intend to explore the
ideas in this paper as they relate to the Hurd.  As I am quite fond of
Guile I plan to proceed roughly as follows:
- port Scheme¯ to the Guile language stack;
- get W7 or something similar running on this;
- implement required Hurd interfaces;
- port some of the current Hurd servers and userland to the Scheme in
this stack;
- …
- profit!

Maybe bypassing the first stages and use Scheme48 instead.

I believe having some sort of system running in Scheme would be very
useful for exploring design and architectural issues, regardless of
whether it is a practical or fast performing implementation.

Anyone interested in collaborating on such a project, or have comments
regarding the paper and the implications for the Hurd?  Nala, you
sound interested, and we will certainly benefit from some of the
userland being ported as part of the Guile 100 Programs Project.

Regards



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

end of thread, other threads:[~2013-02-04 12:32 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-02  2:49 GNU Hurd on $scheme (was: [ANN] the Guile 100 Programs Project) Daniel Hartwig
2013-02-02  3:51 ` Nala Ginrut
2013-02-02 10:19 ` GNU Hurd on $scheme Ludovic Courtès
2013-02-02 16:36   ` Nala Ginrut
2013-02-02 16:44     ` Ludovic Courtès
2013-02-02 10:19 ` Ludovic Courtès
2013-02-03  0:04   ` Daniel Hartwig
2013-02-04 12:32     ` Ludovic Courtès

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).