Sounds a lot like the Newsqueak implementation.
https://swtch.com/~rsc/thread/newsquimpl.pdf

On Tue, Aug 16, 2016 at 6:33 AM, Lars Tørnes Hansen <lar...@gmail.com>
wrote:

> My thought about a Go interrpreter.
>
> I had thought of making a Go transpiler using either the D programming
> language, or the Julia programming language as the target.
>
> Julia is very interesting. It is using the LLVM JIT. In the Julia REPL it
> is very easy to show the machine code or LLVM bitcode for some function, so
> i guess running a per line bunch of LLVM bit code is possible.
> Julia can call C code with no glue code.
>
> Implementation ideas
>
>  * Interpreter is stack less (each go routine is a pointer to a struct of
> type GoRoutine)
>  * Switching between Go routines is then copy go routine pointer to the
> wait or run queue, and take one pointer from the run queue, and resume
> execution.
>  * If all go routines are deadlocked, then the run queue will be empty.
> The scheduler will then panic = Show an error in the REPL. The user can now
> poke around, and *read* (not write) go routine states/variables. An
> interpreter vet tool (build into the interpreter)  could maybe do some
> interesting stuff, now that all states and variables are frozen in time.
>
>
> Den mandag den 7. september 2015 kl. 06.49.03 UTC+2 skrev Elliott Stoneham:
>>
>> I’ve been working with Sebastien Binet to develop some initial ideas for
>> a Go interpreter, we’d welcome some feedback.
>>
>>
>> You can see the document at https://docs.google.com/docume
>> nt/d/1Hvxf6NMPaCUd-1iqm_968SuHN1Vf8dLZQyHjvPyVE0Q/edit?usp=sharing
>>
>> There is also a reddit entry at https://www.reddit.com/r/go
>> lang/comments/3jx2bb/proposal_for_a_go_interpreter/?ref=
>> share&ref_source=link
>>
>> Thank you for your interest.
>>
>> Elliott
>>
> --
> You received this message because you are subscribed to the Google Groups
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to