Skip to content

schedule cannot access local bindings #354

Open
@helins

Description

@helins

Given the current implementation, it is very easy reaching a situation where a scheduled transaction fails silently. Notably, the following example is counter-intuitive:

(let [x 42] (expand '(schedule 0 (def foo x))))

;; (schedule* 0 (compile (quote (def foo x))))
;; Of course, `x` is not defined anymore ; fails silently

I don't think this is fixable given that nothing is supposed to be evaluated in advance. Maybe we should remove schedule and use only explicit templating with schedule*.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions