| 
														
															@@ -48,7 +48,7 @@ if(typeof console === "undefined") { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 /* Array extensions */ 
														 | 
														
														 | 
														
															 /* Array extensions */ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 Array.prototype.addElement = function(el) { 
														 | 
														
														 | 
														
															 Array.prototype.addElement = function(el) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-	if(typeof el === 'undefined') { return false; } 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+	if(typeof el === 'undefined') { return; } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	if(this.indexOf(el) == -1) { 
														 | 
														
														 | 
														
															 	if(this.indexOf(el) == -1) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         this.push(el); 
														 | 
														
														 | 
														
															         this.push(el); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } 
														 | 
														
														 | 
														
															     } 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -292,7 +292,7 @@ function Smalltalk() { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     function installSuperclass(klass) { 
														 | 
														
														 | 
														
															     function installSuperclass(klass) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         // only if the klass has not been initialized yet. 
														 | 
														
														 | 
														
															         // only if the klass has not been initialized yet. 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-		if(klass.fn.prototype._yourself) { return false; } 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		if(klass.fn.prototype._yourself) { return; } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		if(klass.superclass && klass.superclass !== nil) { 
														 | 
														
														 | 
														
															 		if(klass.superclass && klass.superclass !== nil) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             inherits(klass.fn, klass.superclass.fn); 
														 | 
														
														 | 
														
															             inherits(klass.fn, klass.superclass.fn); 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -528,6 +528,7 @@ function Smalltalk() { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				st.thisContext = undefined; 
														 | 
														
														 | 
														
															 				st.thisContext = undefined; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				if(error.smalltalkError) { 
														 | 
														
														 | 
														
															 				if(error.smalltalkError) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 					handleError(error); 
														 | 
														
														 | 
														
															 					handleError(error); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+					return nil; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				} else { 
														 | 
														
														 | 
														
															 				} else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 					throw(error); 
														 | 
														
														 | 
														
															 					throw(error); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				} 
														 | 
														
														 | 
														
															 				} 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -561,6 +562,7 @@ function Smalltalk() { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				st.thisContext = undefined; 
														 | 
														
														 | 
														
															 				st.thisContext = undefined; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				if(error.smalltalkError) { 
														 | 
														
														 | 
														
															 				if(error.smalltalkError) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 					handleError(error); 
														 | 
														
														 | 
														
															 					handleError(error); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+					return nil; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				} else { 
														 | 
														
														 | 
														
															 				} else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 					throw(error); 
														 | 
														
														 | 
														
															 					throw(error); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				} 
														 | 
														
														 | 
														
															 				} 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -640,9 +642,7 @@ function Smalltalk() { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	/* Handle thisContext pseudo variable */ 
														 | 
														
														 | 
														
															 	/* Handle thisContext pseudo variable */ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	st.getThisContext = function() { 
														 | 
														
														 | 
														
															 	st.getThisContext = function() { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-		if(st.thisContext) { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-			return st.thisContext.copy(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-		} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		return st.thisContext ? st.thisContext.copy() : nil; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	}; 
														 | 
														
														 | 
														
															 	}; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	function pushContext(receiver, selector, temps) { 
														 | 
														
														 | 
														
															 	function pushContext(receiver, selector, temps) { 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -748,13 +748,14 @@ function Smalltalk() { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			return boolean; 
														 | 
														
														 | 
														
															 			return boolean; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		} else { 
														 | 
														
														 | 
														
															 		} else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			st.NonBooleanReceiver._new()._object_(boolean)._signal(); 
														 | 
														
														 | 
														
															 			st.NonBooleanReceiver._new()._object_(boolean)._signal(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+			//TODO return sane value 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		} 
														 | 
														
														 | 
														
															 		} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	}; 
														 | 
														
														 | 
														
															 	}; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     /* Smalltalk initialization. Called on page load */ 
														 | 
														
														 | 
														
															     /* Smalltalk initialization. Called on page load */ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     st.initialize = function() { 
														 | 
														
														 | 
														
															     st.initialize = function() { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-		if(initialized) {return false} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		if(initialized) { return; } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		classes.forEach(function(klass) { 
														 | 
														
														 | 
														
															 		classes.forEach(function(klass) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             st.init(klass); 
														 | 
														
														 | 
														
															             st.init(klass); 
														 |