📄 tst201.mal
字号:
# Mil compiler Version 1.0)# Copyright (c) 1993-2001, CWI. All rights reserved.# Predefined code segment#use "mal/iterator"; CAUSES an ERROR!! v0:= calc.oid(20000000); v1:= calc.setoid(v0);#setoid(oid(20000000));##test basic functionality of the BAT library.##focussed on strings##it includes bat.insertions,deletions,selections, and joins.# v2:= bat.new(:str,:oid); b := v2;#b:= new(str,int); v3:= bat.insert(b,"the",1@0);#b.insert("the",1); v4:= bat.insert(b,"quick",2@0);#b.insert("quick",2); v5:= bat.insert(b,"brown",3@0);#b.insert("brown",3); v6:= bat.insert(b,"fox",4@0);#b.insert("fox",4); v7:= bat.insert(b,"jumps",5@0);#b.insert("jumps",5); v8:= bat.insert(b,"over",6@0);#b.insert("over",6); v9:= bat.insert(b,"lazy",7@0);#b.insert("lazy",7); v10:= bat.insert(b,"dog",8@0);#b.insert("dog",8); v11:= calc.str(nil); v12:= bat.insert(b,v11,9@0);#b.insert(str(nil),9); v13:= bat.insert(b,".",10@0);#b.insert(".",10); v14:= calc.oid(nil); v15:= bat.insert(b,"",v14);#b.insert("",int(nil)); v16:= calc.str(nil); v17:= calc.oid(nil); v18:= bat.insert(b,v16,v17);#b.insert(str(nil),int(nil)); v19:= io.print(b);#b.print;#### Testing simple retrievals v20:= algebra.find(b,"the"); v21:= io.print(v20);#b.find("the").print; v22:= algebra.find(b,"fox"); v23:= io.print(v22);#b.find("fox").print; v24:= calc.str(nil); v25:= algebra.find(b,v24); v26:= io.print(v25);#b.find(str(nil)).print;## This should cause an error v27:= algebra.find(b,"cat"); v28:= io.print(v27);catch MALException:str; io.print(MALException);exit MALException;#b.find("cat").print;### Can we bat.delete them and re-insert them later on v29:= bat.delete(b,"fox",4@0);#b.delete("fox",4); v30:= bat.delete(b,"the",1@0);#b.delete("the",1); v31:= bat.delete(b,".",10@0);#b.delete(".",10); v32:= io.print(b);#b.print;# v33:= bat.insert(b,"fox",4@0);#b.insert("fox",4); v34:= bat.insert(b,"the",1@0);#b.insert("the",1); v35:= bat.insert(b,".",10@0);#b.insert(".",10); v36:= aggr.count(b); v37:= io.print(v36);#b.count.print;### Lets cut out a few sections v38:= algebra.select(b,2@0,4@0); v39:= io.print(v38);#b.select(2,4).print; v40:= calc.oid(nil); v41:= algebra.select(b,7@0,v40); v42:= io.print(v41);#b.select(7,int(nil)).print; v43:= calc.oid(nil); v44:= calc.oid(nil); v45:= algebra.select(b,v43,v44); v46:= io.print(v45);#b.select(int(nil),int(nil)).print;### A 2-dimensional cut v47:= algebra.fragment(b,"fox","quick",1@0,5@0); bns := v47; v48:= io.print(bns);#bns:=b.fragment("fox","quick",1,5);bns.print; v49:= calc.str(nil); v50:= algebra.fragment(b,"fox",v49,1@0,5@0); v51:= io.print(v50);#b.fragment("fox",str(nil),1,5).print; v52:= calc.str(nil); v53:= calc.oid(nil); v54:= calc.oid(nil); v55:= algebra.fragment(b,"fox",v52,v53,v54); v56:= io.print(v55);#b.fragment("fox",str(nil),int(nil),int(nil)).print; v57:= calc.str(nil); v58:= calc.oid(nil); v59:= calc.oid(nil); v60:= algebra.fragment(b,v57,"f",v58,v59); v61:= io.print(v60);#b.fragment(str(nil),"f",int(nil),int(nil)).print; v62:= bat.reverse(b); v63:= calc.oid(nil); v64:= calc.oid(nil); v65:= calc.str(nil); v66:= algebra.fragment(v62,v63,v64,v65,"f"); v67:= io.print(v66);#b.reverse.fragment(int(nil),int(nil),str(nil),"f").print;# v68:= bat.reverse(bns); v69:= algebra.join(b,v68); bnj := v69;#bnj:= b.join(bns.reverse); v70:= io.print(bnj);#bnj.print;# v71:= bat.reverse(bnj); v72:= algebra.semijoin(b,v71); bnk := v72;#bnk:= b.semijoin(bnj.reverse); v73:= io.print(bnk);#bnk.print;### testing the algebra.like command v74:= bat.reverse(b); v75:= algebra.like(v74,"ox"); v76:= io.print(v75);#b.reverse.like("ox").print; v77:= bat.reverse(b); v78:= algebra.like(v77,"fo"); v79:= io.print(v78);#b.reverse.like("fo").print; v80:= bat.reverse(b); v81:= algebra.like(v80,"fox"); v82:= io.print(v81);#b.reverse.like("fox").print; v83:= bat.reverse(b); v84:= algebra.like(v83," fox"); v85:= io.print(v84);#b.reverse.like(" fox").print;#quit;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -