Lisaac prototype interface

Section Header
+ name := Expanded INTEGER ->
Integer: UINTEGER_8, UINTEGER_16, UINTEGER_32, UINTEGER_64, INTEGER_8 , INTEGER_16 , INTEGER_32 , INTEGER_64 , UINTEGER_BIG,INTEGER_BIG,
Fixed real: UREAL_16_16, UREAL_24_8 , UREAL_26_6 , REAL_16_16 , REAL_24_8 , REAL_26_6 ,
Float Real: REAL, REAL_32, REAL_64, REAL_80,
Other: POINTER;
- comment := "Generic Integer.";
- type := `int`;
- default := 0;
Section Insert
- parent_numeric:NUMERIC :=
Section Public
Range.
- maximum:UINTEGER_64 <-
- minimum:INTEGER_64 <-
Binary Operator.
- '%' Left 100 other:SELF :SELF <-
- '%#' Left 100 other:INTEGER :SELF <-
- '**' Right 120 exp:SELF :SELF <-
- pow exp:SELF :SELF <-
Conversion format with test.
- bound_test low:INTEGER_64 to up:UINTEGER_64 :BOOLEAN <-
- to_integer:INTEGER <- Self;
- to_pointer:POINTER <-
BCD Format.
- to_binary:SELF <-
Self is BCD formatted, convert to binary value
- to_bcd:SELF <-
Self is binary formatted, convert to bcd value
Facility typing.
- kb:SELF <-
- mb:SELF <-
- gb:SELF <-
- tb:SELF <-
Logic Operator
- '&' Left 100 other:SELF :SELF <-
- '|' Left 80 other:SELF :SELF <-
- '^' Left 80 other:SELF :SELF <-
- '>>' Left 100 other:INTEGER :SELF <-
- '<<' Left 100 other:INTEGER :SELF <-
Unary operator
- '~' :SELF <-
(-SELF.one) - Self;
Test.
- align_power step:SELF :SELF <-
- is_power_2:BOOLEAN <-
Function :
- sqrt:SELF <-
- factorial:SELF <-
- fibonacci:SELF <-
- is_odd:BOOLEAN <-
Is odd ?
- is_even:BOOLEAN <-
Is even ?
- gcd other:SELF :SELF <-
Great Common Divisor of `self' and `other'.
Random
- random :SELF <-
Random number between 0 to `maximum' in SELF.
- random_upper upper:SELF :SELF <-
Random number between 0 to `upper'.
- random_between lower:SELF and upper:SELF :SELF <-
Random number between `lower' to `upper'.
Looping.
- times action:BLOCK <-
Convertion
- append_in buffer:STRING <-
Append in the `buffer' the equivalent of `to_string'. No new STRING
creation during the process.
- decimal_digit:CHARACTER <-
Gives the corresponding CHARACTER for range 0..9.
- digit:CHARACTER <-
- hexadecimal_digit:CHARACTER <-
Gives the corresponding CHARACTER for range 0..15.
- to_character:CHARACTER <-
Return the coresponding ASCII character.
- to_octal:SELF <-
Gives coresponding octal value.
- to_hexadecimal:STRING <-
Convert the hexadecimal view of `self' into a new allocated
STRING. For example, if `self' is -1 the new STRING is
"FFFFFFFF" on a 32 bit machine.
Note: see also `to_hexadecimal_in' to save memory.
- to_hexadecimal_format s:INTEGER :STRING <-
Convert the hexadecimal view of `self' into a new allocated
STRING. For example, if `self' is -1 the new STRING is
"FFFFFFFF" on a 32 bit machine.
Note: see also `to_hexadecimal_in' to save memory.
- to_hexadecimal_in buffer:STRING <-
Append in `buffer' the equivalent of `to_hexadecimal'. No new STRING
creation during the process.
- to_hexadecimal_in buffer:STRING format s:INTEGER <-
Append in `buffer' the equivalent of `to_hexadecimal'. No new STRING
creation during the process.
- to_binary_in buffer:STRING format s:INTEGER <-
Append in `buffer' the equivalent of `to_binary_string'. No new STRING
creation during the process.
Hashing:
- hash_code:INTEGER <-
BSBS: Il faut revoir => Depending processor
Print
- print <-
- print_positif <-
Display this number without memory.
- print_hex <-
Display this number without memory.
Debug manager facility.
- '?' blc:BLOCK <-
Section INTEGER
- to_raw_pointer:POINTER <-