Hi guys.We are having a Hackweek at SUSE, and together with my colleague Johannes we started to port an Android app to 4.x APIs and before startingwe discussed about using Xtend for all new classes and rewritten code so that we get the chance to learn it. We decided to go for it.Right now we have like 7-10 Xtend classes so we wanted to share our experience (I may reuse this for a blog post later).The overall experience has been good. However, there is some stuff that feels like a regression from Java:- The ultra well known $:: mess with inner and static access. I make a mistake everytime I have to type that.eg: You type R::foo::foo to realize it is R$foo::bar, but then you write android$R::foo::bar, only to realize it is android::R$foo::bar.- Johannes, without knowing about type literals, had a Class<? extend Activity> parameter, and passed SomeActivity::class as parameter. As a resultthe IDE became unstable, popups everywhere and Xtext errored about cross references. Changing to typeof(SomeActivity) fixed the issue. But we lostlike half an hour debugging this one due to the meanless errors.- The most annoying part is not having inner classes. Lambdas work well for one method functional interfaces, but most Android ones have more. That means you have to implement the interface, which sucks if you have 3 versions of them and want to create one class per kind of handling behaviour So then you create a separate class, but Android manages the lifecycle of objects itself so you can't really pass context to the objects and don't have access to the outer class context.- Ok, some minor stuff like not having bitwiseOr and having to spend 5 minutes googling to find out you can use a bitwiseOr() method on the object.This language has lot of potential on Android, but there are still rough edges. I will share more feedback after we port more code.CheersDuncan--
You received this message because you are subscribed to the Google Groups "Xtend Programming Language" group.
To unsubscribe from this group and stop receiving emails from it, send an email to xtend-lang+...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
For more options, visit https://groups.google.com/d/optout.
Ok, so I assume running proguard is slow and therefore is typically only done when producing a release?