Koyduğunuz talepler, Fortran'ı bu gibi sorunlar için listenin en üstüne koydu:
a) sayı gıcırtısı
b) paralel
c) cs çalışmaları dışında ( fiili programcı olmayan mühendislere) öğretilen fiili dildir ve halen de dildir.
d) inanılmaz derecede (!) bir endüstri desteğine sahip, sektör-sınıfı-derleyici-bilge sayısı, satıcıların hiçbiri bu dalı terk etmenin en az belirtilerini göstermiyor. Intel'in temsilcilerinden çok önce, Fortran ürünlerinin satışlarının geliştirme araçlarındaki diğer satışlardan daha yüksek olduğunu açıkladı.
Ayrıca, alınması son derece kolay bir dildir. Araştırma görevlilerini hızlandırmanın zaman aldığını kabul etmiyorum. Üzerinde ilk ders kitabımın, oh, bilmiyorum, 30 (?) Sayfa seyrek basılı metinden daha fazlası yoktu. 10 anahtar kelime öğrendikten sonra orta boy programlar yazabileceğiniz bir dildir. Varsayılan Word metninde yazılan 30 sayfanın çoğu kullanıcı için daha kapsamlı bir "Fortran kılavuzu" yapacağını söylemeye cesaret edemem.
Eğer CUDA ilgilenen ediyorsanız, kontrol etmek isteyebilirsiniz Portland Grubu'nun derleyici , bunu destekler . Daha ince detaylara aşina değilim, ama insanlar genellikle bundan övgüyle bahsediyor.
Bunun dışında, paralel programlar için Intel'in derleyicisinin yakın zamanda uyguladığı OpenMP, MPI ve şimdi yakında (ve uzun zamandır beklenen) ko-diziler mevcut . Kelimeleri boşa harcamamak için, Fortran programları paralelleştirmek için çok iyi bir "kütüphaneler" gammasına sahiptir.
Endüstri standardı sayısal kütüphaneler her şeyden önce işlev / rutin portföyünde az çok takip eden diğer diller için geliştirilmiştir.
Tüm söylenenler, ancak (başlangıçta ne zaman yazıldığına bağlı olarak) , Diyelim ki, F77 kodu veya daha eski, zamanla kısmen yeni lehçelere - en azından F2003 özellikleriyle F903'e yeniden yazarak öneririm. Bu konuda bir makale / tez yakın zamanda yayınlandı (orta boy PDF dosyası önde). Bu, doğru şekilde yapılırsa, birden fazla platformda taşınabilirliği sağlamakla kalmaz, aynı zamanda gelecekteki bakım için daha kolay hale getirir.
ps "Gelecekteki bakım" kadarıyla, sadece bahsetmek istediğim bir anegdote. Tezimi yazarken, 35 yıl önce yazılan tarihten itibaren akıl hocamızdan bazı kodları tekrar kullandım. Sadece bir hata ile derlendi; kopya yapıştırma hatası nedeniyle sonunda bir açıklama eksik :)
@DaveMateer (yoruma cevap) - Biraz kaba olabilecek bir yorum yapacağım, ama lütfen yanlış bir şekilde kabul etmeyin, çünkü adil niyettedir.
Bana öyle geliyor ki bu "problem" ile yanlış bir şekilde mücadele ediyorsunuz. Birkaç kısa noktada kastettiğim (çünkü burada çok geç ve okunabilir (anlaşılabilir olsa da) cümleler kurma yeteneğim beni 10'dan sonra bırakıyor.)
a) ekstra kodlama süresini en aza indirmeye çalıştığınızı söylemiştiniz, ancakifademi affedecekseniz, sayısal hesaplama için uzmanlaşmış bir dilden renkli bir dil seçiminden bir dile yeniden yazmayı düşünüyorsunuz.
- bazıları çok boyutlu dizileri desteklemez, diğer şeylerin yanı sıra
- birçoğu ağır sayısal çalışmalar için uygun değil (Haskell ve Hadoop'un paralel işleme kabiliyetleri olduğunu kabul ediyorum, hakkında hiçbir şey bilmiyorum ... ama bu çevrelerde bile belirtilmediğini hiç duymadım)
- Muhtemelen denendi, ama ayrık sorunların dili olan Fortran'dan işlevsel bir dile yeniden yazıldığını hiç duymadım
- kısa bir süre önce comp.lang.fortran (google gruplarında arama yapmayı deneyin) "bulutta" bilimsel bilgi işlem yönleriyle ilgili bir tartışma yapıldı (
sizi motive etmek istemez, ancak adil olmak gerekirse, kimse gerçekten değildi Bu terimin bile neyi temsil ettiğinden emin olun, daha az yalnız başarılı bir uygulamaya bir örnek vardı. Bu tür paralellikler için pek çok sorun da uygun değildir.
b) böyle bir yeniden yazmanın maliyeti ne olur? insanlar / saat.
c) - kütüphanelerin derlenecek doğru sürümleri ... - herhangi bir dilde bir problemdir, kaçınılmazdır, ancak ona bakarsınız.
d) Birkaç kez paralel uygulamalarda kullanılan Python'u (gerçekten güzel bir dil) duydum, ancak bu pazara girmesi hala yükselmiyor gibi görünüyor ve sürekli değişen doğası onu çok kötü bir seçim haline getiriyor. uzun vadeli bir proje (geriye dönük uyumluluğu düşünün). Bazı insanlar bunu "tutkal" dili olarak çok severler.
Ugh, başka bir şey düşünürsem yarın ekleyeceğim. Biraz uyumalısın ...