diff --git a/src/testsuite.in b/src/testsuite.in
index c36963cc66d3eee3118468d6f5f90ef35863c519..0337d18d4106001953b8438eb0311f48edd1544c 100644
--- a/src/testsuite.in
+++ b/src/testsuite.in
@@ -40,20 +40,20 @@ test_true(arrayp( _next(({})) || _prev(({}))))
 test_any(object o=this_object(); while(o=_next(o)));
 test_any(object o=this_object(); while(o=_prev(o)));
 
-test_true([["$Id: testsuite.in,v 1.17 1997/01/28 03:20:43 hubbe Exp $"]])
-test_any([[object(File) o=File(); return objectp(o);]],1)
+test_true([["$Id: testsuite.in,v 1.18 1997/02/11 09:26:59 hubbe Exp $"]])
+test_any([[object(Stdio.File) o=Stdio.File(); return objectp(o);]],1)
 test_any([[object o=Regexp("foo"); return objectp(o);]],1)
 test_any([[object o=Regexp("foo"); return object_program(o);]],Regexp)
 test_any([[class Test {}; object(Test) o=Test(); return object_program(o);]],Test)
-test_define_program(/test,[[constant foo = 1; int a() { return foo; }]])
-test_true(new("/test")->a())
-test_program(inherit "/test";)
-test_program(inherit "/test"; int a() { return foo; } )
-test_define_program(/test,[[class TEST { int a() { return 1; } }]])
-test_program(inherit "/test"; inherit TEST; )
-test_compile_error(class { object(File) foo; object(Regexp) bar=foo; })
+test_define_program(test,[[constant foo = 1; int a() { return foo; }]])
+test_true(new(test)->a())
+test_program(inherit test;)
+test_program(inherit test; int a() { return foo; } )
+test_define_program(test,[[class TEST { int a() { return 1; } }]])
+test_program(inherit test; inherit TEST; )
+test_compile_error(class { object(Stdio.File) foo; object(Regexp) bar=foo; })
 test_do(class { object foo; object(Regexp) bar=foo; })
-test_do(class { object(File) foo; object bar=foo; })
+test_do(class { object(Stdio.File) foo; object bar=foo; })
 test_any(if(int i=1) return i; return 0;,1)
 test_compile(for(int i=0;i<100;i++) return 0;)
 test_compile(foreach(({}),mixed i){})
@@ -98,7 +98,7 @@ test_equal([[glob("?f?",({"ff","ffff","off","fff",""}))]],[[({"off","fff"})]])
 test_equal([[glob("foo*bar",({"foobar","foobargazonk","","foofoobar","fobar","fooar"}))]],[[({"foobar","foofoobar"})]])
 
 // localtime
-cond([[all_efuns()->localtime]],
+cond([[all_constants()->localtime]],
 [[
 test_true(mappingp(localtime(0)))
 ]])
@@ -109,7 +109,7 @@ test_equal(sort(({4,3,2,1})),({1,2,3,4}))
 test_equal([[lambda() {string *a=({1,2,3,4}); sort(({4,3,2,1}),a); return a; }()]],[[({4,3,2,1})]] )
 test_equal([[lambda() {string *a=({1,2,3,4}),*b=a+({}); sort(({4,3,2,1}),a,b); return b; }()]],[[({4,3,2,1})]] )
 
-cond([[all_efuns()->thread_create]],
+cond([[all_constants()->thread_create]],
 [[
 // thread_create
   test_do(thread_create(lambda() { }))
@@ -137,36 +137,28 @@ return 0;
   test_true(objectp(clone(Queue)))
 ]])
 
-test_any([[
-#include <getopt.h>
-return 0;
-]],0)
 
-  test_true(find_option(({"","--foo"}),"p","foo"))
-  test_eq(find_option(({"","--foo=bar"}),"p","foo",0,0),"bar")
-  test_eq(find_option(({"","--foo","bar"}),"p","foo",0,0),"bar")
-  test_eq(find_option(({"","--","--foo=bar"}),"p","foo",0,0),0)
+  test_true(Getopt.find_option(({"","--foo"}),"p","foo"))
+  test_eq(Getopt.find_option(({"","--foo=bar"}),"p","foo",0,0),"bar")
+  test_eq(Getopt.find_option(({"","--foo","bar"}),"p","foo",0,0),"bar")
+  test_eq(Getopt.find_option(({"","--","--foo=bar"}),"p","foo",0,0),0)
 
-  test_true(find_option(({"","-p"}),"p","foo"))
-  test_eq(find_option(({"","-pbar"}),"p","foo",0,0),"bar")
-  test_eq(find_option(({"","-p","bar"}),"p","foo",0,0),"bar")
-  test_eq(find_option(({"","--","--p","bar"}),"p","foo",0,0),0)
+  test_true(Getopt.find_option(({"","-p"}),"p","foo"))
+  test_eq(Getopt.find_option(({"","-pbar"}),"p","foo",0,0),"bar")
+  test_eq(Getopt.find_option(({"","-p","bar"}),"p","foo",0,0),"bar")
+  test_eq(Getopt.find_option(({"","--","--p","bar"}),"p","foo",0,0),0)
 
-  test_equal(get_args(({"",0,0,"sune","--","-foo"})),({"","sune","-foo"}))
+  test_equal(Getopt.get_args(({"",0,0,"sune","--","-foo"})),({"","sune","-foo"}))
 
-test_any([[
-#include <string.h>
-return 0;
-]],0)
-  test_true(objectp(clone(String_buffer)))
-  test_do(clone(String_buffer)->append("foo"))
-  test_do(add_constant("Flurp",clone(String_buffer)))
+  test_true(objectp(clone(String.String_buffer)))
+  test_do(clone(String.String_buffer)->append("foo"))
+  test_do(add_constant("Flurp",clone(String.String_buffer)))
   test_do(Flurp->append("test"))
   test_do(Flurp->append("test"))
   test_eq((string)Flurp,"testtest")
   test_do(add_constant("Flurp"))
 
-  test_eq(strmult("foo",4),"foofoofoofoo")
+  test_eq(String.strmult("foo",4),"foofoofoofoo")
 
 // m_delete
 test_equal(([1:1]),m_delete(a(),0))
@@ -249,16 +241,16 @@ test_any([[mapping m=([]);int e;
     a[e]=reverse(e);
     b[e]=e;
   }
-  add_efun("mtest_m",m);
-  add_efun("mtest_i",a);
-  add_efun("mtest_v",b);
+  add_constant("mtest_m",m);
+  add_constant("mtest_i",a);
+  add_constant("mtest_v",b);
   return 1;
 ]],1)
 
 
 test_eq([[sizeof(mtest_m)]],sizeof(mtest_i))
-test_equal(sort_array(indices(mtest_m)),sort_array(mtest_i))
-test_equal(sort_array(values(mtest_m)),sort_array(mtest_v))
+test_equal(Array.sort_array(indices(mtest_m)),Array.sort_array(mtest_i))
+test_equal(Array.sort_array(values(mtest_m)),Array.sort_array(mtest_v))
 test_equal(mtest_m,copy_value(mtest_m))
 test_any([[int e; for(e=0;e<1000;e++) if(!equal(mtest_m[mtest_i[e] ],mtest_v[e])) return 0; return 1;]],1)
 
@@ -273,9 +265,9 @@ test_any([[mapping m=([]);int e;
     a[e]=reverse(e-50);
     b[e]=reverse(e-50);
   }
-  add_efun("mtest_m2",m);
-  add_efun("mtest_i2",a);
-  add_efun("mtest_v2",b);
+  add_constant("mtest_m2",m);
+  add_constant("mtest_i2",a);
+  add_constant("mtest_v2",b);
   return 1;
 ]],1)
 
@@ -306,8 +298,8 @@ MTEST(55)
 
 define([[MTEST]])
 
-test_do(add_efun("mtest_m"); add_efun("mtest_i"); add_efun("mtest_v");)
-test_do(add_efun("mtest_m2"); add_efun("mtest_i2"); add_efun("mtest_v2");)
+test_do(add_constant("mtest_m"); add_constant("mtest_i"); add_constant("mtest_v");)
+test_do(add_constant("mtest_m2"); add_constant("mtest_i2"); add_constant("mtest_v2");)
 
 // rows
 test_equal([[rows(({1,2,3,4,5,6,7,8,9}),({6,7,2}))]],[[({7,8,3})]])
@@ -333,16 +325,16 @@ ifefun(gc,
 
 
 test_eq("\377"[0],255)
-test_do(add_efun("foo",clone(class {int i;})))
+test_do(add_constant("foo",clone(class {int i;})))
 test_eq(foo->i,0)
 test_do(foo->i=17)
 test_eq(foo->i,17)
-test_do(add_efun("foo"));
-test_do(add_efun("foo",clone(class {int *i=({0});})))
+test_do(add_constant("foo"));
+test_do(add_constant("foo",clone(class {int *i=({0});})))
 test_eq(foo->i[0],0)
 test_do(foo->i[0]=17)
 test_eq(foo->i[0],17)
-test_do(add_efun("foo"));
+test_do(add_constant("foo"));
 
 // signum, signame
 test_eq(signum("SIGKILL"),9)
@@ -352,10 +344,10 @@ test_eq(signame(2),"SIGINT")
 
 // kill, signal, getpid
 test_true(intp(getpid()))
-test_do(signal(signum("SIGUSR1"),lambda() { add_efun("AFJLLAF",17); }))
+test_do(signal(signum("SIGUSR1"),lambda() { add_constant("AFJLLAF",17); }))
 test_do(kill(getpid(),signum("SIGUSR1")))
 test_eq(AFJLLAF,17)
-test_do(add_efun("AFJLLAF"))
+test_do(add_constant("AFJLLAF"))
 test_do(signal(signum("SIGUSR1",0)))
 test_do(signal(signum("SIGUSR1")))
 
@@ -364,7 +356,7 @@ test_eq(typeof(1),"int")
 test_eq(typeof(""),"string")
 test_eq(typeof(""[0]),"int")
 test_eq(typeof(0.0),"float")
-test_eq(typeof(all_efuns()["all_efuns"]),"mixed")
+test_eq(typeof(all_constants()["all_constants"]),"mixed")
 
 // class
 test_true(programp(class {}))
@@ -390,8 +382,8 @@ test_equal( ({ lambda() { return 3; } , lambda() { return 7; }, lambda() { retur
 test_any(int *a=({10}); a[0]++; return a[0], 11)
 test_any(mapping a=([10:11]); a[10]++; return a[10], 12)
 test_equal(mkmapping( ({3,6,2}), ({"3","6","2"})), ([3:"3", 6:"6", 2:"2"]))
-test_equal(sum(([3:"3", 6:"6", 2:"2"])), ([3:"3", 6:"6", 2:"2"]))
-test_true(sum(([3:"3", 6:"6", 2:"2"])) != ([3:"3", 6:"6", 2:"2"]))
+test_equal(`+(([3:"3", 6:"6", 2:"2"])), ([3:"3", 6:"6", 2:"2"]))
+test_true(`+(([3:"3", 6:"6", 2:"2"])) != ([3:"3", 6:"6", 2:"2"]))
 
 test_true(predef::stringp(""))
 test_equal([["a,b,4,7,8s,asfd,a,d,f" / ","]],[["a,b,4,7,8s,asfd,a,d,f" / ","]])
@@ -412,8 +404,8 @@ test_equal(mkmapping("abcd"/"","jklm"/"") | mkmapping("jclm"/"","alcd"/""),
 test_program(int foo() { return 17;} mixed a() { return foo() == 17; })
 test_any([[mixed a; a=2; a=a*3; return a]],6)
 test_any([[mixed a = ({1}); a=a+({2}); return equal(a,({1,2}))]],1)
-test_define_program(/test,[[int foo() { return 17; }]])
-test_any(function bar=clone((program)"/test")->foo; return bar(),17)
+test_define_program(test,[[int foo() { return 17; }]])
+test_any(function bar=clone(test)->foo; return bar(),17)
 
 // sscanf
 test_any([[mixed a; return sscanf("11","%d",a)]],1)
@@ -463,7 +455,7 @@ test_true(object_program(this_object()))
 // testing !
 test_equal(!"",0)
 test_equal(!this_object(),0)
-test_equal(!this_function(),0)
+test_equal(!Simulate.this_function(),0)
 
 // testing ==
 test_true(1==1)
@@ -471,7 +463,7 @@ test_true(!(1==2))
 test_true(""=="")
 test_true(!(""=="foo"))
 test_true(this_object()==this_object())
-test_true(this_function()==a)
+test_true(Simulate.this_function()==a)
 test_true(2.0==2.0)
 test_true(({})==({}))
 
@@ -632,7 +624,7 @@ test_eq(0 | 0,0)
 test_eq(1 | 1,1)
 test_eq(4 | 1,5)
 test_eq(1 | 9,9)
-test_equal( sort_array(({1,2,3,4,4}) | ({3,5,6})), ({1,2,3,4,4,5,6}))
+test_equal( Array.sort_array(({1,2,3,4,4}) | ({3,5,6})), ({1,2,3,4,4,5,6}))
 test_equal( (<4,5,6>) | (<5,5,5>), (<4,5,5,5,6>) )
 test_equal( ([-4:8,8:7]) | ([3:3,8:3]), ([-4:8,8:3,3:3]) )
 
@@ -712,22 +704,22 @@ test_any(mixed a=(<1>); a[0]=0; return equal(a,(<1>)),1)
 test_any(mixed a=([1:1]); a[0]=0; return equal(a,([1:1,0:0])),1)
 test_any(mixed a=([1:1]); a[1]=0; return equal(a,([1:0])),1)
 
-test_define_program(/test,[[public int q,w,e,r; mixed t; mixed getw() { return w; } void setw(int _) { w=_; }]])
-test_eq(clone((program)"/test")->q,0)
-test_eq(clone((program)"/test")->w,0)
-test_eq(clone((program)"/test")->e,0)
-test_eq(clone((program)"/test")->r,0)
-test_eq(clone((program)"/test")->getw(),0)
-test_any(object o=clone((program)"/test"); o->setw(17); return o->w,17)
-test_any(object o=clone((program)"/test"); o->w=17; return o->getw(),17)
-
-test_eq(clone((program)"/test")["q"],0)
-test_eq(clone((program)"/test")["w"],0)
-test_eq(clone((program)"/test")["e"],0)
-test_eq(clone((program)"/test")["r"],0)
-test_eq(clone((program)"/test")["getw"](),0)
-test_any(object o=clone((program)"/test"); o["setw"](17); return o["w"],17)
-test_any(object o=clone((program)"/test"); o["w"]=17; return o["getw"](),17)
+test_define_program(test,[[public int q,w,e,r; mixed t; mixed getw() { return w; } void setw(int _) { w=_; }]])
+test_eq(clone(test)->q,0)
+test_eq(clone(test)->w,0)
+test_eq(clone(test)->e,0)
+test_eq(clone(test)->r,0)
+test_eq(clone(test)->getw(),0)
+test_any(object o=clone(test); o->setw(17); return o->w,17)
+test_any(object o=clone(test); o->w=17; return o->getw(),17)
+
+test_eq(clone(test)["q"],0)
+test_eq(clone(test)["w"],0)
+test_eq(clone(test)["e"],0)
+test_eq(clone(test)["r"],0)
+test_eq(clone(test)["getw"](),0)
+test_any(object o=clone(test); o["setw"](17); return o["w"],17)
+test_any(object o=clone(test); o["w"]=17; return o["getw"](),17)
 
 // testing range
 test_eq("foObar"[0..0],"f")
@@ -752,7 +744,7 @@ test_equal(({1,2,3})[0..-100],({}))
 
 // testing @
 test_equal(({1,2,3}),lambda(mixed ... x) { return x; }(@a()))
-test_equal(explode("foo",""),lambda(mixed ... x) { return x; }(@a()))
+test_equal("foo"/"",lambda(mixed ... x) { return x; }(@a()))
 test_any([[mixed *a=({1,2,3}); return lambda(mixed ... x) { return x; }(@a) !=a]],1)
 
 // testing +=
@@ -899,7 +891,7 @@ test_any(int e;string t=""; for(e=0;e<10;e++) switch(e) { default: t+=e; case 4.
 test_any([[float e,q; q=0.0; for(e=0.1;e<10.0;e+=1.0) switch(e) { default: q+=e; case 4.0..8.0: } return q]],0.1+1.1+2.1+3.1+8.1+9.1)
 
 // testing preprocessor
-test_any(int e; object o=clone((program)"/precompiled/file"); if(!o->open("conftest.h","wct")) return -1; e=o->write("return 17;\n"); if(!o->close()) return -1; return e,11)
+test_any(int e; object o=clone(Stdio.File); if(!o->open("conftest.h","wct")) return -1; e=o->write("return 17;\n"); if(!o->close()) return -1; return e,11)
 test_any([[
 #include "conftest.h"
 ]],17)
@@ -1127,7 +1119,7 @@ return 1;
 ]],1)
 
 // #if efun
-// see test for add_efun()
+// see test for add_constant()
 
 // #if /* */
 test_any([[
@@ -1367,8 +1359,8 @@ do_test_foop(mappingp,6)
 do_test_foop(multisetp,7)
 do_test_foop(programp,8)
 
-// add_efun
-test_do(add_efun("foobar",lambda() { return 1; }))
+// add_constant
+test_do(add_constant("foobar",lambda() { return 1; }))
 test_any([[
 #if efun(foobar)
 return 1;
@@ -1377,7 +1369,7 @@ return 0;
 #endif
 ]],1)
 test_eq(foobar(),1)
-test_do(add_efun("foobar"))
+test_do(add_constant("foobar"))
 test_any([[
 #if efun(foobar)
 return 1;
@@ -1398,9 +1390,9 @@ test_true(multisetp(aggregate_multiset()))
 test_true(multisetp(aggregate_multiset()))
 
 // - all_efuns
-test_true(mappingp(all_efuns()))
-test_true(all_efuns()["all_efuns"])
-test_eq(all_efuns()["all_efuns"],all_efuns)
+test_true(mappingp(all_constants()))
+test_true(all_constants()["all_constants"])
+test_eq(all_constants()["all_constants"],all_constants)
 
 // - allocate
 test_true(arrayp(allocate(0)))
@@ -1417,9 +1409,9 @@ test_eq(1,call_function(lambda(int a){ return a; },1))
 test_eq(1,call_function(intp,1))
 
 // - capitalize
-test_eq(capitalize("fubar"),"Fubar")
-test_eq(capitalize("FooBar"),"FooBar")
-test_eq(capitalize("-"),"-")
+test_eq(String.capitalize("fubar"),"Fubar")
+test_eq(String.capitalize("FooBar"),"FooBar")
+test_eq(String.capitalize("-"),"-")
 
 // - clone
 // clone is already tested a lot by this script
@@ -1468,7 +1460,7 @@ test_true(stringp(ctime(0)))
 
 // - destruct
 // FIXME put tests for destruct here.
-test_do(add_efun("PROG",compile_string("int foo() { return 1; }")));
+test_do(add_constant("PROG",compile_string("int foo() { return 1; }")));
 test_any([[object o=clone(PROG); destruct(o); return o]],0);
 test_any([[object o=clone(PROG); destruct(o); return objectp(o)]],0);
 test_any([[object *o=({clone(PROG)}); destruct(o[0]); return o-({0}) ]],({}));
@@ -1483,9 +1475,9 @@ test_do([[object t,*o=({}); o+=({t=clone(PROG)}); destruct(t); o=({});]]);
 // FIXME put test for exit here
 
 // - explode
-test_equal(({"a","b","c",}), explode("anna bnna c","nna "))
-test_equal(({"","",}),explode("hej","hej"))
-test_equal(({"",}),explode("","hej"))
+test_equal(({"a","b","c",}), "anna bnna c"/"nna ")
+test_equal(({"","",}),"hej"/"hej")
+test_equal(({"",}),""/"hej")
 
 // - fork()
 // FIXME: add tests for fork
@@ -1499,7 +1491,7 @@ test_eq(function_object(a),this_object())
 test_eq(function_name(function_object),0)
 
 // - get_function (actually in simulate.pike)
-test_eq(a,get_function(this_object(),"a"))
+test_eq(a,Simulate.get_function(this_object(),"a"))
 test_eq(a,this_object()->a)
 
 // - hash
@@ -1511,18 +1503,18 @@ test_true(hash("gazonk",10)<10)
 test_eq(hash("foobargazonk"),hash("foobargazonk"))
 
 // - implode
-test_eq([[implode(({}),"")]],"")
-test_eq([[implode(explode("foo","o"),"o")]],"foo")
-test_eq([[implode(({"foo","bar"}),"-")]],"foo-bar")
-test_eq([[implode(({"foo",0,"bar"}),"-")]],"foo-bar")
-test_eq([[implode(({1.0,"foo",0,"bar",this_object(),([])}),"-")]],"foo-bar")
-test_eq([[implode(({"f","o","o"}),"")]],"foo")
+test_eq([[({})*""]],"")
+test_eq([[("foo"/"o")*"o"]],"foo")
+test_eq([[({"foo","bar"})*"-"]],"foo-bar")
+test_eq([[({"foo",0,"bar"})*"-"]],"foo-bar")
+test_eq([[({1.0,"foo",0,"bar",this_object(),([])})*"-"]],"foo-bar")
+test_eq([[({"f","o","o"})*""]],"foo")
 
 // - indices
 test_equal(indices("foo"),({0,1,2}))
 test_equal(indices(({'f','o','o'})),({0,1,2}))
-test_equal(sort_array(indices(([7:3,8:9,99:12]))),({7,8,99}))
-test_equal(sort_array(indices((<7,8,99>))),({7,8,99}))
+test_equal(Array.sort_array(indices(([7:3,8:9,99:12]))),({7,8,99}))
+test_equal(Array.sort_array(indices((<7,8,99>))),({7,8,99}))
 test_equal(mkmultiset(indices(this_object())),(<"a","b">))
 
 // - lower_case
@@ -1537,9 +1529,6 @@ test_any(int e;object o=next_object(); for(e=0;e<1000 && o;e++) o=next_object(o)
 // - object_program
 test_true(programp(object_program(this_object())))
 
-// - query_host_name
-test_true(stringp(query_host_name()))
-
 // - query_num_arg
 test_eq(lambda(int ... q) { return query_num_arg(); }(),0)
 test_eq(lambda(int ... q) { return query_num_arg(); }(1),1)
@@ -1640,22 +1629,22 @@ test_do(sleep(1))
 test_do(sleep(0.5))
 
 // - sum
-test_eq(sum(1,1),2)
-test_eq(sum(1,-2),-1)
-test_eq(sum(-2,-2),-4)
-test_eq(sum("hi","there"),"hithere")
-test_eq(sum("human","number",666),"humannumber666")
-test_eq(sum("human","number",666),"humannumber666")
-test_eq(sum("human","number",666),"humannumber666")
-test_eq(sum("human","number",666,111),"humannumber666111")
-test_eq(sum("humannumber",sum(666+111)),"humannumber777")
-test_eq(sum("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","x","y"),"abcdefghijklmnopqrstuvxy")
-test_eq(sum(1.0+1.0),2.0)
-test_eq(sum(1.0,-1.0),0.0)
-test_eq(sum(-1.0,-1.0),-2.0)
-test_equal(sum(({1,2,3}),({4,5,6})),({1,2,3,4,5,6}))
-test_equal(sum((<1,2,3,4>),(<4,5,6>)),(<1,2,3,4,4,5,6>))
-test_equal(sum(([0:1,3:6]),([5:2,3:6])),([0:1,3:6,3:6,5:2]))
+test_eq(`+(1,1),2)
+test_eq(`+(1,-2),-1)
+test_eq(`+(-2,-2),-4)
+test_eq(`+("hi","there"),"hithere")
+test_eq(`+("human","number",666),"humannumber666")
+test_eq(`+("human","number",666),"humannumber666")
+test_eq(`+("human","number",666),"humannumber666")
+test_eq(`+("human","number",666,111),"humannumber666111")
+test_eq(`+("humannumber",`+(666+111)),"humannumber777")
+test_eq(`+("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","x","y"),"abcdefghijklmnopqrstuvxy")
+test_eq(`+(1.0+1.0),2.0)
+test_eq(`+(1.0,-1.0),0.0)
+test_eq(`+(-1.0,-1.0),-2.0)
+test_equal(`+(({1,2,3}),({4,5,6})),({1,2,3,4,5,6}))
+test_equal(`+((<1,2,3,4>),(<4,5,6>)),(<1,2,3,4,4,5,6>))
+test_equal(`+(([0:1,3:6]),([5:2,3:6])),([0:1,3:6,3:6,5:2]))
 
 // - this_object
 test_true(objectp(this_object()))
@@ -1678,7 +1667,7 @@ test_equal(upper_case("Foo1234-*~\n"),"FOO1234-*~\n")
 // - values
 test_equal(values("foo"),({'f','o','o'}))
 test_equal(values(({'f','o','o'})),({'f','o','o'}))
-test_equal(sort_array(values(([7:3,8:9,99:12]))),({3,9,12}))
+test_equal(Array.sort_array(values(([7:3,8:9,99:12]))),({3,9,12}))
 test_equal(values((<7,8,99>)),({1,1,1}))
 test_equal(mkmultiset(values(this_object())),(<a,b>))
 
@@ -1688,23 +1677,23 @@ test_eq(zero_type(([])[7]),1)
 
 test_program(int b=10; mixed a() { return 1; })
 test_program(mixed b=10; mixed a() { return 1;})
-test_define_program(/test,[[int q,w,e,r,t; mixed foo() { return 10; }]])
+test_define_program(test,[[int q,w,e,r,t; mixed foo() { return 10; }]])
 
-test_program(inherit "/test"; mixed a() { return foo()==10; })
-test_program(inherit "/test"; mixed a() { return test::foo()==10; })
-test_program(inherit "/test" : bar; mixed a() { return bar::foo()==10; })
+test_program(inherit test; mixed a() { return foo()==10; })
+test_program(inherit test; mixed a() { return test::foo()==10; })
+test_program(inherit test : bar; mixed a() { return bar::foo()==10; })
 
-test_define_program(/test2,[[int z,x,c,v,b; mixed bar() { return 11; }]])
-test_program(inherit "/test"; inherit "/test2"; mixed a() { return foo()==10 && bar()==11; })
-test_program(inherit "/test2"; inherit "/test"; mixed a() { return foo()==10 && bar()==11; })
+test_define_program(test2,[[int z,x,c,v,b; mixed bar() { return 11; }]])
+test_program(inherit test; inherit test2; mixed a() { return foo()==10 && bar()==11; })
+test_program(inherit test2; inherit test; mixed a() { return foo()==10 && bar()==11; })
 
-test_define_program(/test,[[int q,w,e,r; mixed t; mixed getw() { return w; } void setw(int _) { w=_; }]])
-test_define_program(/test2,[[int z,x,c,v,b; mixed getb() { return b; } void setb(int _) { b=_; }]])
+test_define_program(test,[[int q,w,e,r; mixed t; mixed getw() { return w; } void setw(int _) { w=_; }]])
+test_define_program(test2,[[int z,x,c,v,b; mixed getb() { return b; } void setb(int _) { b=_; }]])
 
-test_program(inherit "/test"; inherit "/test2"; mixed a() { w=20; b=22; return getw()==20 && getb()==22; })
-test_program(inherit "/test"; inherit "/test2"; mixed a() { setw(20); setb(22); return w==20 && b==22; })
-test_program(inherit "/test2"; inherit "/test"; mixed a() { w=20; b=22; return getw()==20 && getb()==22; })
-test_program(inherit "/test2"; inherit "/test"; mixed a() { setw(20); setb(22); return w==20 && b==22; })
+test_program(inherit test; inherit test2; mixed a() { w=20; b=22; return getw()==20 && getb()==22; })
+test_program(inherit test; inherit test2; mixed a() { setw(20); setb(22); return w==20 && b==22; })
+test_program(inherit test2; inherit test; mixed a() { w=20; b=22; return getw()==20 && getb()==22; })
+test_program(inherit test2; inherit test; mixed a() { setw(20); setb(22); return w==20 && b==22; })
 
 test_eval_error(clone(class{int i;void foo(){ destruct(this_object());i=0;}})->foo())