## basetype-numbers.pkg
## (C) 2001 Lucent Technologies, Bell Labs
# Compiled by:
#
src/lib/compiler/front/typer/typer.sublib# All base type-constructor numbers used in Mythryl.
api Basetype_Numbers {
#
include api Core_Basetype_Numbers; # Core_Basetype_Numbers is from
src/lib/compiler/front/typer-stuff/basics/core-basetype-numbers.pkg #
basetype_number_tagged_int: Int;
basetype_number_int1: Int;
basetype_number_list: Int;
basetype_number_etag: Int;
basetype_number_fate: Int;
basetype_number_control_fate: Int;
basetype_number_option: Int;
basetype_number_boxed: Int;
basetype_number_tgd: Int;
basetype_number_utgd: Int;
basetype_number_tnsp: Int;
basetype_number_dyn: Int;
basetype_number_chunk: Int;
basetype_number_cfun: Int;
basetype_number_barray: Int;
basetype_number_rarray: Int;
basetype_number_slock: Int;
basetype_number_integer: Int;
};
package basetype_numbers
: (weak) Basetype_Numbers # Basetype_Numbers is from
src/lib/compiler/front/typer/basics/basetype-numbers.pkg{
include package core_basetype_numbers; # core_basetype_numbers is from
src/lib/compiler/front/typer-stuff/basics/core-basetype-numbers.pkg #
basetype_number_tagged_int = basetype_number_int;
stipulate
fun ptn i = next_free_basetype_number + i;
herein
# These values appear to be referenced mainly in:
#
#
src/lib/compiler/front/typer/types/more-type-types.pkg #
src/lib/compiler/back/top/highcode/highcode-basetypes.pkg #
basetype_number_int1 = ptn 0;
basetype_number_list = ptn 1;
basetype_number_etag = ptn 2;
basetype_number_fate = ptn 3;
basetype_number_control_fate = ptn 4;
basetype_number_option = ptn 5;
basetype_number_boxed = ptn 6;
basetype_number_tgd = ptn 7; # "tagged"?
basetype_number_utgd = ptn 8; # "untagged"?
basetype_number_tnsp = ptn 9;
basetype_number_dyn = ptn 10;
basetype_number_chunk = ptn 11;
basetype_number_cfun = ptn 12;
basetype_number_barray = ptn 13; # byte rw vector
basetype_number_rarray = ptn 14; # float64 rw vector
basetype_number_slock = ptn 15; # spinlock (?)
basetype_number_integer = ptn 16; # indefinite-precision integer
next_free_basetype_number
=
ptn 17;
end;
};