Browse Source

updates to the external StartOzServer.oz script

  the author of these changes is Torsten Anders

* contrib/scripts/StartOzServer.oz (MyStream):
Eric Schulte 13 years ago
parent
commit
a56e7c7508
1 changed files with 14 additions and 3 deletions
  1. 14 3
      contrib/scripts/StartOzServer.oz

+ 14 - 3
contrib/scripts/StartOzServer.oz

@@ -60,7 +60,7 @@ MyCompiler = Emacs.condSend.compiler
 {MyCompiler enqueue(setSwitch(expression true))}
 {Browse
  {MyCompiler enqueue(feedVirtualString(
-			{LUtils.accum ["try\n"
+			{Accum ["try\n"
 % 				       "skip\n" % do something in any case..
 				       "1 div 0" % my code
 % 				       "1" % my code
@@ -188,7 +188,7 @@ thread
     proc {$ Code}
        Result
        %% Catch any exception (so the will not cause blocking) and return nil in that case
-       FullCode = {LUtils.accum ["try\n"
+       FullCode = {Accum ["try\n"
 % 				 "skip\n" % do something in any case..
 				 Code
 				 "\ncatch E then {Error.printException E}\n"
@@ -198,7 +198,7 @@ thread
     in
        %% ?? Should I make setting switches etc atomic?
        {MyCompiler enqueue(setSwitch(expression true))}
-       Result = {MyCompiler enqueue(feedVirtualString(FullCode return(result: $)))}
+       {MyCompiler enqueue(feedVirtualString(FullCode return(result: ?Result)))}
        {MyCompiler enqueue(setSwitch(expression false))}
        %%
        {Wait Result}
@@ -212,6 +212,17 @@ end
 
 
 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% Aux defs
+%%
+
+/** %% Binds the accumulation of the binary function Fn on all neighbors in Xs to Y. E.g., Accum returns the sum in Xs if Fn is Number.'+'.
+%% */
+proc {Accum Xs Fn Y}
+   {List.foldL Xs.2 Fn Xs.1 Y}
+end
+