STG to JavaScript translation

Victor Nazarov asviraspossible at gmail.com
Mon Sep 17 06:48:25 EDT 2007


Hello.
I'm working on the translation of GHC's STG language to
JavaScript. I've started my implementation, but I've got stuck with
the STG case statements. The problem is the binder in case expression.

StgCase expr livevars liverhsvars bndr srt alttype alts

Operationally, I need to save continuation and evaluate expr
expression, but I have no idea what to do with the bndr. It seems to
me that I need to build a closure binded by bndr with the body of
expr evaluate it, update it, and use it in RHSs of alternatives.
But It seems that this behavior isn't intended by GHC. Can you explain briefly
how GHC implements this binder and what this binder points to.

Here are some notes about Dmitries last year activity and my activity:
http://haskell.org/haskellwiki/STG_in_Javascript

-- 
vir
http://vir.comtv.ru/


More information about the Glasgow-haskell-users mailing list