Сухарик

Results 95 comments of Сухарик

> Your reference to the visual “generalised composition” notation makes me realise that ordinary composition and parallel composition form two distinct monoids on dataflow graphs—vertical and horizontal concatenation, respectively. That's...

I implemented a toy language with this feature: https://github.com/suhr/esobsc Also, I realized that I'm extremely bad at writing, and the article is unreadable and needs rewriting. I don't know if...

It's not very readable. In the [language](https://suhr.github.io/wcpl/intro.html) I'm (very slowly) developing, there's some sugar: `foo[...]` is the same as `(... foo)`. So you can write things like `List[a]`. This sugar...

I actually do this for consistency. `[a, b, c]` is essentially `(a, b, c make_array)`, `T[a, b, c]` is essentially `(a, b, c make_tuple)`, so it makes sense to write...

> As an aside, the overloading of Some as a type and value constructor is quite confusing My bad, it should be `Option[a]`. > `dup (->) = (S... -> S...)`...

By the way, I wonder that's the good way to provide type parameters. From the one side, they are just parameters, so `... String into` (or `... into[String]`) makes sense....

Thanks. > `true(bool) = true` Are `true` on the left and `true` on the right the same?

It seems so. At least it has `x^{*}` syntax: https://reference.wolfram.com/language/ref/Conjugate.html.

So we need to implement `TraditionalForm`.

Some bugs could be caught by generating random sympy expression and ensuring that the following diagram commutes: https://q.uiver.app/?q=WzAsNCxbMCwwLCJTeW1weUV4cHIiXSxbMiwwLCJNYXRoaWNzRXhwciJdLFsyLDIsIlN5bXB5RXhwciJdLFswLDIsIlN5bXB5RXhwciJdLFswLDEsInRvTWF0aGljcyJdLFsxLDIsInRvU3ltcHkiXSxbMiwzLCJzaW1wbGlmeSJdLFswLDMsInNpbXBsaWZ5IiwyXV0= Also we can test it inductively, like checking that `e1 / e2`...