⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 no.073_s00.mal

📁 一个内存数据库的源代码这是服务器端还有客户端
💻 MAL
字号:
# Monet Mil to Mal compiler# Copyright (c) 2001-2004, CWI. All rights reserved.#Predefined code segment#The compiler can not guarantee an accurate compilation,#because MIL unlike MAL is a dynamically typed language.#A few guidelines to maximize usefullness.#- make the type of variables explicit, in particular 'nil'#- upon advice of M2m to remap identifiers, change it in your program directly#use the "mil_schema" for additional support routines#	io.print("# >Number:         73\n");#	io.print("# >Category:       Mserver\n");#	io.print("# >Synopsis:       original BAT unknown after renamed reverse BAT\n");#	io.print("# >Confidential:   no\n");#	io.print("# >Severity:       serious\n");#	io.print("# >Priority:       medium\n");#	io.print("# >Responsible:    boncz\n");#	io.print("# >State:          closed\n");#	io.print("# >Class:          sw-bug\n");#	io.print("# >Submitter-Id:   unknown\n");#	io.print("# >Arrival-Date:   Wed Nov  5 13:03:07 1997\n");#	io.print("# >Originator:     windhouw\n");#	io.print("# >Organization:\n");#	io.print("# >Release:        971007\n");#	io.print("# >Environment:\n");#	io.print("# \n");#	io.print("# >Description:\n");#	io.print("# example:\n");#	io.print("# - creating a persisten BAT with name ab;\n");#	io.print("# - naming the reverse to ba;\n");#	io.print("# - restart the server;\n");#	io.print("# - trying to access the original ab gives the following error:\n");#	io.print("#   >!ERROR: GDKload: can not access ab.desc\n");#	io.print("#   >No such file or directory!ERROR: BATprintf: BAT expected\n");#	io.print("# - access to the reverse ba succeeds;\n");#	io.print("# - access to the original ab is now succesfull.\n");#	io.print("# ======\n");#	io.print("# OUTPUT\n");#	io.print("# ======\n");#	io.print("# (windhouw@mamba 33) Mserver\n");#	io.print("# # Monet Database Server V4.00\n");#	io.print("# # Copyright (c) 1993-1997, CWI & SION.All rights reserved.\n");#	io.print("#  \n");#	io.print("# loaded;\n");#	io.print("# #-----------------------------------------#\n");#	io.print("# # module        | owner | usage_count     #\n");#	io.print("# #-----------------------------------------#\n");#	io.print("# [ \"kernel\",       \"adm\",  1               ]\n");#	io.print("# [ \"arith\",        \"adm\",  1               ]\n");#	io.print("# [ \"bat\",          \"adm\",  1               ]\n");#	io.print("# [ \"algebra\",      \"adm\",  1               ]\n");#	io.print("# [ \"sys\",          \"adm\",  1               ]\n");#	io.print("#  \n");#	io.print("# Try: modules;                - for other modules.\n");#	io.print("#      ls;                     - for persistent bat listing.\n");#	io.print("#      sigs(\"<module>\")        - for available commands per module.\n");#	io.print("#      help(\"<command>\")       - for help one-liner for a command.\n");#	io.print("#  \n");#	io.print("# #You are system administrator (adm)!\n");#	io.print("# >ab := bbp.new(int,str);\n");#	io.print("# >ab.rename(\"ab\");\n");#	io.print("# >ab.persists(true);\n");#	io.print("# >ab.commit;\n");#	io.print("# >ba := ab.reverse;\n");#	io.print("# >ba.rename(\"ba\");\n");#	io.print("# >ba.persists(true);\n");#	io.print("# >ba.commit;\n");#	io.print("# >ab.insert(1,\"een\");\n");#	io.print("# >ba.insert(\"twee\",2);\n");#	io.print("# >ab.print;\n");#	io.print("# #-----------------#\n");#	io.print("# # int   | ba      #\n");#	io.print("# #-----------------#\n");#	io.print("# [ 1,      \"een\"   ]\n");#	io.print("# [ 2,      \"twee\"  ]\n");#	io.print("# >ba.print;\n");#	io.print("# #-----------------#\n");#	io.print("# # str   | ba      #\n");#	io.print("# #-----------------#\n");#	io.print("# [ \"een\",  1       ]\n");#	io.print("# [ \"twee\", 2       ]\n");#	io.print("# >commit;\n");#	io.print("# >quit;\n");#	io.print("# (windhouw@mamba 34) Mserver\n");#	io.print("# # Monet Database Server V4.00\n");#	io.print("# # Copyright (c) 1993-1997, CWI & SION.All rights reserved.\n");#	io.print("#  \n");#	io.print("# loaded;\n");#	io.print("# #-----------------------------------------#\n");#	io.print("# # module        | owner | usage_count     #\n");#	io.print("# #-----------------------------------------#\n");#	io.print("# [ \"kernel\",       \"adm\",  1               ]\n");#	io.print("# [ \"arith\",        \"adm\",  1               ]\n");#	io.print("# [ \"bat\",          \"adm\",  1               ]\n");#	io.print("# [ \"algebra\",      \"adm\",  1               ]\n");#	io.print("# [ \"sys\",          \"adm\",  1               ]\n");#	io.print("#  \n");#	io.print("# Try: modules;                - for other modules.\n");#	io.print("#      ls;                     - for persistent bat listing.\n");#	io.print("#      sigs(\"<module>\")        - for available commands per module.\n");#	io.print("#      help(\"<command>\")       - for help one-liner for a command.\n");#	io.print("#  \n");#	io.print("# #You are system administrator (adm)!\n");#	io.print("# >ab.print;\n");#	io.print("# !ERROR: GDKload: can not access ab.desc\n");#	io.print("# No such file or directory!ERROR: BATprintf: BAT expected>\n");#	io.print("# >ba.print;\n");#	io.print("# #-----------------#\n");#	io.print("# # str   | ba      #\n");#	io.print("# #-----------------#\n");#	io.print("# [ \"een\",  1       ]\n");#	io.print("# [ \"twee\", 2       ]\n");#	io.print("# >ab.print;\n");#	io.print("# #-----------------#\n");#	io.print("# # int   | ba      #\n");#	io.print("# #-----------------#\n");#	io.print("# [ 1,      \"een\"   ]\n");#	io.print("# [ 2,      \"twee\"  ]\n");#	io.print("var ab := bbp.new(int,str);");	ab := bbp.new(nil:int,nil:str);#	io.print("ab.rename(\"ab\");");	aa_a := bat.setName(ab,"ab");#	io.print("ab.persists(true);");	ba_a := persists(ab,true);#	io.print("ab.commit();");	ca_a := commit(ab);#	io.print("var ba := ab.reverse();");	ba := bat.reverse(ab);#	io.print("ba.rename(\"ba\");");	da_a := bat.setName(ba,"ba");#	io.print("ba.persists(true);");	ea_a := persists(ba,true);#	io.print("ba.commit();");	fa_a := commit(ba);#	io.print("ab.insert(1,\"een\");");	ga_a := bat.insert(ab,1,"een");#	io.print("ba.insert(\"twee\",2);");	ha_a := bat.insert(ba,"twee",2);#	io.print("ab.print();");	ia_a := bat.print(ab);#	io.print("ba.print();");	ja_a := bat.print(ba);#	io.print("commit();");	ka_a := commit();#	io.print("quit();");	la_a := clients.quit();#Identifer 'rename' mapped to 'bat.setName'

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -