unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* Register-based VM GSOC project
@ 2012-03-14 22:06 Steve Jothen
  2012-03-15  6:56 ` Steve Jothen
  0 siblings, 1 reply; 3+ messages in thread
From: Steve Jothen @ 2012-03-14 22:06 UTC (permalink / raw)
  To: guile-devel

[-- Attachment #1: Type: text/plain, Size: 879 bytes --]

Hey guys,

I'd like to apply to work on Guile for this years GSOC. I saw Mark's TODO
list and thought that working towards a register-based VM in guile looks
like a fun project. I was wondering about your thoughts on doing this as a
GSOC project. Do you think it is possible to complete such a project in 3
months? If not, maybe there's a smaller project that could be used as a
stepping stone towards a register-based VM and then native compilation.

I've also taken a look at some of Guile's source code and it seems like a
lot of the code depends on certain stack-based features of the VM right
now, so I can see it could be more complex than compiling the scheme source
code to a different set of opcodes. Since you guys are obviously more
familiar with the Guile code, what would your approach be to do it?

Any insights you have would be much appreciated :)

Thanks,
Steve

[-- Attachment #2: Type: text/html, Size: 1083 bytes --]

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

* Register-based VM GSOC project
  2012-03-14 22:06 Register-based VM GSOC project Steve Jothen
@ 2012-03-15  6:56 ` Steve Jothen
  2012-03-15 13:26   ` Noah Lavine
  0 siblings, 1 reply; 3+ messages in thread
From: Steve Jothen @ 2012-03-15  6:56 UTC (permalink / raw)
  To: guile-devel

[-- Attachment #1: Type: text/plain, Size: 879 bytes --]

Hey guys,

I'd like to apply to work on Guile for this years GSOC. I saw Mark's TODO
list and thought that working towards a register-based VM in guile looks
like a fun project. I was wondering about your thoughts on doing this as a
GSOC project. Do you think it is possible to complete such a project in 3
months? If not, maybe there's a smaller project that could be used as a
stepping stone towards a register-based VM and then native compilation.

I've also taken a look at some of Guile's source code and it seems like a
lot of the code depends on certain stack-based features of the VM right
now, so I can see it could be more complex than compiling the scheme source
code to a different set of opcodes. Since you guys are obviously more
familiar with the Guile code, what would your approach be to do it?

Any insights you have would be much appreciated :)

Thanks,
Steve

[-- Attachment #2: Type: text/html, Size: 1064 bytes --]

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

* Re: Register-based VM GSOC project
  2012-03-15  6:56 ` Steve Jothen
@ 2012-03-15 13:26   ` Noah Lavine
  0 siblings, 0 replies; 3+ messages in thread
From: Noah Lavine @ 2012-03-15 13:26 UTC (permalink / raw)
  To: Steve Jothen; +Cc: guile-devel

Hello,

I'm not as familiar with the compiler code as some other people here,
but I think that would be great! Guile can always use more speed, and
that seems like a project that you could complete in a summer.

I've thought a bit about how to do it. One step might be to write a
register VM in Scheme that you can compile to, to make sure
compilation works, and then write it again in C. Another approach
would be to write it in C, but make it available as a Guile function,
so that at first you can have the register and stack VMs around at the
same time, and then when it's ready get rid of the stack VM. The goal
of both of those approaches is to let you do it piece by piece rather
than all at once.

I also thought a register VM would be cool, so I've actually started
working on a stack-space allocator, which I hope will turn into a
register allocator. If that's the part of the project you would most
enjoy working on, tell me now and I'll stop and do something else. :-)
But if not, I would be glad to work with you.

One question for you is, have you done similar things before? Do you
have your own ideas for how you'd implement a VM?

I'm glad you're interested,
Noah

On Thu, Mar 15, 2012 at 2:56 AM, Steve Jothen <sjothen@gmail.com> wrote:
> Hey guys,
>
> I'd like to apply to work on Guile for this years GSOC. I saw Mark's TODO
> list and thought that working towards a register-based VM in guile looks
> like a fun project. I was wondering about your thoughts on doing this as a
> GSOC project. Do you think it is possible to complete such a project in 3
> months? If not, maybe there's a smaller project that could be used as a
> stepping stone towards a register-based VM and then native compilation.
>
> I've also taken a look at some of Guile's source code and it seems like a
> lot of the code depends on certain stack-based features of the VM right now,
> so I can see it could be more complex than compiling the scheme source code
> to a different set of opcodes. Since you guys are obviously more familiar
> with the Guile code, what would your approach be to do it?
>
> Any insights you have would be much appreciated :)
>
> Thanks,
> Steve
>



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

end of thread, other threads:[~2012-03-15 13:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-14 22:06 Register-based VM GSOC project Steve Jothen
2012-03-15  6:56 ` Steve Jothen
2012-03-15 13:26   ` Noah Lavine

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