Hi all, it's an arrow setup and probably a newbie ...
# arrow-meta
b
Hi all, it's an arrow setup and probably a newbie question (sorry about that, starting now with arrow 😅), I'm trying to use arrow
0.10.3-SNAPSHOT
features ( more specific typeclass
given
meta feature ), but I'm aways getting:
Copy code
error: @instance is only allowed on `interface` extending another interface of at least one type argument (type class) as first declaration in the instance list
and if I change that to an interface I cannot find the reference of the extension function I believe that is expected in a context that there's no compiler plugin working on that, then probably I'm missing something in arrow dependencies import I've setup my project like this:
Copy code
apply plugin: 'kotlin-kapt'

def arrow_version = "0.10.3-SNAPSHOT"
dependencies {
    implementation "io.arrow-kt:arrow-fx:$arrow_version"
    implementation "io.arrow-kt:arrow-optics:$arrow_version"
    implementation "io.arrow-kt:arrow-syntax:$arrow_version"
    kapt    "io.arrow-kt:arrow-meta:$arrow_version"
}
What am I missing?
Nice! I'm pretty excited to use.
a
Welcome @bloder!
@raulraja does this mean that I can't use them for testing in
arrow-meta
? If that's that case I won't be able to work with the
eqOperator
plugin POC
b
Thank you @amanda.hinchman-dominguez, I have some questions, how can I start to contribute to arrow meta / arrow? Is there any kind of youtrack with tasks like Kotlin has?
a
@bloder we now have 2 different repositories,
arrow
and
arrow-meta
We have a list of issues we're working on in github: https://github.com/arrow-kt/arrow-meta/issues
Some things we'd like to tackle right now is filling out documentation and adding AST elements to the scope system which I think are more beginner friendly
But in order to start doing that, there's a bit of a curve getting to know arrow-meta and the Kotlin compiler. I've linked on this channel recently a "crash course" of the Kotlin compiler and perhaps the best thing is to start trying to make and example plugin
b
That's cool, thank you for sharing that, I actually already have created a plugin using arrow meta but was an old version of the lib and I was mocking all arrow meta code in my project, but my knowledges about compilers are really limited 😅 and for sure your repo will help me with that. I found this issue: https://github.com/arrow-kt/arrow-meta/issues/89 Do you think is it a good task to start with?
a
Yeah, we have a folder of some elements now that @raulraja made, and I'm waiting to get some feedback on this pr: https://github.com/arrow-kt/arrow-meta/pull/90
I definitely messed up the first time trying to drill down too far but until I have this one and another one whose Ank job keeps failing gets fixed, I don't think I should have much more open PRs for now 😅