raising the head after a three-weeks refactoring
[m6w6/ext-psi] / psi.d / stdlib.psi
index 2400614228c4d8118effc0e658c970e4c951dcd7..bcc884d7b9d30a6f18d310eb13d50527e3126465 100644 (file)
@@ -2,3 +2,28 @@ function psi\abs(int $i) : int {
        let n = intval($i);
        return to_int(abs);
 }
+
+function psi\div(int $numerator, int $denominator) : array {
+       let numerator = intval($numerator);
+       let denominator = intval($denominator);
+       return to_array(div, to_int(quot), to_int(rem));
+}
+
+function psi\ldiv(int $numerator, int $denominator) : array {
+       let numerator = intval($numerator);
+       let denominator = intval($denominator);
+       return to_array(ldiv, to_int(quot), to_int(rem));
+}
+
+function psi\lldiv(int $numerator, int $denominator) : array {
+       let numerator = intval($numerator);
+       let denominator = intval($denominator);
+       return to_array(lldiv, to_int(quot), to_int(rem));
+}
+
+function psi\strtold(string $str, string &$end = null) : float {
+       let nptr = strval($str);
+       let endptr = &NULL;
+       return to_float(strtold);
+       set $end = to_string(*endptr);
+}
\ No newline at end of file