2015-03-21 10 views
6

Android'de aramak için bir Haskell işlevi (modulü) tipi yazmak istiyorum: String -> String. En kolay yöntem C kodu oluşturmak için JHC'yi kullanır, ardından paylaşılan bir kitaplık oluşturmak için Android NDK'yı kullanır, ancak JHC için herhangi bir belge bulamadım. JHC ayrıca bina için Cabal kullanıyor mu? JHC, Parsec veya Attoparsec kütüphanesini kullanmak için yeterince kararlı mı?jhc kullanarak android için haskell nasıl hedeflenir?

+0

kolay yöntem muhtemelen Frege olduğu içine katmaya yüzden bir kavanoz dosyası üretecektir. –

cevap

3

2011 yılında JHC'yi benzer şekilde kullanarak sınırlı başarı elde ettim, ancak Android yerine iOS'u hedefledim. Initial results were good sadece çalışmakta olan bir şeyi elde etmemize rağmen, JHC'yi GHC'nin lehine bıraktık, çünkü Parsec kullanan programlarda garip derleme zamanı hataları almaya başladık. Unutmayın, bu 2011'de oldu, bu yüzden JHC o günden beri çok gelişti.

GHC'ye bir şans vermek istiyorsanız, Android için bir oyunu derlemek için GHC 7.8 kullanan looking at this example'u öneririm. Onu henüz öfkeyle kullanmadım, ama Docker üzerinde çalışmayı başarabildim, oyunu sıfırdan yeniden kurmaya ve gerçek bir Android cihazına kurmaya kadar yaklaştım, bu yüzden yaklaşım kesinlikle haklı.

UPDATE Ağustos 2017 itibarıyla: Moritz Angermann, detailed instructions on targeting Android with a GHC cross-compiler numaralı telefonu gönderdi.

+0

Cevabınız için teşekkürler, ancak ödül verdiğimde, 2011'den bu yana JHC'yi bu şekilde kullanan birini görmediğim için, son girişimleri umduğumu umuyordum. –

+1

Yani, GHC'yi henüz denediniz mi? – Cactus