Exemplo n.º 1
0
O_TYPE O_range(O_ARGS)
/* build list from range of two numeric values */
{
    double v1 = RM1;
    double v2 = RM2;
    mpdm_t r = RF(MPDM_A(0));

    if (v1 < v2)
        while (v1 <= v2) {
            mpdm_push(r, MPDM_R(v1));
            v1 += 1.0;
        }
    else
        while (v1 >= v2) {
            mpdm_push(r, MPDM_R(v1));
            v1 -= 1.0;
        }

    UFND(r);

    return r;
}
Exemplo n.º 2
0
O_TYPE O_div(O_ARGS)
{
    return MPDM_R(RM1 / RM2);
}
Exemplo n.º 3
0
O_TYPE O_pow(O_ARGS)
{
    return MPDM_R(pow(RM1, RM2));
}
Exemplo n.º 4
0
O_TYPE O_sub(O_ARGS)
{
    return MPDM_R(RM1 - RM2);
}
Exemplo n.º 5
0
O_TYPE O_mul(O_ARGS)
{
    return MPDM_R(RM1 * RM2);
}
Exemplo n.º 6
0
O_TYPE O_add(O_ARGS)
{
    return MPDM_R(RM1 + RM2);
}
Exemplo n.º 7
0
O_TYPE O_uminus(O_ARGS)
{
    return MPDM_R(-mpdm_rval(M1));
}
Exemplo n.º 8
0
/** real = time(); */
static mpdm_t F_time(F_ARGS)
{
    return MPDM_R(mpdm_time());
}
Exemplo n.º 9
0
static mpdm_t F_pow(F_ARGS)
{
    return MPDM_R(pow(RA0, RA1));
}
Exemplo n.º 10
0
static mpdm_t F_real(F_ARGS)
{
    return MPDM_R(mpdm_rval(A0));
}