<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>pydemo/index.html</filename>
    </added>
    <added>
      <filename>pydemo/javascripts/error.js</filename>
    </added>
    <added>
      <filename>pydemo/python/app.py</filename>
    </added>
    <added>
      <filename>pydemo/python/app.xaml</filename>
    </added>
    <added>
      <filename>pydemo/stylesheets/error.css</filename>
    </added>
    <added>
      <filename>pydemo/stylesheets/screen.css</filename>
    </added>
    <added>
      <filename>samples/ruby/repl/index.html</filename>
    </added>
    <added>
      <filename>samples/ruby/repl/javascripts/error.js</filename>
    </added>
    <added>
      <filename>samples/ruby/repl/ruby/app.rb</filename>
    </added>
    <added>
      <filename>samples/ruby/repl/ruby/app.xaml</filename>
    </added>
    <added>
      <filename>samples/ruby/repl/ruby/silverlight.rb</filename>
    </added>
    <added>
      <filename>samples/ruby/repl/stylesheets/console.css</filename>
    </added>
    <added>
      <filename>samples/ruby/repl/stylesheets/error.css</filename>
    </added>
    <added>
      <filename>samples/ruby/repl/stylesheets/screen.css</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -18,7 +18,7 @@
 #silverlightDlrConsole {
   padding: 15px;
   background-color: black;
-  height: 250px;
+  height: 300px;
   overflow: auto;
 }
 </diff>
      <filename>samples/ruby/photoviewer/stylesheets/console.css</filename>
    </modified>
    <modified>
      <diff>@@ -34,6 +34,7 @@ namespace Microsoft.Scripting.Silverlight {
         private HtmlElement      _silverlightDlrConsoleCode;
         private HtmlElement      _silverlightDlrConsoleResult;
         private HtmlElement      _silverlightDlrConsolePrompt;
+        private ScriptEngine     _engine;
         #endregion
 
         #region Console management
@@ -54,6 +55,7 @@ namespace Microsoft.Scripting.Silverlight {
             _silverlightDlrConsoleCode   = HtmlPage.Document.GetElementById(_sdlrCode);
             _silverlightDlrConsoleResult = HtmlPage.Document.GetElementById(_sdlrResult);
             _silverlightDlrConsolePrompt = HtmlPage.Document.GetElementById(_sdlrPrompt);
+            _engine = DynamicApplication.Current.Engine;
         }
 
         void Start() {
@@ -135,7 +137,7 @@ namespace Microsoft.Scripting.Silverlight {
 
         #region Running Code
         string TryExpression(string text) {
-            var props = DynamicApplication.Current.Engine.CreateScriptSourceFromString(
+            var props = _engine.CreateScriptSourceFromString(
                 text, SourceCodeKind.Expression
             ).GetCodeProperties();
             string result;
@@ -160,7 +162,7 @@ namespace Microsoft.Scripting.Silverlight {
         object DoSingleLine(bool forceExecute) {
             var valid = TryExpression(_code);
             if (valid != null) {
-                var source = DynamicApplication.Current.Engine.CreateScriptSourceFromString(_code, SourceCodeKind.Expression);
+                var source = _engine.CreateScriptSourceFromString(_code, SourceCodeKind.Expression);
                 return ExecuteCode(source);
             } else {
                 DoMultiLine(forceExecute);
@@ -171,7 +173,7 @@ namespace Microsoft.Scripting.Silverlight {
         object DoMultiLine(bool forceExecute) {
             if (forceExecute || IsComplete(_code, false)) {
                 _multiLineComplete = true;
-                var source = DynamicApplication.Current.Engine.CreateScriptSourceFromString(_code, SourceCodeKind.InteractiveCode);
+                var source = _engine.CreateScriptSourceFromString(_code, SourceCodeKind.InteractiveCode);
                 return ExecuteCode(source);
             } else {
                 _multiLine = true;
@@ -195,7 +197,7 @@ namespace Microsoft.Scripting.Silverlight {
         }
 
         bool IsComplete(string text, bool allowIncomplete) {
-            var props = DynamicApplication.Current.Engine.CreateScriptSourceFromString(
+            var props = _engine.CreateScriptSourceFromString(
                 text, SourceCodeKind.InteractiveCode
             ).GetCodeProperties();
             var result = (props != ScriptCodeParseResult.Invalid) &amp;&amp;
@@ -239,7 +241,11 @@ namespace Microsoft.Scripting.Silverlight {
 
         void ShowValueInResultDiv(object result) {
             var resultDiv = HtmlPage.Document.CreateElement(&quot;div&quot;);
-            resultDiv.SetProperty(&quot;innerHTML&quot;, result != null ? result.ToString() : &quot;nil&quot;);
+            ScriptScope scope = _engine.CreateScope();
+            scope.SetVariable(&quot;sdlr_result&quot;, result);
+            result = _engine.CreateScriptSourceFromString(&quot;sdlr_result.inspect&quot;).Execute(scope);
+            var resultStr = result.ToString();
+            resultDiv.SetProperty(&quot;innerHTML&quot;, result != null ? resultStr : &quot;nil&quot;);
             _silverlightDlrConsoleResult.AppendChild(resultDiv);
         }
   </diff>
      <filename>src/Microsoft.Scripting.Silverlight/Console.cs</filename>
    </modified>
    <modified>
      <diff>@@ -194,6 +194,15 @@ namespace Microsoft.Scripting.Silverlight {
             return new Uri(baseUri + relativeUri, UriKind.Relative);
         }
 
+        public static ScriptRuntimeSetup CreateRuntimeSetup() {
+            ScriptRuntimeSetup setup = Configuration.TryParseFile();
+            if (setup == null) {
+                setup = Configuration.LoadFromAssemblies(Package.GetManifestAssemblies());
+            }
+            setup.HostType = typeof(BrowserScriptHost);
+            return setup;
+        }
+
         #endregion
 
         #region implementation
@@ -219,20 +228,14 @@ namespace Microsoft.Scripting.Silverlight {
 
             ParseArguments(e.InitParams);
             
-            ScriptRuntimeSetup setup = Configuration.TryParseFile();
-            if (setup == null) {
-                setup = Configuration.LoadFromAssemblies(Package.GetManifestAssemblies());
-            }
-
-            InitializeDLR(setup);
+            InitializeDLR();
 
             StartMainProgram();
         }
 
-        private void InitializeDLR(ScriptRuntimeSetup setup) {
-            setup.HostType = typeof(BrowserScriptHost);
+        private void InitializeDLR() {
+            var setup = CreateRuntimeSetup();
             setup.DebugMode = _debug;
-
             setup.Options[&quot;SearchPaths&quot;] = new string[] { String.Empty };
             
             _runtimeSetup = setup;</diff>
      <filename>src/Microsoft.Scripting.Silverlight/DynamicApplication.cs</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>08b3919d03b2c53c892c18ba4c38bb19e30aaa38</id>
    </parent>
  </parents>
  <author>
    <name>Jimmy Schementi</name>
    <login></login>
    <email>jschementi@gmail.com</email>
  </author>
  <url>http://github.com/jschementi/agdlr/commit/f7e4b6a22974209600b6b95a8126bf63db0cdcf6</url>
  <id>f7e4b6a22974209600b6b95a8126bf63db0cdcf6</id>
  <committed-date>2008-11-16T11:06:55-08:00</committed-date>
  <authored-date>2008-11-16T11:06:55-08:00</authored-date>
  <message>Repl and Python demo</message>
  <tree>ef941a4e2701dd920972f3ff642a54dd152495e8</tree>
  <committer>
    <name>Jimmy Schementi</name>
    <login></login>
    <email>jschementi@gmail.com</email>
  </committer>
</commit>
