📄 no.125.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: 125\n");# io.print("# >Category: Module_math\n");# io.print("# >Synopsis: (almost) all functions of mmath return strange results on IRIX.\n");# io.print("# >Confidential: no\n");# io.print("# >Severity: serious\n");# io.print("# >Priority: medium\n");# io.print("# >Responsible: niels\n");# io.print("# >State: open\n");# io.print("# >Class: sw-bug\n");# io.print("# >Submitter-Id: unknown\n");# io.print("# >Arrival-Date: Fri Feb 27 16:36:42 1998\n");# io.print("# >Originator: manegold\n");# io.print("# >Organization:\n");# io.print("# >Release: \n");# io.print("# >Environment:\n");# io.print("# IRIX\n");# io.print("# >Description:\n");# io.print("# (almost) all functions of mmath return strange results on IRIX. \n");# io.print("# \n");# io.print("# test script and output for both GNU=ON & GNU=OFF follow.\n");# io.print("# \n");# io.print("# stefan\n");# io.print("# \n");# io.print("# ================================================================================\n");# io.print("# test script (also available as 'testing/plain/mmath2/script.mil')\n");# io.print("# --------------------------------------------------------------------------------\n");# io.print("# setoid(oid(20000000));\n");# io.print("# module(mmath);\n");# io.print("# sin(dbl(0)).print();\n");# io.print("# sin(M_PI_4).print();\n");# io.print("# sin(M_PI_2).print();\n");# io.print("# sin(M_PI).print();\n");# io.print("# sin(3*M_PI_2).print();\n");# io.print("# cos(dbl(0)).print();\n");# io.print("# cos(M_PI_4).print();\n");# io.print("# cos(M_PI_2).print();\n");# io.print("# cos(M_PI).print();\n");# io.print("# cos(3*M_PI_2).print();\n");# io.print("# tan(dbl(0)).print();\n");# io.print("# tan(M_PI_4).print();\n");# io.print("# tan(M_PI_2).print();\n");# io.print("# tan(M_PI).print();\n");# io.print("# tan(3*M_PI_2).print();\n");# io.print("# asin(dbl(-1)).print();\n");# io.print("# asin(dbl(-0.5)).print();\n");# io.print("# asin(dbl(0)).print();\n");# io.print("# asin(dbl(0.5)).print();\n");# io.print("# asin(dbl(1)).print();\n");# io.print("# acos(dbl(-1)).print();\n");# io.print("# acos(dbl(-0.5)).print();\n");# io.print("# acos(dbl(0)).print();\n");# io.print("# acos(dbl(0.5)).print();\n");# io.print("# acos(dbl(1)).print();\n");# io.print("# atan(dbl(-1)).print();\n");# io.print("# atan(dbl(-0.5)).print();\n");# io.print("# atan(dbl(0)).print();\n");# io.print("# atan(dbl(0.5)).print();\n");# io.print("# atan(dbl(1)).print();\n");# io.print("# \n");# io.print("# asin(sin(M_PI)).print();\n");# io.print("# acos(cos(M_PI)).print();\n");# io.print("# atan(tan(M_PI_2)).print();\n");# io.print("# atan(tan(M_PI_4)).print();\n");# io.print("# sqrt(pow(dbl(2),dbl(2))).print();\n");# io.print("# \n");# io.print("# exp(dbl(10)).print(); \n");# io.print("# log(dbl(10)).print();\n");# io.print("# log10(dbl(10)).print();\n");# io.print("# \n");# io.print("# ceil(dbl(1.2)).print();\n");# io.print("# fabs(dbl(1.2)).print();\n");# io.print("# floor(dbl(1.2)).print();\n");# io.print("# fmod(dbl(15.2),dbl(2.5)).print();\n");# io.print("# --------------------------------------------------------------------------------\n");# io.print("# ================================================================================\n");# io.print("# differences between SunOS5.5 and IRIX6.2 compiled with GNU=ON\n");# io.print("# --------------------------------------------------------------------------------\n");# io.print("# --- .SunOS5.5/plain/mmath2/111.out Fri Feb 27 16:00:24 1998\n");# io.print("# +++ .IRIX6.2/plain/mmath2/111.out Fri Feb 27 16:00:01 1998\n");# io.print("# @@ -1,3 +1,3 @@\n");# io.print("# Statistics about the output of plain/mmath2:\n");# io.print("# - 143 lines, 385 words, 3505 chars\n");# io.print("# + 143 lines, 385 words, 3751 chars\n");# io.print("# \n");# io.print("# @@ -8,3 +8,3 @@\n");# io.print("# Mcreatedb -db plain\n");# io.print("# -Mcreatedb: processing database 'plain' in /ufs/manegold/programming/Monet/testing/.SunOS5.5/dbfarm/plain.\n");# io.print("# +Mcreatedb: processing database 'plain' in /ufs/manegold/programming/Monet/testing/.IRIX6.2/dbfarm/plain.\n");# io.print("# Mcreatedb: calling 'Mserver -db plain' for the first time..\n");# io.print("# @@ -68,3 +68,3 @@\n");# io.print("# sin(M_PI).print();\n");# io.print("# -[ -0.000000 ]\n");# io.print("# +[ 0.000000 ]\n");# io.print("# sin(3*M_PI_2).print();\n");# io.print("# @@ -76,3 +76,3 @@\n");# io.print("# cos(M_PI_2).print();\n");# io.print("# -[ -0.000000 ]\n");# io.print("# +[ 0.000000 ]\n");# io.print("# cos(M_PI).print();\n");# io.print("# @@ -82,62 +82,62 @@\n");# io.print("# tan(dbl(0)).print();\n");# io.print("# -[ 0.000000 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# tan(M_PI_4).print();\n");# io.print("# -[ 1.000000 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# tan(M_PI_2).print();\n");# io.print("# -[ -22877332.428856 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# tan(M_PI).print();\n");# io.print("# -[ 0.000000 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# tan(3*M_PI_2).print();\n");# io.print("# -[ -7625777.476285 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# asin(dbl(-1)).print();\n");# io.print("# -[ -1.570796 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# asin(dbl(-0.5)).print();\n");# io.print("# -[ -0.523599 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# asin(dbl(0)).print();\n");# io.print("# -[ 0.000000 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# asin(dbl(0.5)).print();\n");# io.print("# -[ 0.523599 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# asin(dbl(1)).print();\n");# io.print("# -[ 1.570796 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# acos(dbl(-1)).print();\n");# io.print("# -[ 3.141593 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# acos(dbl(-0.5)).print();\n");# io.print("# -[ 2.094395 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# acos(dbl(0)).print();\n");# io.print("# -[ 1.570796 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# acos(dbl(0.5)).print();\n");# io.print("# -[ 1.047198 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# acos(dbl(1)).print();\n");# io.print("# -[ 0.000000 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# atan(tan(M_PI_2)).print();\n");# io.print("# -[ -1.570796 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# atan(tan(M_PI_4)).print();\n");# io.print("# -[ 0.785398 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# sqrt(pow(dbl(2),dbl(2))).print();\n");# io.print("# -[ 2.000000 ]\n");# io.print("# +[ 45610.384256 ]\n");# io.print("# \n");# io.print("# exp(dbl(10)).print();\n");# io.print("# -[ 22026.465795 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# log(dbl(10)).print();\n");# io.print("# -[ 2.302585 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# log10(dbl(10)).print();\n");# io.print("# -[ 1.000000 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# \n");# io.print("# ceil(dbl(1.2)).print();\n");# io.print("# -[ 2.000000 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# fabs(dbl(1.2)).print();\n");# io.print("# @@ -145,4 +145,4 @@\n");# io.print("# floor(dbl(1.2)).print();\n");# io.print("# -[ 1.000000 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# fmod(dbl(15.2),dbl(2.5)).print();\n");# io.print("# -[ 0.200000 ]\n");# io.print("# +[ 2080315712.000000 ]\n");# io.print("# --------------------------------------------------------------------------------\n");# io.print("# ================================================================================\n");# io.print("# differences between SunOS5.5 and IRIX6.2 compiled with GNU=OFF\n");# io.print("# --------------------------------------------------------------------------------\n");# io.print("# --- plain/mmath2/stable.out Fri Feb 27 16:11:45 1998\n");# io.print("# +++ .IRIX6.2/plain/mmath2/1998.02.27,16:51:37.out Fri Feb 27 17:23:28 1998\n");# io.print("# @@ -1,3 +1,3 @@\n");# io.print("# Statistics about the output of plain/mmath2:\n");# io.print("# - 143 lines, 385 words, 3505 chars\n");# io.print("# + 138 lines, 360 words, 3229 chars\n");# io.print("# \n");# io.print("# @@ -7,7 +7,2 @@\n");# io.print("# \n");# io.print("# -Mcreatedb -db plain\n");# io.print("# -Mcreatedb: processing database 'plain' in /ufs/manegold/programming/Monet/testing/.SunOS5.5/dbfarm/plain.\n");# io.print("# -Mcreatedb: calling 'Mserver -db plain' for the first time..\n");# io.print("# -Mcreatedb: database 'plain' has been initialized succesfully!\n");# io.print("# -\n");# io.print("# Mserver -db plain script.mil\n");# io.print("# @@ -68,3 +63,3 @@\n");# io.print("# sin(M_PI).print();\n");# io.print("# -[ -0.000000 ]\n");# io.print("# +[ 0.000000 ]\n");# io.print("# sin(3*M_PI_2).print();\n");# io.print("# @@ -76,3 +71,3 @@\n");# io.print("# cos(M_PI_2).print();\n");# io.print("# -[ -0.000000 ]\n");# io.print("# +[ 0.000000 ]\n");# io.print("# cos(M_PI).print();\n");# io.print("# @@ -82,3 +77,3 @@\n");# io.print("# tan(dbl(0)).print();\n");# io.print("# -[ 0.000000 ]\n");# io.print("# +[ 1.000000 ]\n");# io.print("# tan(M_PI_4).print();\n");# io.print("# @@ -86,53 +81,53 @@\n");# io.print("# tan(M_PI_2).print();\n");# io.print("# -[ -22877332.428856 ]\n");# io.print("# +[ 1.000000 ]\n");# io.print("# tan(M_PI).print();\n");# io.print("# -[ 0.000000 ]\n");# io.print("# +[ 1.000000 ]\n");# io.print("# tan(3*M_PI_2).print();\n");# io.print("# -[ -7625777.476285 ]\n");# io.print("# +[ 1.000000 ]\n");# io.print("# asin(dbl(-1)).print();\n");# io.print("# -[ -1.570796 ]\n");# io.print("# +[ 1.000000 ]\n");# io.print("# asin(dbl(-0.5)).print();\n");# io.print("# -[ -0.523599 ]\n");# io.print("# +[ 1.000000 ]\n");# io.print("# asin(dbl(0)).print();\n");# io.print("# -[ 0.000000 ]\n");# io.print("# +[ 1.000000 ]\n");# io.print("# asin(dbl(0.5)).print();\n");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -