|
Google is Not my friend, and I won't jump through the hoops it sets up to try to prove that it is.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
There goes my work laptop...
“That which can be asserted without evidence, can be dismissed without evidence.”
― Christopher Hitchens
|
|
|
|
|
I love that it is not just an error, but a rather fatal one. My online research indicates that this string of "German" text is just jibberish and has no actual meaning in German.
So, in 1969 it was jibberish. In 2019 it is a fatal error.
Nice.
|
|
|
|
|
Hi All,
We as a company are reliant on several pieces of software that were written in Delphi now the only machine that can update them is hidden under a desk that only a select few know of. At least one of the Gurus who wrote the software has since died, several have left the firm, there is one bit that is crucial that will only run XP Service Pack 2 and nothing higher. A bit of Googling and there is a tool to do it Delphi to C# Conversion - Ispirer has anyone tried it know of another... I trying to avoid problems...
UPDATE:
Speaking to the Delphi guru, it uses all sorts of third party interface to make life easier and non-convertible. well it's better than nothing...
modified 22-Jan-19 5:46am.
|
|
|
|
|
Ah, the famous "machine under the desk" scenario. I have experienced this type of scenario many years ago.
My very limited experience with code converters (vb to c#) has taught me that you still need to fix the hell out of the resultant conversion, no matter what tool you use.
|
|
|
|
|
Slacker007 wrote: My very limited experience with code converters (vb to c#) has taught me that you still need to fix the hell out of the resultant conversion, no matter what tool you use.
But, in the age of AI!?!*
THis is my way of saying, "Yep, I have found the same to be true."
|
|
|
|
|
Quote: only run XP Service Pack 2 and nothing higher Must be a very special thing or it is Delphi 1. I need also to maintain a legacy Delphi/c++ Builder 6 application, but until now no problem with it up to W10
[Edit]
And a converter from Pascal (Borland Pascal with some very proprietary extensions) to c# will most probably very hard/impossible to find
It does not solve my Problem, but it answers my question
modified 19-Jan-21 21:04pm.
|
|
|
|
|
Maybe a code generator thing in the age of NX bit, like the original SOAP component.
|
|
|
|
|
Might be cheaper to build it anew, then to figure out why there's all this weird legacy-code.
The converter would choke on my "uDebug" unit, because the debug-files in .NET look a bit different from the map-files in Delphi. As long as the code is straightforward, conversions "may" work, but anything out of the ordinary will fail.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
"If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
|
|
|
|
|
Eddy Vluggen wrote: As long as the code is straightforward
I burst my spleen, laughing too hard!!!
|
|
|
|
|
Not for many years - it's the kind of thing you don't attempt more than once.
Whenever you find yourself on the side of the majority, it is time to pause and reflect. - Mark Twain
|
|
|
|
|
It's funny because everyone one of us who've experienced code conversion are all just like, "Well, yes, but I wish I didn't have that experience." It's just old wounds to think about now. Nothing else.
|
|
|
|
|
glennPattonWork wrote: Delphi to C# Conversion
What do you have access to? Does this thing convert from Delphi source, or a compiled program originally written in Delphi? Big difference.
|
|
|
|
|
We have the source code and the single remaining author...
|
|
|
|
|
glennPattonWork wrote: and the single remaining author
Wait! And "single remaining author" hasn't already rewritten it!?!
To the gallows with "single remaining author"!!
|
|
|
|
|
You know how these Delphi ghouls are, they refuse to program in any other language than Delphi
|
|
|
|
|
They have good reason to stick.
|
|
|
|
|
Just kidding
I must say that I find Delphi a bit too costly, but there's Lazarus as an open source alternative, the interesting thing is that you can develop cross-platform applications with it and it has a forms designer (seems a rarity nowadays).
|
|
|
|
|
Yup. The one person I know who does Delphi gets paid well above the market rate, to the extent that he can't afford to bail for a newer platform, for being one of 8(? unless there's another user than his employer) people in his city who still use the stuff. The gotcha is that the lack of any plan B that'd sustain his current lifestyle if his current employer ever goes under is a huge stressor.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
best you can email the ispirer people and check with them..mention what delphi version the project is running on etc and request a trial and see..
Caveat Emptor.
"Progress doesn't come from early risers – progress is made by lazy men looking for easier ways to do things." Lazarus Long
|
|
|
|
|
Not a bad idea I will run it past those in charge...
|
|
|
|
|
What version of Delphi? I may have a co-worker who might want to take the job on as some contract work.
|
|
|
|
|
Place I used to work at used such tools twice. Once from [insert obscure language I forget the name of] to VB.NET, and then from VB to C#.
I wasn't there when it took place, but from what I heard (and saw in the code) results were mixed.
The resulting code would most of the time compile, and also most of the time do mostly what it was supposed to do (although some debugging was required), but the big problem was the readability and maintainability of the code.
It would use almost none of the specific language features (probably because it would make conversion a lot more complex), ignore best practices, make variables global that didn't need to be, and all kinds of headaches ranging in size from minor annoyance to "I swear to god I will set fire to my computer".
To be fair, that took place around 15 or more years ago, so maybe there are better converters today, but I doubt it.
At best, it's a start point from where you can develop the new version. Depending on size and complexity of your code base and requirements, it might be faster, cheaper and more future proof to redo the system from scratch in your tech stack of choice, rather than try and convert the existing code base.
|
|
|
|
|
Before you do anything else I'd recommend P2V'ing the physical box into a virtual machine - so if it fails you can still work on the code. Personally I use VM's for all my development environments now - going back to Visual Studio 6 - so if I ever have to revisit some old bit of code I just spin up the old VM and the project is usually still in the MRU list. Many of the old VM's are XP but you can generally just stop them having internet access so they are pretty safe especially if only spun up on demand.
|
|
|
|
|
We did a project for machine translation of a large software system originally written in Pascal into a proprietary systems language (in the Pascal/Algol class, but with a number of syntax differences and a number of added features).
The primary reason for doing this was to protect the system from theft: If some competitor got hold of the source code, the effort of utilizing it (i.e. translating it into some other language) would hopefully be so high that it would be considered not worth it.
Our conclusion after completion of the work was quite clear: We would have saved a lot of effort if we had placed a printout of the original Pascal code in the manuscript holder and manually typed in the translation line by line.
The auto-translator had no clue about the semantics of the code. Whenever it was in doubt, it generated new variables, labels and other constructs. For all practical purposes, all comments were ruined - they were there, but often misplaced because the original composite statement had been broken into pieces and reassembled in a different way; if the translator couldn't decide where to attach the comment, it was put at the bottom of the function. Obviously, the translator didn't make use of the extensions of the target language, as there was nothing in the input calling for these facilities...
Cleaning up the result was a tedious chore, and for a long time, there were still traces of the translator's bad semantic understanding of the application semantics. We could have used the translator for subsequent projects, but we never did. We saved work by doing it by hand.
We could have spent effort in trying to improve the translator. If there were a thousand projects waiting to be translated, it might have been worth it, but there was not, and we were already sick of it after the first job it had done - and the job it crated for us in cleaning up.
|
|
|
|