Camfort adalah alat refactoring dan verifikasi untuk program Fortran ilmiah. Saat ini mendukung Fortran 66, 77, 90, 95 dan 2003 (agak) dengan berbagai ekstensi warisan.
Ini adalah proyek penelitian yang dikembangkan di University of Cambridge dan University of Kent.
Metode instal yang disarankan oleh OS:
camfort-bundle-windowsbrew install camfort/camfort/camfortKami menyediakan binari prebuilt untuk Windows, Mac dan Linux. Untuk Windows, kami juga menyediakan arsip yang menggabungkan camfort yang dapat dieksekusi bersama dengan semua ketergantungannya.
Camfort juga tersedia melalui Homebrew (Formula):
brew install camfort/camfort/camfort
Versi Camfort yang lebih tua (~ 2019) tersedia di Docker di Camfort/Camfort.
Gambar Docker baru untuk pengembang (masih bekerja dalam progress) tersedia di ghcr.io/camfort/camfort:dev . Doa yang disarankan adalah:
podman run --volume $(pwd):/host --workdir /host ghcr.io/camfort/camfort:dev <CamFort arguments> Camfort adalah alat baris perintah, jadi advoke dari shell atau command prompt favorit Anda. Informasi penggunaan terperinci tersedia di wiki.
;
Bagian ini hanya mencakup bangunan singkat. Lihat Wiki: Membangun untuk detail lengkap.
Camfort mendukung GHC 8.4 melalui GHC 8.10 , dan dibangun dengan tumpukan dan komplotan rahasia. Kami secara teratur menguji setidaknya GHC minimum dan maksimum yang didukung. Rilis sebelum/lebih baru dari yang mungkin memiliki masalah. (Kami menyambut perbaikan yang akan memungkinkan kami mendukung berbagai kompiler yang lebih luas!)
Anda mungkin membutuhkan setidaknya 3 GIB memori dan kesabaran untuk membangun camfort.
Camfort tergantung pada perpustakaan asing berikut:
Ini harus dibangun untuk sistem Anda, tetapi metode instalasi bervariasi. Panduan khusus sistem disediakan di wiki. (Atau, Anda dapat memeriksa alur kerja tindakan GitHub.) Di Ubuntu:
apt install libflint-dev liblapack-dev libopenblas-dev z3
Kemudian stack build untuk tumpukan, atau cabal build untuk komplotan rahasia.
Untuk mengaktifkan Bash Autocompetion untuk Camfort, tambahkan yang berikut ini ke file .bashrc atau .bash_profile Anda:
eval "$(camfort --bash-completion-script=$(which camfort))"
Kami menghargai setiap bug yang Anda temui dan dengan ramah meminta Anda untuk mengirimkannya sebagai masalah.
Permintaan tarik sangat dihargai, tetapi silakan hubungi kami terlebih dahulu jika itu merupakan perubahan besar. Pastikan untuk menjalankan suite tes sebelum Anda mengirimkan.
Jika Anda memiliki kode ilmiah yang ingin kami analisis, kami akan dengan senang hati menambahkannya ke Camfort Corpus. Ini membantu kita menemukan cara yang berguna untuk memperluas camfort serta memastikannya kuat.
Lihat doc/maintainers.md .