IronScheme'nin yazarıyım. Sorunuzu nasıl cevaplayacağınızdan emin değilim, ama deneyeceğim :)
IronScheme ilk olarak Şemayı (özellikle R6RS) uygulamaya çalışır; ikincil amaç CLR ile birlikte çalışabilirliktir.
Clojure ile karşılaştırıldığında (kötü noktalarına odaklanarak) IronScheme şunları yapmaz:
- CLR çalışma zamanı istisnaları vermek; IronScheme, Scheme'in istisna yönetimini kullanır
- size 'sonsuz' yığın izleri verin; IronScheme düzgün kuyruk özyinelemeli
- kurulumu zor olmalı; sadece dizine çıkarın ve gidin
- başlamak uzun sürüyor; IronScheme (ngen'd olduğunda) REPL'i başlatmak sadece 0.1 saniye sürer
- belirsiz olmak; IronScheme standart bir spesifikasyon uygular
Ne yazık ki Clojure kazandığı yer:
- belgeleme
- Çerçeveler ve kütüphaneler
- Kullanıcı topluluğu
Bu, IronScheme için endişe vericidir, çünkü bahsedilen son 3 tavuk yumurtası senaryosudur. Şahsen, sadece onlara ihtiyacım olduğunda kütüphaneler oluşturma eğilimindeyim ve çok küçük bir kullanıcı topluluğuyla, hata raporlarının yanı sıra kullanıcılardan çok fazla katkı yok. Daha büyük bir kullanıcı topluluğunu çok isterim.
Desteğe gelince, normalde kullanıcılara olabildiğince hızlı yardımcı olurum. Bu kanıt, IronScheme tartışma panolarındaki yanıt sürelerimden görülebilir. Ayrıca, hatalar normal olarak tanımlanır tanımlanmaz sabitlenir.
Kararlılık gelince, kod tabanı oldukça olgun ve şu anda sadece hata düzeltmeleri ve optimizasyonlar sadece kod eklemeleridir.
Kullanılabilirliğe gelince, .NET çerçevesini biliyorsanız, IronScheme ile diğer .NET dillerinde olduğu gibi hemen hemen her şeyi yapabilirsiniz; daha fazla Şema benzeri deyimlere soyutlamak istediğinize bağlı olarak daha zor veya daha kolay olabilir. IronScheme'de yazı yazmak çok kolay; Örneğin, tüm MVC çerçevem, ASP.NET'e (kesinlikle tekerleği yeniden icat etmeyi sevmiyorum) sayesinde, 400 satırlık Şema kodudur.
Yanıt yeterli değilse açıklama istemekten çekinmeyin. Demian da sürdürülebilirlik açısından iyi puanlar veriyor.
Saygılarımızla
leppie