Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- obj Character
- {
- def create()
- {
- far localvar = 1;
- }
- def printthing(arg)
- {
- print(arg);
- print("I printed it!");
- print(localvar);
- return -12;
- }
- def getprintthing()
- {
- return printthing;
- }
- def getholder()
- {
- return holder;
- }
- def destroy()
- {
- print("instance died");
- }
- }
- obj BlankObj
- {
- }
- def noopfunc()
- {
- }
- with(BlankObj)
- {
- }
- noopfunc();
- var lasdfiawefd = instance_create(BlankObj);
- var i;
- i = instance_create(Character);
- instance_add_variable(i, "id", i);
- i.id.y = i+1;
- print(i);
- print(i.id);
- print(i.y);
- print(i.id.y);
- def makez(argument)
- {
- far z = argument;
- }
- def printz()
- {
- print(z);
- }
- def printx(argument)
- {
- print(x);
- x += 1;
- print(argument);
- return 1234;
- }
- def asdf()
- {
- return 234658;
- }
- var as = asdf();
- print(as);
- print(asdf()*2);
- instance_execute(i, printx, "test");
- var a = instance_execute(i, printx, "test");
- print(a);
- a = print("asdf");
- print(a);
- instance_execute(i, makez, "test");
- instance_execute(i, printz);
- with(i)
- {
- print(x);
- x -= 1;
- }
- print(i.x);
- var i2 = instance_create(Character);
- i2.localvar = 10;
- with(Character)
- {
- var asdfe4 = 10;
- printthing("this is an argument");
- }
- with(Character)
- var asdfe4 = 10;
- with(i)
- far holder = i2;
- i2.localvar = 5672453;
- var bs = i2.printthing("alkergikadsg");
- var bs2 = i.getholder().getprintthing()("alkergikadsg");
- print(bs);
- print(bs2);
- i2.getprintthing()("alkergikadsg");
- var mylambda = [x = "hello, world!", y = "adsf"](){print(x); x = "f"; print(x); {var x = "hello, nobody!"; print(x);}};
- mylambda();
- mylambda();
- mylambda();
- mylambda();
- print("asdfasdf");
- var trash = [0, mylambda, [1, 42]];
- trash[2][1] += 2;
- print("asdfasdf2");
- print(trash[2][1]);
- trash[1]();
- var blanklambda = [](){};
- blanklambda();
- var countdown = [](x, self)
- {
- if(x > 0)
- {
- print(x);
- self(x-1, self);
- }
- else
- print("Liftoff!");
- };
- countdown(10, countdown);
- print(len(trash));
- var myarray = [0, 10, 2594];
- var mydict = {"a":0,"b":20,135:-1,2:myarray};
- print(mydict["b"]);
- var newdict = mydict;
- newdict["a"] = 5;
- var mybad = [newdict];
- newdict["b"] = 15;
- mydict[2] = newdict[2];
- newdict[2][0] = -453;
- print(newdict);
- print(mydict);
- print(mybad);
- var mykeys = keys(mydict);
- for(var j = 0; j < 10; {j += 1;})
- print(j);
- for(var j = 0; j < 10; {j += 1;})
- {
- if(j == 4)
- continue;
- print(j);
- if(j == 8)
- break;
- }
- var j = 34;
- var myf = compile_text("print(\"test\");");
- myf();
- var myast = parse_text("print(\"toast\");");
- var myotherast = myast;
- def rewrite(ast, callback)
- {
- ast = callback(ast);
- if(ast[0] == "named")
- {
- var max = len(ast);
- for(var i = 4; i < max; i += 1)
- ast[i] = rewrite(ast[i], callback);
- }
- return ast;
- }
- myotherast = rewrite(myotherast, [](ast)
- {
- if(ast[0] == "named" and ast[1] == "string" and len(ast) > 4)
- if(ast[4][0] == "text" and ast[4][1] == "\"toast\"")
- ast[4][1] = "\"not toast\"";
- return ast;
- });
- var mycode = compile_ast(myast);
- mycode();
- var myothercode = compile_ast(myotherast);
- myothercode();
- def add(x)
- {
- var addX = [x = x](y)
- {
- return y + x;
- };
- return addX;
- }
- var add1 = add(1);
- print(add1(3));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement