From the demos, it appears Arrow Meta will display...
# arrow-meta
c
From the demos, it appears Arrow Meta will display ‘aliases' of types in IntelliJ, eg. showing ‘`Union2<A|B>``, and I really like this feature because it makes the language way easier to read but doesn't change the syntax at all so it's quite safe. I would love if this was expanded to other boilerplate, for example to replace function composition by ∘ (
val h = g ∘ f)
. In Julia, they actually define many functions as unicode directly, I think it's a good compromise to just let the IDE display those as such. What do you think?
👍 1
r
Sounds like a good feature. I f you want add an issue with some use cases and tag me and @danieeh who is working on folding for those features in the IDE
i
If you want to build that, we can guide you through it. I am still in the process to enable the Meta API’s in the IDE to 3rd party plugins, so one can distribute that plugin without depending on the features Arrow proposes. However, if you want to build it and simply copy paste it into your project later, once we’re through a bunch of processes. You could fork Meta and I can point you to the API’s. Here are the ones for Union’s and Tuples build by @danieeh
c
I thought of a different way: what do you think about creating an annotation
@DisplaySymbol("•")
on infix functions that would tell the IDE to display the function as such? I don't have any experience with Gradle/IntelliJ plugins, so I wouldn't know where to start... If you have any relevant guides/tutorials, I'm interested to read them (and in a few weeks time when I get a bit more free time I'll try to get to it 👍)