Skip to content
This repository has been archived by the owner on Apr 25, 2024. It is now read-only.

How usable is Clojure Android? #10

Open
alvatar opened this issue Feb 1, 2017 · 3 comments
Open

How usable is Clojure Android? #10

alvatar opened this issue Feb 1, 2017 · 3 comments

Comments

@alvatar
Copy link

alvatar commented Feb 1, 2017

I'm encountering many problems compiling Clojure libraries. Most of them seem to be caused by old bugs. Is there any current interest in Clojure for Android so it makes sense use it for a project?

@R1ck77
Copy link

R1ck77 commented Feb 2, 2017

Hi @alvatar, I am all but an authoritative source, but I can still give you some feedback on this.

I have talked with one of the authors in IRC (Alexander Yakushev who, by the way, is as nice, as a nice developer can be) and it seems like development of clojure-android is on hiatus, at least for now. You can meet him on #clojure-android on freenode, btw.

Community-wise, I suspect that Clojure is not seen as a potential Java replacement on Android even within the Clojure community, which is plain dumb (maybe some people see the load time as a deal breaker. Personally I have hidden the load time of clojure under a splash screen, and nobody complained).

I didn't see much enthusiasm going for all-clojure Android applications, which might be due to some sort of orthogonality between Clojure and Android programmers (few who deal with one care about the other...), but it might be just my impression. Sure thing is however, that Rick Hickey isn't getting flooded by requests to port the language there. There is a proposal in the roadmap by the man himself, but nothing done on that front.

It doesn't help that most Android developers are probably on the fence, waiting to see whether the big-G is going to make a move, and there is a lot of competition for an Android alternative to Java from languages that already work there (Kotlin, Groovy and Scale come to my mind).

As for the old bugs part: my app used the plain vanilla clojure with AOT (it seems that the clojure developers ironed some of the bugs that prevented Clojure on Android to work at all) and everything worked just fine, but I have started using clojure-android with some limited dynamic compilation (just enough to have a REPL going) and didn't noticed any drawback, so I'm going in that direction.

My backup plan is to use AOT for everything but debugging and REPL programming, and have the best of both worlds.

Hope this helps!

@alvatar
Copy link
Author

alvatar commented Feb 2, 2017

Thanks for your reply @R1ck77 !
I've been using Clojure for Android with some success, but lately I'm finding many limitations... Many libaries just don't work and the REPL breaks constantly. The former can be overcome, since you can always use plan Java interop and still get the advantages of dynamic development. However the latter is a complete dealbreaker.

@R1ck77
Copy link

R1ck77 commented Feb 2, 2017

Well... I had to fiddle a bit to get NREPL to work with clojure-android and my app, but since I wasn't using the tools by Alexander, but stubbornly trying to work everything out myself, I can't complain.

Sorry things aren't going well on your side @alvatar: I suspect your usage level on Clojure is far higher than mine, which is probably why you get more bumps down the road.

On a minor note, it seems there is some activity on the android front, at least for what bug fixing is concerned, on the Clojure's jira:

http://dev.clojure.org/jira/secure/Dashboard.jspa (and quick-search "android")

Alexander is also working there (hat's off to him), so not all hope is lost :)

I wonder if there is a way to make the Android programmer's voice (politely) heard in the Clojure community... I see a lot of posts about the topic around, but all scattered. Any idea?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants