@@ -31,6 +31,11 @@ varDecl x expr =
3131 VarDecl () (var x) (Just expr)
3232
3333
34+localRuntime :: String
35+localRuntime =
36+ "_elm"
37+
38+
3439internalImports :: Module.Name -> [VarDecl ()]
3540internalImports name =
3641 [ varDecl "_N" (obj ["Elm","Native"])
@@ -42,7 +47,7 @@ internalImports name =
4247 where
4348 include :: String -> String -> VarDecl ()
4449 include alias modul =
45− varDecl alias (obj ["_N", modul, "make"] <| ref "_elm")
50+ varDecl alias (obj ["_N", modul, "make"] <| ref localRuntime)
4651
4752
4853_Utils :: String -> Expression ()
@@ -318,19 +323,19 @@ flattenLets defs lexpr@(A _ expr) =
318323generate :: CanonicalModule -> String
319324generate modul =
320325 show . prettyPrint $ setup "Elm" (names ++ ["make"]) ++
321− [ assign ("Elm" : names ++ ["make"]) (function ["_elm"] programStmts) ]
326+ [ assign ("Elm" : names ++ ["make"]) (function [localRuntime] programStmts) ]
322327 where
323328 names :: [String]
324329 names = Module.names modul
325330
326331 thisModule :: Expression ()
327− thisModule = obj ("_elm" : names ++ ["values"])
332+ thisModule = obj (localRuntime : names ++ ["values"])
328333
329334 programStmts :: [Statement ()]
330335 programStmts =
331336 concat
332337 [ [ ExprStmt () (string "use strict") ]
333− , setup "_elm" (names ++ ["values"])
338+ , setup localRuntime (names ++ ["values"])
334339 , [ IfSingleStmt () thisModule (ret thisModule) ]
335340 , [ VarDeclStmt () localVars ]
336341 , body
@@ -350,7 +355,7 @@ generate modul =
350355 jsImport :: Module.Name -> VarDecl ()
351356 jsImport name =
352357 varDecl (Var.moduleName name) $
353− obj ("Elm" : name ++ ["make"]) <| ref "_elm"
358+ obj ("Elm" : name ++ ["make"]) <| ref localRuntime
354359
355360 body :: [Statement ()]
356361 body = concat $ evalState defs 0
@@ -362,7 +367,7 @@ generate modul =
362367 create name = assign name (InfixExpr () OpLOr (obj name) (ObjectLit () []))
363368 paths = drop 2 . init . List.inits $ namespace : path
364369
365− jsExports = assign ("_elm" : names ++ ["values"]) (ObjectLit () exs)
370+ jsExports = assign (localRuntime : names ++ ["values"]) (ObjectLit () exs)
366371 where
367372 exs = map entry $ "_op" : concatMap extract (exports modul)
368373 entry x = (prop x, ref x)