📄 no.024.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: 24\n");# io.print("# >Category: MIL\n");# io.print("# >Synopsis: Assignment in proc\n");# io.print("# >Confidential: no\n");# io.print("# >Severity: serious\n");# io.print("# >Priority: high\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: Sun Aug 31 09:45:04 1997\n");# io.print("# >Originator: mk\n");# io.print("# >Organization:\n");# io.print("# >Release: 970101\n");# io.print("# >Environment:\n");# io.print("# SGI\n");# io.print("# >Description:\n");# io.print("# #SCRIPT\n");# io.print("# > b:= bbp.new(int,int);\n");# io.print("# > proc error1(B) : void {\n");# io.print("# > B.insert(1,2);\n");# io.print("# > B.insert(2,3);\n");# io.print("# > B:= B.join(B);\n");# io.print("# > bat.print(B);\n");# io.print("# > }\n");# io.print("# > error1(b);\n");# io.print("# #-----------------#\n");# io.print("# # h | t #\n");# io.print("# #-----------------#\n");# io.print("# [ 1, 3 ]\n");# io.print("# > bat.print(b);\n");# io.print("# #-----------------#\n");# io.print("# # h | t #\n");# io.print("# #-----------------#\n");# io.print("# [ 1, 2 ]\n");# io.print("# [ 2, 3 ]\n");# io.print("# \n");# io.print("# The semantics of B is unclear within proc\n");# io.print("var b:= bbp.new(int,int);"); b := bbp.new(nil:int,nil:int);# io.print("proc error1(bat B) : void {");function error1(B:bat[:any$1,:any$2]):void;# io.print(" B.insert(1,2);"); aa_a := bat.insert(B,1,2);# io.print(" B.insert(2,3);"); ba_a := bat.insert(B,2,3);# io.print(" B:= B.join(B);"); B := algebra.join(B,B);# io.print(" bat.print(B);"); ca_a := bat.print(B);end error1;# io.print("error1(b);"); da_a := error1(b);# io.print("print(b);"); ea_a := bat.print(b);# io.print("quit();"); fa_a := clients.quit();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -