qi
qi copied to clipboard
An embeddable flow-oriented language.
### What version of Racket are you using? `v8.6` ### What program did you run? ```racket Welcome to Racket v8.6 [cs]. > (require qi) > (~> (1 2 3) (clos...
https://github.com/drym-org/qi/blob/ab3b9befa63ba5e867dec7e0736a83e0d7f287b6/qi-lib/flow.rkt#L45
### Summary of Changes This PR elaborates Qi's theory of effects. The main result is the following: _"Qi guarantees that the output of execution of the compiled program is the...
https://github.com/drym-org/qi/blob/601d1b6d8515f5f61fe1d083d363b51f75e5a9af/qi-probe/probe.rkt#L67-L80 It might obviate the need for `(source default-source)`, but does the parameterize belong around `call/cc` or within it? What happens in the presence of a threading (as in `thread`)...
(I thought we already had an issue for this but I don't see it.) Currently, we have [assertions in the compiler tests](https://github.com/drym-org/qi/blob/main/qi-test/tests/compiler/rules/deforest.rkt) to check whether an expression was deforested. These...
This is WIP from today's meeting, and is intended to be used together with an upcoming utility in Syntax Spec to help implicate the appropriate user syntax when an error...
Recently we did some work to [identify a core language](https://github.com/drym-org/qi/pull/63) to which the standard Qi language can be reduced. Having a small core language makes it easier to implement general...
Similar to how we can introduce a `>-` subform to `-
`pass` is Qi's _values_ equivalent of `filter` for lists. It was originally named for "low pass" "high pass" and "band pass" filters that are found in analog electronics, and so...
Arguments are by default supplied in the leading positions. Employing the right-threading operator causes arguments to be supplied in the tail position, but this doesn't propagate to nested forms, requiring...