Δημοσιεύτηκε: 07 Νοέμ 2010, 04:00
Θεωρώντας ότι το ζήτημα έχει "επιλυθεί". (Και ξέρω ότι μάλλον πρόκειται για ένα ευαίσθητο ερώτημα...)
Γιατί επιλέγετε να χρησιμοποιήσετε Fortran και όχι C/C++, αν δεν βασίζεστε σε προϋπάρχων κώδικα? Από πλευράς ταχύτητας δεν έχετε ουσιαστικά πλεονεκτήματα.
Τα πλεονεκτήματα που θα έχετε από την C/C++ σχετικά με θέματα Ι/Ο, (limited) string manipulation, και γενικότερη σύνδεση με εργαλεία του ευρύτερου επιστημονικού/προγραμματιστικού τομέα (χώρια το γεγονός ότι μαθαίνετε μια "πραγματική" γλώσσα προγραμματισμού και όχι ένα εξειδικευμένο εργαλείο, αλλά και ότι θα έχετε καλουδια όπως και OOP και κληρονομικότητα αν τα χρειαστείτε) θεωρώ ότι αντιπαρέρχονται την μάλλον steeper learning curve της C/C++.
Εγώ όλα τα numerics μου τα κάνω με C/C++ και GSL και από συναδέλφους που ξέρω που ασχολούνται και πιο πολύ με CFD παρά με Statistical Computing όπως εγώ και αυτοί κυρίως με C (και LAPACK etc.) κινούνται.
Kαι όπως είπε ο Dimitris (θεωρώντας ότι δεν υπάρχουν σχεδιαστικά λάθη), όταν πέφτεις μονάχα στο θέμα των επαναληπτικών διαδικασιών, pre-computing/dynamical programming και parallelizatilon is the way to go.
Γιατί επιλέγετε να χρησιμοποιήσετε Fortran και όχι C/C++, αν δεν βασίζεστε σε προϋπάρχων κώδικα? Από πλευράς ταχύτητας δεν έχετε ουσιαστικά πλεονεκτήματα.
Τα πλεονεκτήματα που θα έχετε από την C/C++ σχετικά με θέματα Ι/Ο, (limited) string manipulation, και γενικότερη σύνδεση με εργαλεία του ευρύτερου επιστημονικού/προγραμματιστικού τομέα (χώρια το γεγονός ότι μαθαίνετε μια "πραγματική" γλώσσα προγραμματισμού και όχι ένα εξειδικευμένο εργαλείο, αλλά και ότι θα έχετε καλουδια όπως και OOP και κληρονομικότητα αν τα χρειαστείτε) θεωρώ ότι αντιπαρέρχονται την μάλλον steeper learning curve της C/C++.
Εγώ όλα τα numerics μου τα κάνω με C/C++ και GSL και από συναδέλφους που ξέρω που ασχολούνται και πιο πολύ με CFD παρά με Statistical Computing όπως εγώ και αυτοί κυρίως με C (και LAPACK etc.) κινούνται.
Kαι όπως είπε ο Dimitris (θεωρώντας ότι δεν υπάρχουν σχεδιαστικά λάθη), όταν πέφτεις μονάχα στο θέμα των επαναληπτικών διαδικασιών, pre-computing/dynamical programming και parallelizatilon is the way to go.