Here are some answers for questions you probably haven’t asked for.
Why is it called Ya?
- Several reasons. At first I wanted to call this language
Yo
due to using Yoneda lemma for syntax. Some people use aよ
kana as notation. In Я we also have contravariant version of this operator which is called ya. So I decided to use Cyrillic letterЯ
(pronounced asya
) that meansme
orI
in many Slavic languages.
Which problems Ya supposed to solve?
-
Make everything to be composable. I’m trying to push to another limit of expressiveness/usability ratio.
-
Make control flow predictable, easy to support and refactor using effects. You can actually see how exactly I’m doing it on these use cases.
-
Try to live without any incapsulation - make all internals to be reveal. I do not want to hide anything from other developers - they are smart enough to not tell them what to do.
How can I use it?
- You can include libraries from Ya ecosystem into your Haskell project, install a special font on your machine and enjoy (or suffer, depends on how you perceive coding experience).