mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-20 22:29:16 +02:00
getting current-in/out/err-ports without using eval in repl loop
This commit is contained in:
parent
14c4d0b57d
commit
102b946b9d
1 changed files with 3 additions and 3 deletions
6
main.c
6
main.c
|
@ -27,9 +27,9 @@ static void repl (sexp ctx) {
|
|||
sexp_env_define(ctx, sexp_context_env(ctx),
|
||||
sexp_global(ctx, SEXP_G_INTERACTION_ENV_SYMBOL), env);
|
||||
sexp_context_tracep(ctx) = 1;
|
||||
in = sexp_eval_string(ctx, "(current-input-port)", -1, env);
|
||||
out = sexp_eval_string(ctx, "(current-output-port)", -1, env);
|
||||
err = sexp_eval_string(ctx, "(current-error-port)", -1, env);
|
||||
in = sexp_env_ref(env, sexp_global(ctx, SEXP_G_CUR_IN_SYMBOL), SEXP_FALSE);
|
||||
out = sexp_env_ref(env, sexp_global(ctx, SEXP_G_CUR_OUT_SYMBOL), SEXP_FALSE);
|
||||
err = sexp_env_ref(env, sexp_global(ctx, SEXP_G_CUR_ERR_SYMBOL), SEXP_FALSE);
|
||||
sexp_port_sourcep(in) = 1;
|
||||
while (1) {
|
||||
sexp_write_string(ctx, "> ", out);
|
||||
|
|
Loading…
Add table
Reference in a new issue