GHC bir şeyleri derlemek için uzun zaman alıyorsa, ne yaptıklarını öğrenmenin bir yolu var mı? Öncelikle, derleyiciyi gerçekten çökerttiğimi (yani, bir şekilde bir şekilde sonsuz döngüye soktuğumu) veya gerçekten ilerleme kaydedip ilerlemediğini, ancak çok yavaş mı olduğunu bilmek güzel olurdu.GHC etkinliğini izleme
İkincisi, GHC derleme sürecinin hangi bölümünün sorun olduğunu bilmek güzel olurdu. Ayrıştırma mı yoksa desugar mı yoksa tip kontrolü mi, Çekirdek optimizasyonu mu, yoksa kod üretimi mi, yoksa ...?
Neler olduğunu izlemenin bir yolu var mı? (GHC uzun zaman alıyorsa, muhtemelen bir sürü iş yapıyor, bu yüzden çok fazla çıkış için sorarsanız o büyük olacak demektir akılda Rulman!)
GHC zaten söyler hangi modülleri Derleme (yeniden) yapmaya çalışıyor. Benim durumumda, problem tek bir müstakil modül. GHC'nin nereye takıldığını bilmek istiyorum.
Sen ghc bir profilli versiyonunu oluşturmak ve daha sonra görmek için standart profil araçlarını kullanabilirsiniz gerçeği sonrası ne kadardır. – Davorak
Bir ayrıntı belirterek konuşkanlık olmasını isteyebilirsiniz '-v4' size neler olup bittiğini ** söyler - evet, çıktı büyük olur, ancak sadece izlemek istiyorsanız, bırakın Terminal, genellikle sadece son 1000 veya satırları hatırlar. –
Tecrübemde, sonsuz bir döngüye girecek GHC tanınabilir çünkü üretken bir şey yavaş yavaş genel olarak çok fazla bellek tüketirdi ... –