Browse Source

Merge branch 'master' into new-package-refactoring

Conflicts:
	Gruntfile.js
	js/Benchfib.deploy.js
	js/Canvas.deploy.js
	js/Compiler-AST.deploy.js
	js/Compiler-Core.deploy.js
	js/Compiler-Exceptions.deploy.js
	js/Compiler-IR.deploy.js
	js/Compiler-Inlining.deploy.js
	js/Compiler-Interpreter.deploy.js
	js/Compiler-Semantic.deploy.js
	js/Compiler-Tests.deploy.js
	js/Examples.deploy.js
	js/Helios-Announcements.deploy.js
	js/Helios-Browser.deploy.js
	js/Helios-Commands-Browser.deploy.js
	js/Helios-Commands-Core.deploy.js
	js/Helios-Commands-Tools.deploy.js
	js/Helios-Core.deploy.js
	js/Helios-Debugger.deploy.js
	js/Helios-Exceptions.deploy.js
	js/Helios-Inspector.deploy.js
	js/Helios-KeyBindings.deploy.js
	js/Helios-Layout.deploy.js
	js/Helios-References.deploy.js
	js/Helios-Transcript.deploy.js
	js/Helios-Workspace-Tests.deploy.js
	js/Helios-Workspace.deploy.js
	js/IDE.deploy.js
	js/Importer-Exporter.deploy.js
	js/Importer-Exporter.js
	js/Kernel-Announcements.deploy.js
	js/Kernel-Classes.deploy.js
	js/Kernel-Collections.deploy.js
	js/Kernel-Exceptions.deploy.js
	js/Kernel-Infrastructure.deploy.js
	js/Kernel-Methods.deploy.js
	js/Kernel-Objects.deploy.js
	js/Kernel-Tests.deploy.js
	js/Kernel-Transcript.deploy.js
	js/SUnit-Tests.deploy.js
	js/SUnit.deploy.js
	js/Spaces.deploy.js
	st/Importer-Exporter.st
Nicolas Petton 10 years ago
parent
commit
50f7720202
54 changed files with 242 additions and 232 deletions
  1. 4 4
      Gruntfile.js
  2. 1 1
      bin/amberc
  3. 2 2
      bin/amberc.js
  4. 2 8
      helios.html
  5. 2 8
      index.html
  6. 2 2
      js/Benchfib.js
  7. 2 2
      js/Canvas.js
  8. 2 2
      js/Compiler-AST.js
  9. 2 2
      js/Compiler-Core.js
  10. 2 2
      js/Compiler-Exceptions.js
  11. 2 2
      js/Compiler-IR.js
  12. 2 2
      js/Compiler-Inlining.js
  13. 3 4
      js/Compiler-Interpreter.js
  14. 2 2
      js/Compiler-Semantic.js
  15. 2 2
      js/Compiler-Tests.js
  16. 2 2
      js/Examples.js
  17. 2 2
      js/Helios-Announcements.js
  18. 2 2
      js/Helios-Browser.js
  19. 2 2
      js/Helios-Commands-Browser.js
  20. 2 2
      js/Helios-Commands-Core.js
  21. 2 2
      js/Helios-Commands-Tools.js
  22. 2 2
      js/Helios-Core.js
  23. 2 2
      js/Helios-Debugger.js
  24. 2 2
      js/Helios-Exceptions.js
  25. 2 2
      js/Helios-Inspector.js
  26. 4 4
      js/Helios-KeyBindings.js
  27. 2 2
      js/Helios-Layout.js
  28. 2 2
      js/Helios-References.js
  29. 2 2
      js/Helios-Transcript.js
  30. 2 2
      js/Helios-Workspace-Tests.js
  31. 2 2
      js/Helios-Workspace.js
  32. 2 2
      js/IDE.js
  33. 2 2
      js/Importer-Exporter.js
  34. 2 2
      js/Kernel-Announcements.js
  35. 2 2
      js/Kernel-Classes.js
  36. 2 2
      js/Kernel-Collections.js
  37. 2 2
      js/Kernel-Exceptions.js
  38. 4 4
      js/Kernel-Infrastructure.js
  39. 2 2
      js/Kernel-Methods.js
  40. 2 2
      js/Kernel-Objects.js
  41. 2 2
      js/Kernel-Tests.js
  42. 2 2
      js/Kernel-Transcript.js
  43. 2 2
      js/SUnit-Tests.js
  44. 2 2
      js/SUnit.js
  45. 2 2
      js/Spaces.js
  46. 29 22
      support/amber.js
  47. 5 3
      support/boot.js
  48. 12 0
      support/deploy.js
  49. 38 0
      support/devel.js
  50. 0 55
      support/full-devel-helios.js
  51. 0 37
      support/full-devel.js
  52. 56 0
      support/helios.js
  53. 4 4
      support/smalltalk.js
  54. 2 2
      test/Test.js

+ 4 - 4
Gruntfile.js

@@ -33,9 +33,9 @@ module.exports = function(grunt) {
       all: {
         output_dir : 'js',
         src: ['st/Kernel-Objects.st', 'st/Kernel-Classes.st', 'st/Kernel-Methods.st', 'st/Kernel-Collections.st',
-              'st/Kernel-Exceptions.st', 'st/Kernel-Transcript.st', 'st/Kernel-Announcements.st',
+              'st/Kernel-Infrastructure.st', 'st/Kernel-Exceptions.st', 'st/Kernel-Transcript.st', 'st/Kernel-Announcements.st',
               'st/Importer-Exporter.st', 'st/Compiler-Exceptions.st', 'st/Compiler-Core.st', 'st/Compiler-AST.st',
-              'st/Compiler-IR.st', 'st/Compiler-Inlining.st', 'st/Compiler-Semantic.st',
+              'st/Compiler-IR.st', 'st/Compiler-Inlining.st', 'st/Compiler-Semantic.st', 'st/Compiler-Interpreter.st',
               'st/Canvas.st', 'st/SUnit.st', 'st/IDE.st',
               'st/Kernel-Tests.st', 'st/Compiler-Tests.st', 'st/SUnit-Tests.st',
               'st/Helios-Core.st', 'st/Helios-Exceptions.st', 'st/Helios-Announcements.st',
@@ -51,12 +51,12 @@ module.exports = function(grunt) {
       amber_kernel: {
         output_dir : 'js',
         src: ['st/Kernel-Objects.st', 'st/Kernel-Classes.st', 'st/Kernel-Methods.st', 'st/Kernel-Collections.st',
-              'st/Kernel-Exceptions.st', 'st/Kernel-Transcript.st', 'st/Kernel-Announcements.st']
+              'st/Kernel-Infrastructure.st', 'st/Kernel-Exceptions.st', 'st/Kernel-Transcript.st', 'st/Kernel-Announcements.st']
       },
       amber_compiler: {
         output_dir : 'js',
         src: ['st/Importer-Exporter.st', 'st/Compiler-Exceptions.st', 'st/Compiler-Core.st', 'st/Compiler-AST.st',
-              'st/Compiler-IR.st', 'st/Compiler-Inlining.st', 'st/Compiler-Semantic.st'],
+              'st/Compiler-IR.st', 'st/Compiler-Inlining.st', 'st/Compiler-Semantic.st', 'st/Compiler-Interpreter.st'],
         output_name: 'Compiler'
       },
       amber_canvas: {

+ 1 - 1
bin/amberc

@@ -151,7 +151,7 @@ function print_usage() {
 	console.log('');
 	console.log('  -n amd_namespace');
 	console.log('     Export packages with <amd_namespace> as the require.js namespace.');
-	console.log('     Default value is "amber".');
+	console.log('     Default value is "amber_core".');
 	console.log('');
 	console.log('  -o');
 	console.log('     Optimize each .js file using the Google closure compiler.');

+ 2 - 2
bin/amberc.js

@@ -154,7 +154,7 @@ var createDefaults = function(amber_dir, finished_callback){
 		'stFiles': [],
 		'jsFiles': [],
 		'jsGlobals': [],
-		'amd_namespace': 'amber',
+		'amd_namespace': 'amber_core',
 		'closure': false,
 		'closure_full': false,
 		'closure_options': ' --language_in=ECMASCRIPT5 ',
@@ -185,7 +185,7 @@ AmberC.prototype.main = function(configuration, finished_callback) {
 	}
 
 	if (configuration.amd_namespace.length == 0) {
-		configuration.amd_namespace = 'amber';
+		configuration.amd_namespace = 'amber_core';
 	}
 
 	console.ambercLog = console.log;

+ 2 - 8
helios.html

@@ -13,20 +13,14 @@
       <script type='text/javascript' src='support/amber.js'></script>
       <script type='text/javascript' src='support/requirejs/require.min.js'></script>
       <script type='text/javascript'>
-          require.config({
-              config: {
-                  'amber_vm/smalltalk': {
-                      defaultNamespace: 'amber'
-                  }
-              }
-          });
           require(
-                  ["amber_vm/smalltalk", "amber_set/full-devel-helios"],
+                  ["amber/helios"],
                   function (smalltalk) {
                       window.onbeforeunload = function() {
                           return 'Do you want to close Amber? All uncommitted changes will be lost.';
                       };
 
+                      smalltalk.defaultAMDNamespace = "amber_core";
                       smalltalk.initialize();
                   }
           );

+ 2 - 8
index.html

@@ -11,16 +11,10 @@
 
 <body>
 <script type='text/javascript'>
-    require.config({
-        config: {
-            'amber_vm/smalltalk': {
-                defaultNamespace: 'amber'
-            }
-        }
-    });
     require(
-        ["amber_vm/smalltalk", "amber_set/full-devel"],
+        ["amber/devel"],
         function (smalltalk) {
+            smalltalk.defaultAMDNamespace = "amber_core";
             smalltalk.initialize();
 
             smalltalk.Browser._open()

+ 2 - 2
js/Benchfib.js

@@ -1,6 +1,6 @@
-define("amber/Benchfib", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Benchfib", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Benchfib');
-smalltalk.packages["Benchfib"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Benchfib"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('Benchfib', smalltalk.Object, [], 'Benchfib');
 

+ 2 - 2
js/Canvas.js

@@ -1,6 +1,6 @@
-define("amber/Canvas", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Infrastructure", "amber/Kernel-Methods", "amber/Kernel-Collections"], function(smalltalk,nil,_st){
+define("amber_core/Canvas", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Kernel-Infrastructure", "amber_core/Kernel-Methods", "amber_core/Kernel-Collections"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Canvas');
-smalltalk.packages["Canvas"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Canvas"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('BrowserInterface', smalltalk.Object, [], 'Canvas');
 smalltalk.BrowserInterface.comment="I am platform interface class that tries to use window and jQuery; that is, one for browser environment.\x0a\x0a## API\x0a\x0a    self isAvailable. \x22true if window and jQuery exist\x22.\x0a\x0a    self alert: 'Hey, there is a problem'.\x0a    self confirm: 'Affirmative?'.\x0a    self prompt: 'Your name:'.\x0a\x0a    self ajax: #{\x0a        'url' -> '/patch.js'. 'type' -> 'GET'. dataType->'script'\x0a    }.";

+ 2 - 2
js/Compiler-AST.js

@@ -1,6 +1,6 @@
-define("amber/Compiler-AST", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Methods"], function(smalltalk,nil,_st){
+define("amber_core/Compiler-AST", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Kernel-Methods"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Compiler-AST');
-smalltalk.packages["Compiler-AST"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Compiler-AST"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('Node', smalltalk.Object, ['parent', 'position', 'nodes', 'shouldBeInlined', 'shouldBeAliased'], 'Compiler-AST');
 smalltalk.Node.comment="I am the abstract root class of the abstract syntax tree.\x0a\x0aConcrete classes should implement `#accept:` to allow visiting.\x0a\x0a`position` holds a point containing line and column number of the symbol location in the original source file.";

+ 2 - 2
js/Compiler-Core.js

@@ -1,6 +1,6 @@
-define("amber/Compiler-Core", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Compiler-Core", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Compiler-Core');
-smalltalk.packages["Compiler-Core"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Compiler-Core"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('AbstractCodeGenerator', smalltalk.Object, ['currentClass', 'source'], 'Compiler-Core');
 smalltalk.AbstractCodeGenerator.comment="I am the abstract super class of all code generators and provide their common API.";

+ 2 - 2
js/Compiler-Exceptions.js

@@ -1,6 +1,6 @@
-define("amber/Compiler-Exceptions", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Exceptions"], function(smalltalk,nil,_st){
+define("amber_core/Compiler-Exceptions", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Exceptions"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Compiler-Exceptions');
-smalltalk.packages["Compiler-Exceptions"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Compiler-Exceptions"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('CompilerError', smalltalk.Error, [], 'Compiler-Exceptions');
 smalltalk.CompilerError.comment="I am the common superclass of all compiling errors.";

+ 2 - 2
js/Compiler-IR.js

@@ -1,6 +1,6 @@
-define("amber/Compiler-IR", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Compiler-Core", "amber/Kernel-Objects", "amber/Kernel-Methods", "amber/Kernel-Collections"], function(smalltalk,nil,_st){
+define("amber_core/Compiler-IR", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Compiler-Core", "amber_core/Kernel-Objects", "amber_core/Kernel-Methods", "amber_core/Kernel-Collections"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Compiler-IR');
-smalltalk.packages["Compiler-IR"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Compiler-IR"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('IRASTTranslator', smalltalk.NodeVisitor, ['source', 'theClass', 'method', 'sequence', 'nextAlias'], 'Compiler-IR');
 smalltalk.IRASTTranslator.comment="I am the AST (abstract syntax tree) visitor responsible for building the intermediate representation graph.";

+ 2 - 2
js/Compiler-Inlining.js

@@ -1,6 +1,6 @@
-define("amber/Compiler-Inlining", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Compiler-IR", "amber/Kernel-Objects", "amber/Compiler-Core"], function(smalltalk,nil,_st){
+define("amber_core/Compiler-Inlining", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Compiler-IR", "amber_core/Kernel-Objects", "amber_core/Compiler-Core"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Compiler-Inlining');
-smalltalk.packages["Compiler-Inlining"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Compiler-Inlining"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('IRInlinedAssignment', smalltalk.IRAssignment, [], 'Compiler-Inlining');
 smalltalk.IRInlinedAssignment.comment="I represent an inlined assignment instruction.";

+ 3 - 4
js/Compiler-Interpreter.js

@@ -1,6 +1,6 @@
-define("amber/Compiler-Interpreter", ["amber_vm/smalltalk","amber_vm/nil","amber_vm/_st"], function(smalltalk,nil,_st){
+define("amber_core/Compiler-Interpreter", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Compiler-Core", "amber_core/Kernel-Objects", "amber_core/Compiler-AST"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Compiler-Interpreter');
-smalltalk.packages["Compiler-Interpreter"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Compiler-Interpreter"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('AIContext', smalltalk.NodeVisitor, ['methodContext', 'outerContext', 'pc', 'locals', 'method'], 'Compiler-Interpreter');
 smalltalk.AIContext.comment="I am like a `MethodContext`, used by the `ASTInterpreter`.\x0aUnlike a `MethodContext`, my instances are not read-only.\x0a\x0aWhen debugging, my instances are created by copying the current `MethodContext` (thisContext)";
@@ -1334,7 +1334,7 @@ return $6;
 catch(e) {if(e===$early)return e[0]; throw e}
 }, function($ctx1) {$ctx1.fill(self,"sendMessage:to:superSend:",{aMessage:aMessage,anObject:anObject,aBoolean:aBoolean,method:method},smalltalk.ASTInterpreter)})},
 args: ["aMessage", "anObject", "aBoolean"],
-source: "sendMessage: aMessage to: anObject superSend: aBoolean\x0a\x09| method |\x0a\x09\x0a\x09aBoolean ifFalse: [ ^ aMessage sendTo: anObject ].\x0a\x09anObject class superclass ifNil: [ ^ self messageNotUnderstood: aMessage receiver: anObject ].\x0a\x09\x0a\x09method := anObject class superclass methodDictionary\x0a\x09\x09at: aMessage selector\x0a\x09\x09ifAbsent: [ ^ self messageNotUnderstood: aMessage receiver: anObject ].\x0a\x09\x09\x0a\x09^ method fn applyTo: anObject arguments: aMessage arguments\x0a\x09\x09\x0a\x09\x0a\x09",
+source: "sendMessage: aMessage to: anObject superSend: aBoolean\x0a\x09| method |\x0a\x09\x0a\x09aBoolean ifFalse: [ ^ aMessage sendTo: anObject ].\x0a\x09anObject class superclass ifNil: [ ^ self messageNotUnderstood: aMessage receiver: anObject ].\x0a\x09\x0a\x09method := anObject class superclass methodDictionary\x0a\x09\x09at: aMessage selector\x0a\x09\x09ifAbsent: [ ^ self messageNotUnderstood: aMessage receiver: anObject ].\x0a\x09\x09\x0a\x09^ method fn applyTo: anObject arguments: aMessage arguments",
 messageSends: ["ifFalse:", "sendTo:", "ifNil:", "messageNotUnderstood:receiver:", "superclass", "class", "at:ifAbsent:", "selector", "methodDictionary", "applyTo:arguments:", "arguments", "fn"],
 referencedClasses: []
 }),
@@ -1664,7 +1664,6 @@ referencedClasses: []
 smalltalk.ASTPCNodeVisitor);
 
 
-
 smalltalk.addMethod(
 smalltalk.method({
 selector: "interpreter:continue:",

+ 2 - 2
js/Compiler-Semantic.js

@@ -1,6 +1,6 @@
-define("amber/Compiler-Semantic", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Compiler-Core"], function(smalltalk,nil,_st){
+define("amber_core/Compiler-Semantic", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Compiler-Core"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Compiler-Semantic');
-smalltalk.packages["Compiler-Semantic"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Compiler-Semantic"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('LexicalScope', smalltalk.Object, ['node', 'instruction', 'temps', 'args', 'outerScope'], 'Compiler-Semantic');
 smalltalk.LexicalScope.comment="I represent a lexical scope where variable names are associated with ScopeVars\x0aInstances are used for block scopes. Method scopes are instances of MethodLexicalScope.\x0a\x0aI am attached to a ScopeVar and method/block nodes.\x0aEach context (method/closure) get a fresh scope that inherits from its outer scope.";

+ 2 - 2
js/Compiler-Tests.js

@@ -1,6 +1,6 @@
-define("amber/Compiler-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/SUnit"], function(smalltalk,nil,_st){
+define("amber_core/Compiler-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/SUnit"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Compiler-Tests');
-smalltalk.packages["Compiler-Tests"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Compiler-Tests"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('ASTVisitorTest', smalltalk.TestCase, [], 'Compiler-Tests');
 smalltalk.addMethod(

+ 2 - 2
js/Examples.js

@@ -1,6 +1,6 @@
-define("amber/Examples", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Canvas"], function(smalltalk,nil,_st){
+define("amber_core/Examples", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Canvas"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Examples');
-smalltalk.packages["Examples"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Examples"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('Counter', smalltalk.Widget, ['count', 'header'], 'Examples');
 smalltalk.Counter.comment="This is a trivial Widget example mimicking the classic Counter example in Seaside.\x0aIn order to play with it, just evaluate the doit below in a workspace.\x0aThen take a look in the HTML document above the IDE.\x0a\x0a\x09\x09Counter tryExample";

+ 2 - 2
js/Helios-Announcements.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Announcements", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Announcements", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Announcements');
-smalltalk.packages["Helios-Announcements"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Announcements"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLAboutToChange', smalltalk.Object, ['actionBlock'], 'Helios-Announcements');
 smalltalk.addMethod(

+ 2 - 2
js/Helios-Browser.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Browser", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Core", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Browser", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Helios-Core", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Browser');
-smalltalk.packages["Helios-Browser"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Browser"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLBrowser', smalltalk.HLWidget, ['model', 'packagesListWidget', 'classesListWidget', 'protocolsListWidget', 'methodsListWidget', 'sourceWidget', 'bottomDiv'], 'Helios-Browser');
 smalltalk.HLBrowser.comment="I render a system browser with 4 panes (Packages, Classes, Protocols, Methods) and a source area.";

+ 2 - 2
js/Helios-Commands-Browser.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Commands-Browser", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Commands-Tools"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Commands-Browser", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Helios-Commands-Tools"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Commands-Browser');
-smalltalk.packages["Helios-Commands-Browser"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Commands-Browser"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLBrowserCommand', smalltalk.HLToolCommand, [], 'Helios-Commands-Browser');
 

+ 2 - 2
js/Helios-Commands-Core.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Commands-Core", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Commands-Core", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Commands-Core');
-smalltalk.packages["Helios-Commands-Core"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Commands-Core"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLCommand', smalltalk.Object, ['input'], 'Helios-Commands-Core');
 smalltalk.addMethod(

+ 2 - 2
js/Helios-Commands-Tools.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Commands-Tools", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Commands-Core"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Commands-Tools", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Helios-Commands-Core"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Commands-Tools');
-smalltalk.packages["Helios-Commands-Tools"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Commands-Tools"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLToolCommand', smalltalk.HLModelCommand, [], 'Helios-Commands-Tools');
 smalltalk.addMethod(

+ 2 - 2
js/Helios-Core.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Core", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Infrastructure", "amber/Canvas"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Core", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Kernel-Infrastructure", "amber_core/Canvas"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Core');
-smalltalk.packages["Helios-Core"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Core"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLModel', smalltalk.Object, ['announcer', 'environment'], 'Helios-Core');
 smalltalk.HLModel.comment="I am the abstract superclass of all models of Helios.\x0aI am the \x22Model\x22 part of the MVC pattern implementation in Helios.\x0a\x0aI provide access to an `Environment` object and both a local (model-specific) and global (system-specific) announcer.\x0a\x0aThe `#withChangesDo:` method is handy for performing model changes ensuring that all widgets are aware of the change and can prevent it from happening.\x0a\x0aModifications of the system should be done via commands (see `HLCommand` and subclasses).";

+ 2 - 2
js/Helios-Debugger.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Debugger", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Helios-Core", "amber/Helios-Workspace", "amber/Kernel-Exceptions"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Debugger", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Helios-Core", "amber_core/Helios-Workspace", "amber_core/Kernel-Exceptions"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Debugger');
-smalltalk.packages["Helios-Debugger"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Debugger"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLContextInspectorDecorator', smalltalk.Object, ['context'], 'Helios-Debugger');
 smalltalk.addMethod(

+ 2 - 2
js/Helios-Exceptions.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Exceptions", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Exceptions"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Exceptions", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Exceptions"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Exceptions');
-smalltalk.packages["Helios-Exceptions"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Exceptions"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLError', smalltalk.Error, [], 'Helios-Exceptions');
 

+ 2 - 2
js/Helios-Inspector.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Inspector", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Core", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Inspector", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Helios-Core", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Inspector');
-smalltalk.packages["Helios-Inspector"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Inspector"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLInspectorDisplayWidget', smalltalk.HLNavigationListWidget, ['model'], 'Helios-Inspector');
 smalltalk.addMethod(

+ 4 - 4
js/Helios-KeyBindings.js

@@ -1,6 +1,6 @@
-define("amber/Helios-KeyBindings", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Helios-Core"], function(smalltalk,nil,_st){
+define("amber_core/Helios-KeyBindings", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Helios-Core"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-KeyBindings');
-smalltalk.packages["Helios-KeyBindings"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-KeyBindings"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLBinding', smalltalk.Object, ['key', 'label'], 'Helios-KeyBindings');
 smalltalk.HLBinding.comment="I am the abstract representation of a keybinding in Helios. My instances hold a key (integer value) and a label. \x0a\x0aBindings are built into a tree of keys, so pressing a key may result in more key choices (for example, to open a workspace, 'o' is pressed first then 'w' is pressed).\x0a\x0aBinding action handling and selection is handled by the `current` instance of `HLKeyBinder`.\x0a\x0aSubclasses implement specific behavior like evaluating actions or (sub-)grouping other bindings.";
@@ -13,7 +13,7 @@ var self=this;
 return smalltalk.withContext(function($ctx1) { 
 return self}, function($ctx1) {$ctx1.fill(self,"apply",{},smalltalk.HLBinding)})},
 args: [],
-source: "apply\x0a\x09",
+source: "apply",
 messageSends: [],
 referencedClasses: []
 }),
@@ -1791,7 +1791,7 @@ return smalltalk.withContext(function($ctx1) {
 _st(self._selectedBinding())._renderOn_html_(self,html);
 return self}, function($ctx1) {$ctx1.fill(self,"renderSelectedBindingOn:",{html:html},smalltalk.HLKeyBinderHelperWidget)})},
 args: ["html"],
-source: "renderSelectedBindingOn: html\x0a\x09self selectedBinding renderOn: self html: html\x0a\x09",
+source: "renderSelectedBindingOn: html\x0a\x09self selectedBinding renderOn: self html: html",
 messageSends: ["renderOn:html:", "selectedBinding"],
 referencedClasses: []
 }),

+ 2 - 2
js/Helios-Layout.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Layout", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Core", "amber/Canvas", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Layout", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Helios-Core", "amber_core/Canvas", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Layout');
-smalltalk.packages["Helios-Layout"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Layout"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLContainer', smalltalk.HLWidget, ['splitter'], 'Helios-Layout');
 smalltalk.addMethod(

+ 2 - 2
js/Helios-References.js

@@ -1,6 +1,6 @@
-define("amber/Helios-References", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Helios-Core"], function(smalltalk,nil,_st){
+define("amber_core/Helios-References", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Helios-Core"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-References');
-smalltalk.packages["Helios-References"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-References"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLMethodReference', smalltalk.Object, ['selector', 'methodClass'], 'Helios-References');
 smalltalk.addMethod(

+ 2 - 2
js/Helios-Transcript.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Transcript", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Core", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Transcript", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Helios-Core", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Transcript');
-smalltalk.packages["Helios-Transcript"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Transcript"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLTranscript', smalltalk.HLWidget, ['textarea'], 'Helios-Transcript');
 smalltalk.HLTranscript.comment="I am a widget responsible for displaying transcript contents.\x0a\x0a## Transcript API\x0a\x0a    Transcript \x0a        show: 'hello world';\x0a        cr;\x0a        show: anObject.\x0a\x0a    Transcript clear.\x0a\x0aSee the `Transcript` class.";

+ 2 - 2
js/Helios-Workspace-Tests.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Workspace-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/SUnit"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Workspace-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/SUnit"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Workspace-Tests');
-smalltalk.packages["Helios-Workspace-Tests"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Workspace-Tests"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLCodeWidgetTest', smalltalk.TestCase, [], 'Helios-Workspace-Tests');
 smalltalk.addMethod(

+ 2 - 2
js/Helios-Workspace.js

@@ -1,6 +1,6 @@
-define("amber/Helios-Workspace", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Helios-Core"], function(smalltalk,nil,_st){
+define("amber_core/Helios-Workspace", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Helios-Core"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Helios-Workspace');
-smalltalk.packages["Helios-Workspace"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Helios-Workspace"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('HLCodeModel', smalltalk.Object, ['announcer', 'environment', 'receiver'], 'Helios-Workspace');
 smalltalk.addMethod(

+ 2 - 2
js/IDE.js

@@ -1,6 +1,6 @@
-define("amber/IDE", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Canvas", "amber/Kernel-Exceptions", "amber/Kernel-Objects", "amber/Kernel-Collections", "amber/Kernel-Methods"], function(smalltalk,nil,_st){
+define("amber_core/IDE", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Canvas", "amber_core/Kernel-Exceptions", "amber_core/Kernel-Objects", "amber_core/Kernel-Collections", "amber_core/Kernel-Methods"], function(smalltalk,nil,_st){
 smalltalk.addPackage('IDE');
-smalltalk.packages["IDE"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["IDE"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('ClassesList', smalltalk.Widget, ['browser', 'ul', 'nodes'], 'IDE');
 smalltalk.addMethod(

+ 2 - 2
js/Importer-Exporter.js

@@ -1,6 +1,6 @@
-define("amber/Importer-Exporter", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Infrastructure"], function(smalltalk,nil,_st){
+define("amber_core/Importer-Exporter", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Kernel-Infrastructure"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Importer-Exporter');
-smalltalk.packages["Importer-Exporter"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Importer-Exporter"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('AbstractExporter', smalltalk.Object, [], 'Importer-Exporter');
 smalltalk.AbstractExporter.comment="I am an abstract exporter for Amber source code.\x0a\x0a## API\x0a\x0aUse `#exportPackage:on:` to export a given package on a Stream.";

+ 2 - 2
js/Kernel-Announcements.js

@@ -1,6 +1,6 @@
-define("amber/Kernel-Announcements", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Kernel-Announcements", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Kernel-Announcements');
-smalltalk.packages["Kernel-Announcements"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Kernel-Announcements"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('AnnouncementSubscription', smalltalk.Object, ['valuable', 'announcementClass'], 'Kernel-Announcements');
 smalltalk.AnnouncementSubscription.comment="I am a single entry in a subscription registry of an `Announcer`.\x0aSeveral subscriptions by the same object is possible.";

+ 2 - 2
js/Kernel-Classes.js

@@ -1,6 +1,6 @@
-define("amber/Kernel-Classes", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Kernel-Classes", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Kernel-Classes');
-smalltalk.packages["Kernel-Classes"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Kernel-Classes"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('Behavior', smalltalk.Object, [], 'Kernel-Classes');
 smalltalk.Behavior.comment="I am the superclass of all class objects.\x0a\x0aI define the protocol for creating instances of a class with `#basicNew` and `#new` (see `boot.js` for class constructors details).\x0a\x0aMy instances know about the subclass/superclass relationships between classes, contain the description that instances are created from,\x0aand hold the method dictionary that's associated with each class.\x0a\x0aI also provides methods for compiling methods, examining the method dictionary, and iterating over the class hierarchy.";

+ 2 - 2
js/Kernel-Collections.js

@@ -1,6 +1,6 @@
-define("amber/Kernel-Collections", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Kernel-Collections", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Kernel-Collections');
-smalltalk.packages["Kernel-Collections"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Kernel-Collections"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('Association', smalltalk.Object, ['key', 'value'], 'Kernel-Collections');
 smalltalk.Association.comment="I represent a pair of associated objects, a key and a value. My instances can serve as entries in a dictionary.\x0a\x0aInstances can be created with the class-side method `#key:value:`";

+ 2 - 2
js/Kernel-Exceptions.js

@@ -1,6 +1,6 @@
-define("amber/Kernel-Exceptions", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Kernel-Exceptions", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Kernel-Exceptions');
-smalltalk.packages["Kernel-Exceptions"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Kernel-Exceptions"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('Error', smalltalk.Object, ['messageText'], 'Kernel-Exceptions');
 smalltalk.Error.comment="From the ANSI standard:\x0a\x0aThis protocol describes the behavior of instances of class `Error`.\x0aThese are used to represent error conditions that prevent the normal continuation of processing.\x0aActual error exceptions used by an application may be subclasses of this class.\x0aAs `Error` is explicitly specified to be subclassable, conforming implementations must implement its behavior in a non-fragile manner.";

+ 4 - 4
js/Kernel-Infrastructure.js

@@ -1,6 +1,6 @@
-define("amber/Kernel-Infrastructure", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Collections"], function(smalltalk,nil,_st){
+define("amber_core/Kernel-Infrastructure", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Kernel-Collections"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Kernel-Infrastructure');
-smalltalk.packages["Kernel-Infrastructure"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Kernel-Infrastructure"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('InspectorHandler', smalltalk.Object, [], 'Kernel-Infrastructure');
 smalltalk.InspectorHandler.comment="I am responsible for inspecting object.\x0a\x0aMy class-side `inspector` inst var holds the current inspector I'm delegating object inspection to.\x0a\x0aThe default inspector object is the transcript.";
@@ -67,7 +67,7 @@ smalltalk.InspectorHandler.klass);
 
 
 smalltalk.addClass('InterfacingObject', smalltalk.Object, [], 'Kernel-Infrastructure');
-smalltalk.InterfacingObject.comment="I am superclass of all object that interface with user or environment. `Widget` and a few other classes are subclasses of me. I delegate all of the above APIs to `PlatformInterface`.\x0a\x0a## API\x0a\x0a    self alert: 'Hey, there is a problem'.\x0a    self confirm: 'Affirmative?'.\x0a    self prompt: 'Your name:'.\x0a\x0a    self ajax: #{\x0a        'url' -> '/patch.js'. 'type' -> 'GET'. dataType->'script'\x0a    }.\x0a";
+smalltalk.InterfacingObject.comment="I am superclass of all object that interface with user or environment. `Widget` and a few other classes are subclasses of me. I delegate all of the above APIs to `PlatformInterface`.\x0a\x0a## API\x0a\x0a    self alert: 'Hey, there is a problem'.\x0a    self confirm: 'Affirmative?'.\x0a    self prompt: 'Your name:'.\x0a\x0a    self ajax: #{\x0a        'url' -> '/patch.js'. 'type' -> 'GET'. dataType->'script'\x0a    }.";
 smalltalk.addMethod(
 smalltalk.method({
 selector: "ajax:",
@@ -1523,7 +1523,7 @@ smalltalk.Package.klass);
 
 
 smalltalk.addClass('PlatformInterface', smalltalk.Object, [], 'Kernel-Infrastructure');
-smalltalk.PlatformInterface.comment="I am single entry point to UI and environment interface.\x0aMy `initialize` tries several options (for now, browser environment only) to set myself up.\x0a\x0a## API\x0a\x0a    PlatformInterface alert: 'Hey, there is a problem'.\x0a    PlatformInterface confirm: 'Affirmative?'.\x0a    PlatformInterface prompt: 'Your name:'.\x0a\x0a    PlatformInterface ajax: #{\x0a        'url' -> '/patch.js'. 'type' -> 'GET'. dataType->'script'\x0a    }.\x0a";
+smalltalk.PlatformInterface.comment="I am single entry point to UI and environment interface.\x0aMy `initialize` tries several options (for now, browser environment only) to set myself up.\x0a\x0a## API\x0a\x0a    PlatformInterface alert: 'Hey, there is a problem'.\x0a    PlatformInterface confirm: 'Affirmative?'.\x0a    PlatformInterface prompt: 'Your name:'.\x0a\x0a    PlatformInterface ajax: #{\x0a        'url' -> '/patch.js'. 'type' -> 'GET'. dataType->'script'\x0a    }.";
 
 smalltalk.PlatformInterface.klass.iVarNames = ['worker'];
 smalltalk.addMethod(

+ 2 - 2
js/Kernel-Methods.js

@@ -1,6 +1,6 @@
-define("amber/Kernel-Methods", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Kernel-Methods", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Kernel-Methods');
-smalltalk.packages["Kernel-Methods"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Kernel-Methods"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('BlockClosure', smalltalk.Object, [], 'Kernel-Methods');
 smalltalk.BlockClosure.comment="I represent a lexical closure.\x0aI am is directly mapped to JavaScript Function.\x0a\x0a## API\x0a\x0a1. Evaluation\x0a\x0a    My instances get evaluated with the `#value*` methods in the 'evaluating' protocol.\x0a\x0a    Example: ` [ :x | x + 1 ] value: 3 \x22Answers 4\x22 `\x0a\x0a2. Control structures\x0a\x0a    Blocks are used (together with `Boolean`) for control structures (methods in the `controlling` protocol).\x0a\x0a    Example: `aBlock whileTrue: [ ... ]`\x0a\x0a3. Error handling\x0a\x0a    I provide the `#on:do:` method for handling exceptions.\x0a\x0a    Example: ` aBlock on: MessageNotUnderstood do: [ :ex | ... ] `";

+ 2 - 2
js/Kernel-Objects.js

@@ -1,6 +1,6 @@
-define("amber/Kernel-Objects", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st"], function(smalltalk,nil,_st){
+define("amber_core/Kernel-Objects", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Kernel-Objects');
-smalltalk.packages["Kernel-Objects"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Kernel-Objects"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('Object', smalltalk.nil, [], 'Kernel-Objects');
 smalltalk.Object.comment="**I am the root of the Smalltalk class system**. All classes in the system are subclasses of me.\x0a\x0aI provide default behavior common to all normal objects, such as:\x0a\x0a- accessing\x0a- copying\x0a- comparison\x0a- error handling\x0a- message sending\x0a- reflection\x0a\x0aAlso utility messages that all objects should respond to are defined here.\x0a\x0aI have no instance variable.\x0a\x0a##Access\x0a\x0aInstance variables can be accessed with `#instVarAt:` and `#instVarAt:put:`. `#instanceVariableNames` answers a collection of all instance variable names.\x0aAccessing JavaScript properties of an object is done through `#basicAt:`, `#basicAt:put:` and `basicDelete:`.\x0a\x0a##Copying\x0a\x0aCopying an object is handled by `#copy` and `#deepCopy`. The first one performs a shallow copy of the receiver, while the second one performs a deep copy.\x0aThe hook method `#postCopy` can be overriden in subclasses to copy fields as necessary to complete the full copy. It will be sent by the copy of the receiver.\x0a\x0a##Comparison\x0a\x0aI understand equality `#=` and identity `#==` comparison.\x0a\x0a##Error handling\x0a\x0a- `#halt` is the typical message to use for inserting breakpoints during debugging.\x0a- `#error:` throws a generic error exception\x0a- `#doesNotUnderstand:` handles the fact that there was an attempt to send the given message to the receiver but the receiver does not understand this message.\x0a\x09Overriding this message can be useful to implement proxies for example.";

+ 2 - 2
js/Kernel-Tests.js

@@ -1,6 +1,6 @@
-define("amber/Kernel-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/SUnit", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Kernel-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/SUnit", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Kernel-Tests');
-smalltalk.packages["Kernel-Tests"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Kernel-Tests"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('BlockClosureTest', smalltalk.TestCase, [], 'Kernel-Tests');
 smalltalk.addMethod(

+ 2 - 2
js/Kernel-Transcript.js

@@ -1,6 +1,6 @@
-define("amber/Kernel-Transcript", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Kernel-Transcript", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Kernel-Transcript');
-smalltalk.packages["Kernel-Transcript"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Kernel-Transcript"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('ConsoleTranscript', smalltalk.Object, ['textarea'], 'Kernel-Transcript');
 smalltalk.ConsoleTranscript.comment="I am a specific transcript emitting to the JavaScript console.\x0a\x0aIf no other transcript is registered, I am the default.";

+ 2 - 2
js/SUnit-Tests.js

@@ -1,6 +1,6 @@
-define("amber/SUnit-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/SUnit"], function(smalltalk,nil,_st){
+define("amber_core/SUnit-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/SUnit"], function(smalltalk,nil,_st){
 smalltalk.addPackage('SUnit-Tests');
-smalltalk.packages["SUnit-Tests"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["SUnit-Tests"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('ExampleSetTest', smalltalk.TestCase, ['empty', 'full'], 'SUnit-Tests');
 smalltalk.ExampleSetTest.comment="ExampleSetTest is taken from Pharo 1.4.\x0a\x0aTHe purpose of this class is to demonstrate a simple use case of the test framework.";

+ 2 - 2
js/SUnit.js

@@ -1,6 +1,6 @@
-define("amber/SUnit", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Exceptions"], function(smalltalk,nil,_st){
+define("amber_core/SUnit", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Kernel-Exceptions"], function(smalltalk,nil,_st){
 smalltalk.addPackage('SUnit');
-smalltalk.packages["SUnit"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["SUnit"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('ResultAnnouncement', smalltalk.Object, ['result'], 'SUnit');
 smalltalk.ResultAnnouncement.comment="I get signaled when a `TestCase` has been run.\x0a\x0aMy instances hold the result (instance of `TestResult`) of the test run.";

+ 2 - 2
js/Spaces.js

@@ -1,6 +1,6 @@
-define("amber/Spaces", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Exceptions", "amber/SUnit"], function(smalltalk,nil,_st){
+define("amber_core/Spaces", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects", "amber_core/Kernel-Exceptions", "amber_core/SUnit"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Spaces');
-smalltalk.packages["Spaces"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Spaces"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('ObjectSpace', smalltalk.Object, ['frame'], 'Spaces');
 smalltalk.ObjectSpace.comment="I am a connection to another Smalltalk environment.\x0aThe implementation creates an iframe on the same location as the window, and connect to the Amber environment.\x0a\x0a\x0a\x0a## Usage example:\x0a\x0a\x09| space |\x0a\x09\x0a\x09space := ObjectSpace new.\x0a\x09space do: [ smalltalk ] \x22Answers aSmalltalk\x22\x0a\x09(space do: [ smalltalk ]) == smalltalk \x22Answers false\x22\x0a\x09\x0a\x09space release \x22Remove the object space environment\x22";

+ 29 - 22
support/amber.js

@@ -1,6 +1,13 @@
-/* Amber package loading
- usage example:
- TODO
+/* Amber package loading.
+  Load this script as well as require.js (works in any order;
+    either defines 'require', thus passing config, if loaded prior require.js;
+    or calls require.config, if loaded post require.js).
+  Usage example:
+    require(['amber/devel'], function(smalltalk) {
+        smallralk.initialize();
+
+        smalltalk.Browser._open();
+    });
  */
 
 var require;
@@ -8,7 +15,7 @@ var require;
 require = function (require) {
     var scripts = document.getElementsByTagName("script");
     var src = scripts[ scripts.length - 1 ].src;
-    var home = resolveViaDOM(src).replace(/\/[^\/]+$/, "");
+    var home = resolveViaDOM(src).replace(/\/[^\/]+\/[^\/]+$/, "");
 
     function resolveViaDOM(url) {
         var a = document.createElement("a");
@@ -17,41 +24,41 @@ require = function (require) {
     }
 
     var config = {
-        baseUrl: home,
         paths: {
-            'amber_set': '.',
-            'amber_vm': '.',
-            'amber_css': '../css',
-            'amber': '../js',
-            'amber/_source': '../st',
-            'jquery': 'jQuery/jquery-1.8.2.min',
-            'jquery-ui': 'jQuery/jquery-ui-1.8.16.custom.min'
+            'amber': home+'/support',
+            'amber_vm': home+'/support',
+            'amber_css': home+'/css',
+            'amber_lib': home+'/support',
+            'amber_core': home+'/js',
+            'amber_core/_source': home+'/st',
+            'jquery': home+'/support/jQuery/jquery-1.8.2.min',
+            'jquery-ui': home+'/support/jQuery/jquery-ui-1.8.16.custom.min'
         },
         map: {
             '*': {
-                'css': 'requirejs/require-css-0.0.6/css'
+                'css': 'amber_lib/requirejs/require-css-0.0.6/css'
             },
-            'amber_set/full-devel-helios': {
-                'jquery-ui': 'jQuery/jquery-ui-1.8.24.custom.min'
+            'amber/helios': {
+                'jquery-ui': 'amber_lib/jQuery/jquery-ui-1.8.24.custom.min'
             }
         },
         shim: {
             'jquery-ui': {
                 deps: [ 'jquery' ]
             },
-            'bootstrap/js/bootstrap': {
-                deps: [ 'css!bootstrap/css/bootstrap' ]
+            'amber_lib/bootstrap/js/bootstrap': {
+                deps: [ 'css!amber_lib/bootstrap/css/bootstrap' ]
             },
-            'CodeMirror/codemirror': {
-                deps: [ 'css!CodeMirror/codemirror' ]
+            'amber_lib/CodeMirror/codemirror': {
+                deps: [ 'css!amber_lib/CodeMirror/codemirror' ]
             },
-            'jQuery/jquery.textarea': {
+            'amber_lib/jQuery/jquery.textarea': {
                 deps: [ 'jquery', 'jquery-ui' ]
             },
-            'CodeMirror/smalltalk': {
+            'amber_lib/CodeMirror/smalltalk': {
                 deps: [ './codemirror' ]
             },
-            'CodeMirror/addon/hint/show-hint': {
+            'amber_lib/CodeMirror/addon/hint/show-hint': {
                 deps: [ '../../codemirror' ]
             },
             'ensure-console': {

+ 5 - 3
support/boot.js

@@ -1054,9 +1054,11 @@ function SelectorConversionBrik(brikz, st) {
 
 /* Adds AMD and requirejs related methods to the smalltalk object */
 function AMDBrik(brikz, st) {
-	st.amdRequire = null;
-	st.defaultTransportType = "amd";
-	st.defaultAMDNamespace = "amber";
+	this.__init__ = function () {
+		st.amdRequire = st.amdRequire || null;
+		st.defaultTransportType = st.defaultTransportType || "amd";
+		st.defaultAMDNamespace = st.defaultAMDNamespace || "amber_core";
+	};
 }
 
 

+ 12 - 0
support/deploy.js

@@ -0,0 +1,12 @@
+define([
+    'amber_vm/smalltalk',
+    'amber_core/Kernel-Objects',
+    'amber_core/Kernel-Classes',
+    'amber_core/Kernel-Methods',
+    'amber_core/Kernel-Collections',
+    'amber_core/Kernel-Infrastructure',
+    'amber_core/Kernel-Exceptions',
+    'amber_core/Kernel-Transcript',
+    'amber_core/Kernel-Announcements',
+    'amber_core/Canvas'
+], function (smalltalk) { return smalltalk; });

+ 38 - 0
support/devel.js

@@ -0,0 +1,38 @@
+define([
+    'amber_vm/smalltalk',
+    'jquery',
+    'jquery-ui',
+    'amber_lib/jQuery/jquery.textarea',
+    'amber_lib/CodeMirror/codemirror',
+    'amber_lib/CodeMirror/smalltalk',
+    'amber_lib/CodeMirror/addon/hint/show-hint',
+    'css!amber_lib/CodeMirror/theme/ambiance',
+    'css!amber_lib/CodeMirror/addon/hint/show-hint',
+    'css!amber_lib/CodeMirror/amber',
+    'css!amber_css/amber',
+    'amber_core/Kernel-Objects',
+    'amber_core/Kernel-Classes',
+    'amber_core/Kernel-Methods',
+    'amber_core/Kernel-Collections',
+    'amber_core/Kernel-Infrastructure',
+    'amber_core/Kernel-Exceptions',
+    'amber_core/Kernel-Transcript',
+    'amber_core/Kernel-Announcements',
+    'amber_core/Canvas',
+    'amber_core/SUnit',
+    'amber_core/Importer-Exporter',
+    'amber_core/Compiler-Exceptions',
+    'amber_core/Compiler-Core',
+    'amber_core/Compiler-AST',
+    'amber_core/Compiler-Semantic',
+    'amber_core/Compiler-IR',
+    'amber_core/Compiler-Inlining',
+    'amber_core/Compiler-Interpreter',
+    'amber_core/Compiler-Tests',
+    'amber_vm/parser',
+    'amber_core/IDE',
+    'amber_core/Examples',
+    'amber_core/Benchfib',
+    'amber_core/Kernel-Tests',
+    'amber_core/SUnit-Tests'
+], function (smalltalk) { return smalltalk; });

+ 0 - 55
support/full-devel-helios.js

@@ -1,55 +0,0 @@
-define([
-    'jquery',
-    'jquery-ui',
-    'jQuery/jquery.textarea',
-    'bootstrap/js/bootstrap',
-    'showdown/showdown',
-    'CodeMirror/codemirror',
-    'CodeMirror/smalltalk',
-    'CodeMirror/addon/hint/show-hint',
-    'css!CodeMirror/theme/ambiance',
-    'css!CodeMirror/addon/hint/show-hint',
-    'css!CodeMirror/amber',
-    'css!amber_css/helios',
-    'amber/Kernel-Objects',
-    'amber/Kernel-Classes',
-    'amber/Kernel-Methods',
-    'amber/Kernel-Collections',
-    'amber/Kernel-Infrastructure',
-    'amber/Kernel-Exceptions',
-    'amber/Kernel-Transcript',
-    'amber/Kernel-Announcements',
-    'amber/Canvas',
-    'amber/SUnit',
-    'amber/Importer-Exporter',
-    'amber/Compiler-Exceptions',
-    'amber/Compiler-Core',
-    'amber/Compiler-AST',
-    'amber/Compiler-Semantic',
-    'amber/Compiler-IR',
-    'amber/Compiler-Inlining',
-    'amber/Compiler-Interpreter',
-    'amber/Compiler-Tests',
-    'amber_vm/parser',
-    'amber/IDE',
-    'amber/Examples',
-    'amber/Benchfib',
-    'amber/Kernel-Tests',
-    'amber/SUnit-Tests',
-    'amber/Spaces',
-    'amber/Helios-Core',
-    'amber/Helios-Exceptions',
-    'amber/Helios-Commands-Core',
-    'amber/Helios-Commands-Tools',
-    'amber/Helios-Commands-Browser',
-    'amber/Helios-Layout',
-    'amber/Helios-KeyBindings',
-    'amber/Helios-Browser',
-    'amber/Helios-Workspace',
-    'amber/Helios-Transcript',
-    'amber/Helios-Debugger',
-    'amber/Helios-Inspector',
-    'amber/Helios-References',
-    'amber/Helios-Announcements',
-    'amber/Helios-Workspace-Tests'
-], {});

+ 0 - 37
support/full-devel.js

@@ -1,37 +0,0 @@
-define([
-    'jquery',
-    'jquery-ui',
-    'jQuery/jquery.textarea',
-    'CodeMirror/codemirror',
-    'CodeMirror/smalltalk',
-    'CodeMirror/addon/hint/show-hint',
-    'css!CodeMirror/theme/ambiance',
-    'css!CodeMirror/addon/hint/show-hint',
-    'css!CodeMirror/amber',
-    'css!amber_css/amber',
-    'amber/Kernel-Objects',
-    'amber/Kernel-Classes',
-    'amber/Kernel-Methods',
-    'amber/Kernel-Collections',
-    'amber/Kernel-Infrastructure',
-    'amber/Kernel-Exceptions',
-    'amber/Kernel-Transcript',
-    'amber/Kernel-Announcements',
-    'amber/Canvas',
-    'amber/SUnit',
-    'amber/Importer-Exporter',
-    'amber/Compiler-Exceptions',
-    'amber/Compiler-Core',
-    'amber/Compiler-AST',
-    'amber/Compiler-Semantic',
-    'amber/Compiler-IR',
-    'amber/Compiler-Inlining',
-    'amber/Compiler-Interpreter',
-    'amber/Compiler-Tests',
-    'amber_vm/parser',
-    'amber/IDE',
-    'amber/Examples',
-    'amber/Benchfib',
-    'amber/Kernel-Tests',
-    'amber/SUnit-Tests'
-], {});

+ 56 - 0
support/helios.js

@@ -0,0 +1,56 @@
+define([
+    'amber_vm/smalltalk',
+    'jquery',
+    'jquery-ui',
+    'amber_lib/jQuery/jquery.textarea',
+    'amber_lib/bootstrap/js/bootstrap',
+    'amber_lib/showdown/showdown',
+    'amber_lib/CodeMirror/codemirror',
+    'amber_lib/CodeMirror/smalltalk',
+    'amber_lib/CodeMirror/addon/hint/show-hint',
+    'css!amber_lib/CodeMirror/theme/ambiance',
+    'css!amber_lib/CodeMirror/addon/hint/show-hint',
+    'css!amber_lib/CodeMirror/amber',
+    'css!amber_css/helios',
+    'amber_core/Kernel-Objects',
+    'amber_core/Kernel-Classes',
+    'amber_core/Kernel-Methods',
+    'amber_core/Kernel-Collections',
+    'amber_core/Kernel-Infrastructure',
+    'amber_core/Kernel-Exceptions',
+    'amber_core/Kernel-Transcript',
+    'amber_core/Kernel-Announcements',
+    'amber_core/Canvas',
+    'amber_core/SUnit',
+    'amber_core/Importer-Exporter',
+    'amber_core/Compiler-Exceptions',
+    'amber_core/Compiler-Core',
+    'amber_core/Compiler-AST',
+    'amber_core/Compiler-Semantic',
+    'amber_core/Compiler-IR',
+    'amber_core/Compiler-Inlining',
+    'amber_core/Compiler-Interpreter',
+    'amber_core/Compiler-Tests',
+    'amber_vm/parser',
+    'amber_core/IDE',
+    'amber_core/Examples',
+    'amber_core/Benchfib',
+    'amber_core/Kernel-Tests',
+    'amber_core/SUnit-Tests',
+    'amber_core/Spaces',
+    'amber_core/Helios-Core',
+    'amber_core/Helios-Exceptions',
+    'amber_core/Helios-Commands-Core',
+    'amber_core/Helios-Commands-Tools',
+    'amber_core/Helios-Commands-Browser',
+    'amber_core/Helios-Layout',
+    'amber_core/Helios-KeyBindings',
+    'amber_core/Helios-Browser',
+    'amber_core/Helios-Workspace',
+    'amber_core/Helios-Transcript',
+    'amber_core/Helios-Debugger',
+    'amber_core/Helios-Inspector',
+    'amber_core/Helios-References',
+    'amber_core/Helios-Announcements',
+    'amber_core/Helios-Workspace-Tests'
+], function (smalltalk) { return smalltalk; });

+ 4 - 4
support/smalltalk.js

@@ -1,10 +1,10 @@
 define("amber_vm/smalltalk", ["require", "module", "./boot"], function (require, module, boot) {
     var smalltalk = boot.smalltalk;
 	smalltalk.amdRequire = require;
-    var config = module.config && module.config();
-    if (config) {
-		smalltalk.defaultAMDNamespace = config.defaultNamespace;
-    }
+//    var config = module.config && module.config();
+//    if (config) {
+//		smalltalk.defaultAMDNamespace = config.defaultNamespace;
+//    }
     return  smalltalk;
 });
 

+ 2 - 2
test/Test.js

@@ -1,6 +1,6 @@
-define("amber/Test", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
+define("amber_core/Test", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber_core/Kernel-Objects"], function(smalltalk,nil,_st){
 smalltalk.addPackage('Test');
-smalltalk.packages["Test"].transport = {"type":"amd","amdNamespace":"amber"};
+smalltalk.packages["Test"].transport = {"type":"amd","amdNamespace":"amber_core"};
 
 smalltalk.addClass('NodeTestRunner', smalltalk.Object, [], 'Test');