|
forums.silverfrost.com Welcome to the Silverfrost forums
|
View previous topic :: View next topic |
Author |
Message |
alex21
Joined: 20 Apr 2011 Posts: 75 Location: Australia
|
Posted: Wed May 23, 2018 3:41 am Post subject: VS2017 updated plugin |
|
|
New C# language features no longer work in VS2015 with MS seemingly having written the version off and out of maintinance already...
However support for VS2017 seems great and it is being updated frequently, so I was wondering if there is currently a plan to support it with the FTN95 plugin? Otherwise to suggest that VS2017 plugin would be a great help to people who want to use new C# language features alongside their FTN95 projects.
Thanks,
Alex.
Last edited by alex21 on Mon May 28, 2018 10:13 pm; edited 1 time in total |
|
Back to top |
|
|
KL
Joined: 16 Nov 2009 Posts: 144
|
Posted: Mon May 28, 2018 9:24 am Post subject: |
|
|
I completely agree and support the suggestion of Alex.
It seems that with the FTN95 .NET compiler option Fortran has become one of several .NET languages which communicate through the Common Intermediated Language. Recent own tests show that it is possible to call within Visual Studio a Fortran program (project) as dll from another project written in another .NET language, in my case C#. This is similar to call a C# project from a Visual Basic project which for instance organizes the GUI.
For doing this, the Fortran main program should best be condensed to a subroutine, say �Subroutine DriverProgramxy�. This subroutine is just called as method from the C# project (� DRIVERPROGRAMXY(); �). That is all. Any single subroutine could be called in a similar way. Does this .NET multilingual approach not seem to be extremely promising? It could help keeping older Fortran programs alive with a very reasonable effort.
The Fortran project which I used for testing is of small to medium size but of rather high complexity, i.e. all �interesting� Fortran features are included. As Fortran program it has been tested successfully also with other Fortran compilers.
The good message is -as mentioned above- that calling the Fortran program from a C# program finally worked. The less good message is that during the analyses I experienced numerous problems, for example:
For Plato 4.83 only 8 of the compiler options work; Checkmate x64 fails. For Visual Studio Community 2015 with the Ftn95 plug-in Checkmate .NET fails.
The result for producing dlls is even more problematic:
Plato 4.83 does not produce any of the win32 dlls (error message is �Cannot create DLL: nothing to export�). However, the .NET and win64 dlls are produced which indicates that for these options the defaults are set correctly. The .NET Release dll has been used for testing.
For Visual Studio Community 2015 with the Ftn95 plug-in the Fortran dlls cannot be created. The error message is either again �Cannot create DLL: nothing to export� or an *.pdb file is created instead of the dll file set in the project property window. Here my knowledge is simply insufficient and as user I would need more detailed information.
It is relatively unclear what additional libraries must be added as reference. I have referenced ftn95lib.dll. However, there are two further libraries (ftn95lib.mdl and ftn95lib1.mdl), which are not accepted by Visual Studio to be included as reference. I have simply copied both into the directories Debug and Release of the C# project.
In summary: The multilingual .NET approach seems to be promising, but the Ftn95 plug-in for Visual Studio needs further attention and documentation. A revised plug-in for Visual Studio Community 2017 could be an important contribution for using the many older Fortran programs in a modern environment.
Klaus |
|
Back to top |
|
|
narayanamoorthy_k
Joined: 19 Jun 2014 Posts: 142 Location: Chennai, IN
|
Posted: Wed Jun 06, 2018 2:58 pm Post subject: |
|
|
KL/Paul
Is there PLATO 4.83 Available for download in our SilverFrost site. Please let me know. I am still using 4.81.
Thanks, _________________ Thanks and Regards
Moorthy |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 8018 Location: Salford, UK
|
Posted: Wed Jun 06, 2018 3:30 pm Post subject: |
|
|
The current release is v4.83 and I am pretty sure that it is available to everyone. |
|
Back to top |
|
|
narayanamoorthy_k
Joined: 19 Jun 2014 Posts: 142 Location: Chennai, IN
|
Posted: Wed Jun 06, 2018 7:13 pm Post subject: |
|
|
Is this part of FTN95 PE 8.30? _________________ Thanks and Regards
Moorthy |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 8018 Location: Salford, UK
|
Posted: Wed Jun 06, 2018 8:54 pm Post subject: |
|
|
Yes. You should find it there. |
|
Back to top |
|
|
alex21
Joined: 20 Apr 2011 Posts: 75 Location: Australia
|
Posted: Wed Jun 06, 2018 10:35 pm Post subject: Re: |
|
|
John-Silver wrote: | This .NET mularkey is all very well and good in theory, but I've never yet seen a good, simple explanation of how it works, nor exactly hos in practice it should be 'applied'.
Until that happens the general demand for it must be seen as 'limited' and the expectation of an update to cater for VS 2017 Community let's say 'optimistic' , whrn there are other much more imporrtant shortcomings to fix first. It's called the law of ecom�nomics I think.
Just my opinion. |
You can figure it out pretty easily from the documentation, however there are a number of undocumented linker bugs which can make compiling source code a nightmare.
They need to at least support a working version of VS to make the .NET integration anything less then a nightmare for people who have not used it before.
Currently I have debugged the VS plugin and written a few build scripts to parse the Silverfrost project file and determine dependencies before building them in the correct order and linking them. So I can build my Silverfrost FTN95 .NET assemblies in later versions of VS then 2015 but this makes for a very crappy debugging experience...
The only reason we purchase this compiler is because of its .NET integrations but there are actually much nicer FTN compilers available if we just wanted to compile Win32 binaries...
@Paul can you give any updates on plugin development? Especially with the release of VS2019 announced?
Thanks,
Alex. |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2866 Location: South Pole, Antarctica
|
Posted: Wed Jun 06, 2018 11:04 pm Post subject: Re: |
|
|
alex21 wrote: | but there are actually much nicer FTN compilers available if we just wanted to compile Win32 binaries...
|
And after 30 years of waiting for nicer FTN compilers then Salford FTN77 and then Silverfrost FTN95 you will tell us that they are...? |
|
Back to top |
|
|
alex21
Joined: 20 Apr 2011 Posts: 75 Location: Australia
|
Posted: Mon Jun 11, 2018 10:25 pm Post subject: Re: |
|
|
John-Silver wrote: | ... and why hey're better of course
Compilers are very subjective things. Each maybe has 'something' which 'catches' the user, some fancy bell or whistle which hooks the prey. For example, give me a fortran compiler with nice integrated professional plotting facilities and I'd be mighty tempted to jump ship LOL |
This compiler is the best for accomplishing this task because of its .NET integration, for example I use the open source scientific plotting library OxyPlot with the results produced directly from my FORTRAN code. But you could actually use the library directly from FTN95 if you liked writing lots and lots of code...
But if your just compiling a Win32 binary you could probably get away with a free compiler such as GFortran and have your code take input files and produce output files which are handled by another application for plotting.
Anyway it all comes down to personal preference and I am sure there are others like me who heavily use features of the compiler allowing .NET assemblies to be produced. |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2866 Location: South Pole, Antarctica
|
Posted: Wed Jun 20, 2018 6:30 pm Post subject: |
|
|
This OxyPlot is a joke to even try it. Such projects typically die in few years taking down your code with them because users typically do not pay a single cent for such primitive XY plot utilities alone:
"OxyPlot is primarily focused on two-dimensional coordinate systems, that�s the reason for the �xy� in the name!"... ROTFL
I have seen a dozen such dead projects in 3 decades, most of them were much more sophisticated. Even damn dead Simpleplot was like a PhD student versus this one from kindergarden.
Right now native %PL is in development with FTN95. This essentially brings Fortran in par or even more with the leader of simplicity and usability in scientific and engineering MATLAB which obviously with its huge users base will never be down. You better start using native %PL and join other users to suggest its developers any new features you would like to see. Even now native %PL can make plots way better then many other utilities and it is done very simple way. If there will be bigger demand and a lot of interested users we will convince developers to implement not just XY and Surface plots but also Contour plots and 3D plots and hopefully all professional quality plots will be done in one single line of Fortran code. There are a lot of options for improvement.
The key advantage is that this graphics is part of the compiler library done by the same compiler developers, that means zero chances that some part of your code will stop to be supported.
Here is one my example of plotted quality of native PL (though this was older version), and there are a lot more quality plots posted before using FTN95 OpenGL
|
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2866 Location: South Pole, Antarctica
|
Posted: Fri Jun 29, 2018 2:07 am Post subject: Re: |
|
|
alex21 wrote: | I use the open source scientific plotting library OxyPlot with the results produced directly from my FORTRAN code. But you could actually use the library directly from FTN95 if you liked writing lots and lots of code... |
Lot and lots of code? For the most cases for example MATLAB uses one line of text and produces very decent draft versions suitable for publications. The %PL and now native %PL achieved almost the same quality and sometimes even surpassed it. In one line of Fortran code.
John, your post with scatter plot example was like dancing on dead body. By the way, for fans of Russian footbal championship -- you can not even imagine how russians will pronounce the word "OxyPlot" because they as usually will pronounce xy their own way |
|
Back to top |
|
|
alex21
Joined: 20 Apr 2011 Posts: 75 Location: Australia
|
Posted: Mon Jul 09, 2018 11:47 pm Post subject: Re: |
|
|
DanRRight wrote: | This OxyPlot is a joke to even try it. Such projects typically die in few years taking down your code with them because users typically do not pay a single cent for such primitive XY plot utilities alone:
"OxyPlot is primarily focused on two-dimensional coordinate systems, that�s the reason for the �xy� in the name!"... ROTFL
I have seen a dozen such dead projects in 3 decades, most of them were much more sophisticated. Even damn dead Simpleplot was like a PhD student versus this one from kindergarden.
Right now native %PL is in development with FTN95. This essentially brings Fortran in par or even more with the leader of simplicity and usability in scientific and engineering MATLAB which obviously with its huge users base will never be down. You better start using native %PL and join other users to suggest its developers any new features you would like to see. Even now native %PL can make plots way better then many other utilities and it is done very simple way. If there will be bigger demand and a lot of interested users we will convince developers to implement not just XY and Surface plots but also Contour plots and 3D plots and hopefully all professional quality plots will be done in one single line of Fortran code. There are a lot of options for improvement.
The key advantage is that this graphics is part of the compiler library done by the same compiler developers, that means zero chances that some part of your code will stop to be supported.
Here is one my example of plotted quality of native PL (though this was older version), and there are a lot more quality plots posted before using FTN95 OpenGL
|
The project is already around 4 years old just on github and was on codeplex before that for about 2 years...
If something else better comes along it is very very easy for me to switch as it only took about 4 hours of looking through their documentation and some sleuthing in the source code to produce the same set of reports pictured below, that are still used in the production version of our application to date for about the last two years.
documentation: http://docs.oxyplot.org/en/latest/
documentation for various axis types: http://docs.oxyplot.org/en/latest/models/axes/LinearAxis.html
documentation for various series types: http://docs.oxyplot.org/en/latest/models/series/AreaSeries.html
If your not talented enough to work out how to use something I guess the next best thing is to just get angry and insult the hard work of people who don't get paid?
All the following examples are produced using oxyplot and data passed directly from legacy FTN95 code:
If I wanted different kinds or even animated there are many more libraries in the c-sharp or python ecosystems that I will use before i write any new code in FORTRAN.... The most valuable feature of this compiler is its .NET inter-operability to me for this reason not the crutches it provides to continue developing in language that fewer people alive use everyday. |
|
Back to top |
|
|
alex21
Joined: 20 Apr 2011 Posts: 75 Location: Australia
|
Posted: Mon Jul 09, 2018 11:59 pm Post subject: Re: |
|
|
John-Silver wrote: | I see where you're coming from Dan.
I tried looking into OxyPlot (in a global overview sort of way) and fell at the first hurdle ... finding any decent documentation !
I did have a chuckle when I came across this: https://github.com/oxyplot/oxyplot/issues/1214
For obvious reasons
OxyPlot appears to be one of those 'amateur developers babies' - unintelligible to the rest of the universe !
I rest my case in referring you to the associated 'forum' , the 'Issues' section of their github webpage ....
https://github.com/oxyplot/oxyplot/issues?page=2&q=is%3Aissue+is%3Aopen
Am I alone in thinking that 'github' was conceived for this type of 'project' with one eye on the name of the 'repository' ? (yes I know there are exceptions but I can't agree that this is one of them)
However, who are we to criticise anothers choice if it suits their needs/expertise/prpensity to sufferance ?
%PL is not without reproach as we all know.
I won't hide my surprise at what appears to be the indefinite suspension of (?), not new features or fancy bells and whistles, but bug-fixes, in ironing out the creases in %PL. Still so near and yet so far as far as I'm concerned.
'Robustness is it not for the lacking of ?' (as late great Graham Taylor (1) might say )
Until those well-documented 'issues' are all sorted any 'push' by the rabble for contours/3-D/etc... would be akin to having allusions of taking flying lessons with porcine friends.
After all, who are we, the users, to know best ?
... but we keep following that elusive yellow-brick road.
____________________________________________
Note (1)
American' Alert - * World Series Football Warning*
For those who don't know who Graham Taylor was ...... https://i.guim.co.uk/img/media/a7614a3d14cb2c5eecd6073aacd1c8b77f9bd614/0_254_3552_2132/master/3552.jpg?w=620&q=55&auto=format&usm=12&fit=max&s=efdc8421fbb13a215aa96354d624f726
... after all, you can't argue with someone who has a stand named after him.
ALL software developers should watch this as a guide to success, even when 'failing' the general masses
https://www.youtube.com/watch?v=VAke3P4hKZA
now how does that song go, ah yes ...
"Want more and more
contour and 3D plots
want more and more
not only X-Y plots
want more and more ...
%PL's on fi-re,
simpleplot is past it's life .....
%PL's on fi-re,
your .NET is terr-i-fied .....
Da-da da-da da daaaaa da, da-da da da-da, da da da da-daa ..... etc ..."
(I've just realised the significance of %PL !!!
last lines can be replaced at will (griggs) with ....
" Paul Laidler's on Fi-re
his resolve's consoli-fide .....
%PL's on Fi-re
your plot software's terr-i-fied .....
Da-da da-da da daaaaa da, da-da da da-da, da da da daa .....
etc.... etc ...... "
yes that's the one, they were singing it just last week ....
https://www.youtube.com/watch?v=AoSTun8Z6g8&pbjreload=10
PS consolifide IS a real word and I challenge anyone to prove otherwise against all logic in the face of some magnificent scanning verse ! |
The problem your running into here is these people are not paid to write the software or documentation and simply don't have the time most of the time... But for me personally it is not too much effort to go look at the various code examples on github in order to work out how to use what is a very high quality product with no price tag...
Also OxyPlot does Contour Plots and I have provided an example from my application, heat maps are basically the same thing and I have even been able to easily overlay it on maps as the plots are extremely customizable down to every visual element in the WPF version. |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2866 Location: South Pole, Antarctica
|
Posted: Fri Jul 13, 2018 1:17 pm Post subject: Re: |
|
|
alex21 wrote: | If your not talented enough to work out how to use something ... |
I did not know that reading documentation needs special talent. May be i am especially dumb, as with rare exclusion i never read any documentation, including the text books in my speciality. I immediate start with the tasks & exercise section after the paragraphs.
Anyway, after rebuilding in several decades my code graphics at least several times (all suppliers got out of business or out of support) i'd not recommend anyone in their sane mind to touch anything like O-hue-plot (not translatable from russian) with ten foot pole or any third party apps besides well established software. Experience tells that anything i wrote in 4 decades i tried to reuse, and if there was third-party stuff involved then this was partially or completely lost.
Call me back when it reach the quality like this Fortran allows or gets out of life support. The examples below are not just external plotter results, they are part of your running Fortran code, and also part of your Clearwin+. That was being published in the top scientific journals and presented on many top science conferences. All together forms the WOW factor to which rarely any other compiler can compare. All done in one single package, the FTN95, not in 3-5 (which means your code you develop for decades will go out of business same 3-5 times faster, or you have to rebuild many 100s of places of your code to other package). Of course the graphics like that will not go out of business till this Fortran will be available. Only totally naive who only saw their codes running in DOS prompt think that Fortran is dying, and dying fast. If this happen Fortran will be for sure the last one.
|
|
Back to top |
|
|
LitusSaxonicum
Joined: 23 Aug 2005 Posts: 2393 Location: Yateley, Hants, UK
|
Posted: Fri Jul 13, 2018 7:37 pm Post subject: |
|
|
I�m with Dan on this, simply for reasons of practicality.
Fortran has the great strength that source codes from decades ago are still compilable. It saves reinventing the wheel - a wheel that sometimes us oldies invented in the first place!
In order to keep FTN95 operational, Silverfrost need to cater for differences between versions of Windows. Microsoft like to change things, but the huge volume of commercial applications out there mean that MS have to keep much backward compatibility. If you then use Clearwin+, you can be pretty sure that your application will run, or will soon run on any new version of Windows.
Add to that the availability of Simdem, which is on top of Clearwin+, and thus is guaranteed to work with it, given that Clearwin+ and FTN95 are backward compatible, and you have as good a situation as one can hope for.
Using Oxyplot and Visual Studio with FTN95 is an altogether more complicated issue. Silverfrost need to keep their compiler working with VS, which we know from experience can change dramatically from version to version. So too do the originators of Oxyplot. Therefore, at the very least, you are requiring two organisations to keep abreast of changes in the platform, instead of one. Then, you have no guarantee that Oxyplot and FTN95 will continue to get along together � and if they don�t, whose responsibility is it to fix? It�s a risk that I don�t take.
Secondly, of course, there is the documentation issue. Without being rude about it, to understand the Oxyplot documentation you need to understand Visual Studio to even begin. Clearwin+ is understandable to anyone who understands Fortran � well, most people � and that is a prerequisite for using FTN95 in the first instance. So there�s a step you don�t need in one route, and you do in the other. Simdem documentation is also targeted at the Fortran user. (And if you use Clearwin+. You can do OpenGL graphics, if you want to.)
As for �I can draw contours�, well I still use most of the code I wrote back in the 1970�s, including contouring. It originally used manufacturer specific pen-plotters, then generic ones (Roland, HP) and now CW+ graphics primitives. You know, computer software solutions with old technology work brilliantly with new. All that needed to change were the graphics primitives.
Finally, as for old-timers, yes, I�m one. I still use codes I wrote nearly a half-century ago as well as things I�ve written since. You would be surprised at how much scientific and engineering software is still written in Fortran, or having been written in Fortran, is used and extended in the language. Whether you fly Airbus, Boeing, Embraer or Bombardier, the probability is that the airframe and engines were analysed with a Fortran program. You can tell how big the user base is by how many different Fortran compilers are on the market, just for the PC. There are 6 vendors on the Polyhedron website, plus several freeware compilers. More to the point, you can�t tell if an application uses Fortran after it has been compiled, and if written with the Clearwin+ interface to Windows, the look and feel is pure Windows. Source codes that I first compiled for Windows 2000 with FTN95�s 32-bit compiler version 3.90 run fine on Windows 10, and compile with FTN95 version 8.30 � and again run fine. If that�s not a great system, then I don�t know what is.
There is a great Fortran compiler system, and it�s FTN95.
PS. I�m not a software developer. It�s only an adjunct to my main skill set. Like being able to draw, write books, and troubleshoot aggravating engineering problems. A great man once said: "Simplicate, and add lightness". Fortran simplicates. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|