cucapra / packet-scheduling

MIT License
3 stars 0 forks source link

A number of sample DSL programs #14

Closed anshumanmohan closed 5 months ago

anshumanmohan commented 5 months ago

I am adding a number of programs written in our aspirational DSL.

The policies under the directory now can, I think, already be handled by our Calyx queues. Of course there is work to be done re: parsing the program and harnessing the eDSL to generate an appropriate tree, but if we allow ourselves to make any Calyx tree, we can get these programs running. Note that this already features hierarchical policies: rr_hier.sched is the motivating example from Formal Abstractions.

Sometimes I have a file named something_sugar.sched. That is just something.sched, but with some syntactic sugar to ease the way. I am keeping both versions so that we don't get bogged down by the lack of implementation of the syntactic sugar.

In the directory soon, I always use syntactic sugar. I have placed there some policies that we will be able to support once https://github.com/calyxir/calyx/issues/1810 lands.

For an understanding of what these policies do, please see #13. For an idea of the AST that would support these policies, see #5.