Archive for the ‘Fortran’ Category
Posted by jpluimers on 2026/01/13
The summary of [Wayback/Archive] Is Fortran better than Python for teaching the basics of numerical linear algebra? – Dr. Jean-Christophe Loiseau is:
- 1-based indexing prevents off-by-1 errors
- structure is key, especially these foundations:
- clear begin/end constructs instead of visual clues
- strong typing
- verbose programming languages are easier to learn than non-verbose ones
Modern Fortran helps a lot here and shows that after the initial 13 year gaps between FORTRAN 77 and Fortran 90, and between Fortran 90 and Fortran 2003 (the ANSI Standard Fortran and Fortran 95 in between versions were just minor updates), Modern Fortran has come a very long way and now as a thriving community and an extensive list of Fortran software and tools.
Other typed languages and tool sets like C# and Delphi come to mind here as well though you need libraries with 1-based data structures to solve the first point.
Read the rest of this entry »
Posted in Development, Fortran, Learning/Teaching, LifeHacker, Power User, Python, Scripting, Software Development | Leave a Comment »
Posted by jpluimers on 2017/12/07
Ah, C. The best lingua franca we have… because we have no other lingua francas. Linguae franca. Surgeons general? C is fairly old — 44 years, now! — and comes from a time when there were possibly more architectures than programming languages. It works well for what it is, and what it is is a relatively simple layer of indirection atop assembly. Alas, the popularity of C has led to a number of programming languages’ taking significant cues from its design, and parts of its design are… slightly questionable. I’ve gone through some common features that probably should’ve stayed in C and my justification for saying so. The features are listed in rough order from (I hope) least to most controversial. The idea is that C fans will give up when I call it “weakly typed” and not even get to the part where I rag on braces. Wait, crap, I gave it away.
Great re-read towards the end of the year: [WayBack] Let’s stop copying C / fuzzy notepad
Via: [WayBack] Old and busted: emacs vs vi. New and hot: Language war, everybody against everybody else. – Kristian Köhntopp – Google+
–jeroen
Posted in .NET, APL, Awk, bash, BASIC, C, C#, C++, COBOL, CoffeeScript, CommandLine, D, Delphi, Development, F#, Fortran, Go (golang), Java, Java Platform, JavaScript/ECMAScript, Pascal, Perl, PHP, PowerShell, PowerShell, Python, Ruby, Scala, Scripting, Software Development, TypeScript, VB.NET, VBScript | 3 Comments »
Posted by jpluimers on 2017/11/15
I remember a FORTRAN IV (or was it 66?) course during my chemistry studies at the end of the 1980s. Luckily, the VAX/VMS version (not sure which one, it ran on a VAX 11/750) where we had to program on came with an extended FORTRAN 77 compiler even supporting 132 columns and other nice features.
My favourite program was about an algorithm to assemble 3 tables (one relating atom numbers and their valencies, a second with atom-atom distances, a third with 3-D atom positions) into a chemical compound indicating any rings. I implemented my own recursion with stacks citing a Dire Straits song with “and when you finally reappear, at the place where you came in…”.
Later I ported this to a PC reviewing the Microsoft FORTRAN 5.1 compiler for the Dutch PCM (Personal Computer Magazine). Recently I learned Lahey had a big role in the Fortran.NET compiler.
This year FORTRAN turned 60 years old and it is still in used, though not as heavily as a few decades ago.
The Fortran compiler, introduced in April 1957, was the first optimizing compiler, and it paved the way for many technical computing applications over the years. What Cobol did for business computing, Fortran did for scientific computing. Fortran may be approaching retirement age, but that doesn’t mean it’s about to stop working. This year marks the 60th anniversary of the first Fortran (then styled “FORTRAN,” for “FORmula TRANslation”) release.
Source: [WayBack] Happy 60th birthday, Fortran.
Via [Archive.is] Happy 60th birthday, Fortran – ThisIsWhyICode – Google+
Historic references:
–jeroen
Read the rest of this entry »
Posted in Development, Fortran, Software Development | 1 Comment »
Posted by jpluimers on 2015/01/22
Wow: I feel like having lived under a stone for 8 years, as RosettaCode has been alive since it was founded in 2007 by Mike Mol.
The idea is that you solve a task and learn from that, or learn by seeing how others have solved tasks or draft tasks.
So in a sense it is similar to the Rosetta stone: it has different languages phrasing the same tasks.
There are already a whole bunch of languages on RosettaCode (of which a few are in the categories below), and you can even suggest or add your own languages.
When you want to solve tasks, be sure to look at the list unimplemented tasks by language that leads to automatic reports by language (for instance two of the languages I use most often: C# and Delphi).
I’m sure there are lots of programming chrestomathy sites, even beyond the ones, and it feels very similar to programming kata sites.
–jeroen
Posted in .NET, APL, Awk, bash, Batch-Files, C, C#, C++, COBOL, CommandLine, Delphi, Development, Fortran, FreePascal, Java, JavaScript/ECMAScript, Lazarus, Object Pascal, Office VBA, Pascal, Perl, PHP, PowerShell, PowerShell, Prism, Scripting, sed script, Sh Shell, Software Development, Turbo Prolog, VB.NET, VBS, VBScript, Visual Studio and tools, Web Development | Leave a Comment »
Posted by jpluimers on 2013/05/09
Posted in .NET, C++, Cloud Development, COBOL, CommandLine, Delphi, Development, Fortran, iSeries, Java, Pascal, RegEx, Scripting, Software Development, Web Development, xCode/Mac/iPad/iPhone/iOS/cocoa | 3 Comments »
Posted by jpluimers on 2012/08/14
Last week I posted an in depth answer on StackOverflow.com about the memory allocation difference in Delphi and Fortran, or more accurately in two different kinds of languages.
You have:
- column major order (not only used in Fortran and other science centric languages, but also in the shading languages GLSL and HLSL that can be used in FireMonkey)
- row major order (used in most other languages, for instance Delphi, C, etc)
A very important aspect is the order of for optimized loops. For column major order, the optimum is inside out (as the inner arrays/records are in consecutive memory locations), but for row major order, it is the exact inverse.
One of the consequences is that in Fortran it is a very fast operation to pass an array of inner fields as parameter to a method.
This is what I wrote: Read the rest of this entry »
Posted in Delphi, Delphi 2007, Delphi 2009, Delphi 2010, Delphi for PHP, Delphi x64, Delphi XE, Delphi XE2, Development, Fortran, Software Development | 4 Comments »