Scheme_Object * quotient_remainder(int argc, Scheme_Object *argv[]) { Scheme_Object *rem = NULL, *quot, *a[2]; quot = do_bin_quotient("quotient/remainder", argv[0], argv[1], &rem); if (!rem) { rem = rem_mod(argc, argv, "remainder", 1); } a[0] = quot; a[1] = rem; return scheme_values(2, a); }
static Scheme_Object *scheme_place_channel(int argc, Scheme_Object *args[]) { if (argc == 0) { Scheme_Place_Bi_Channel *ch; Scheme_Object *a[2]; ch = scheme_place_bi_channel_create(); a[0] = (Scheme_Object *) ch; a[1] = (Scheme_Object *) scheme_place_bi_peer_channel_create(ch); return scheme_values(2, a); } else { scheme_wrong_count_m("place-channel", 0, 0, argc, args, 0); } return scheme_true; }