-
Content Count
3513 -
Joined
-
Last visited
-
Days Won
174
Everything posted by David Heffernan
-
Wow, first time using repeat ... until
David Heffernan replied to Mike Torrettinni's topic in Algorithms, Data Structures and Class Design
The C++ for loop, in its general form, is trivially translated into a while loop. So for (init; condition; iteration) statement becomes init; while (condition) { statement; iteration; } It is well worth knowing this if you are in the business of translating pieces of code. So in C++ the for loop is syntactic sugar on top of the while loop. In Delphi also the classic for loop can also be trivially expressed as a while loop. This for loop is simpler than that of C++ but it's still just a while loop (condition tested before body executed) with implicit increment. They Pascal repeat loop is like the C++ do loop. They key being that the condition is at the end of the body rather than the beginning. -
We can only dream.......
-
Any advice when to use FileExists?
David Heffernan replied to Mike Torrettinni's topic in General Help
Load into memory, close, then parse is likely wasteful and risks memory exhaustion. I would urge you to choose the simplest solution that meets your needs, at every decision point. -
Any advice when to use FileExists?
David Heffernan replied to Mike Torrettinni's topic in General Help
Why are you so worried about reading from files. It's perfectly normal to open a file, read it, parse as you go, then close. In fact trying to do other than that is just going to create more complexity for you. To what benefit? What is the problem here? What do you see going wrong with the most simple way to read files? It looks like you are inventing a problem where none exists. -
Delphi compiler need to be opensourced
David Heffernan replied to AlekXL's topic in RTL and Delphi Object Pascal
I'm just curious. Do either of you have a stopping condition? -
Any advice when to use FileExists?
David Heffernan replied to Mike Torrettinni's topic in General Help
That's not how you do exception handling. You don't need to catch and re-raise. You can just let them float up to wherever in the code knows how to deal with them with finality. -
Any advice when to use FileExists?
David Heffernan replied to Mike Torrettinni's topic in General Help
You shouldn't put checks for parameter validity in every method. Your code will just be full of that and you will drown in clutter. -
Class inheritance and hides method
David Heffernan replied to Jacek Laskowski's topic in Algorithms, Data Structures and Class Design
Perhaps you should step back and ask why you want two distinct things to have the same name. That, rather than the banal compilation warning, is surely the real issue here. -
Delphi compiler need to be opensourced
David Heffernan replied to AlekXL's topic in RTL and Delphi Object Pascal
You've really raised an army here Alek -
Delphi compiler need to be opensourced
David Heffernan replied to AlekXL's topic in RTL and Delphi Object Pascal
Dude, Scotland is literally inside the UK -
Delphi compiler need to be opensourced
David Heffernan replied to AlekXL's topic in RTL and Delphi Object Pascal
Open source isn't giving up. It's allowing contributions from outside. Emba would still be in control. The only open source project I have any involvement is Spring4d. Who do you think is the boss of that? It sure ain't me. And that's exactly how it should be. A good open source project has strong management and leadership, and those contributors that can fit in and add to the development effort are facilitated. You don't just hand control to random collaborators. Stefan's point about open source collaborators is spot on. Good programmers aren't going to spend their time on open source projects unless it's rewarding and fun. I certainly could never see myself working with the OP here. -
Delphi compiler need to be opensourced
David Heffernan replied to AlekXL's topic in RTL and Delphi Object Pascal
CLX was actually alright. I built a cross platform app with it back in the day and lived for quite some time -
Delphi compiler need to be opensourced
David Heffernan replied to AlekXL's topic in RTL and Delphi Object Pascal
Which platform doesn't have good C and C++ compilers? -
Delphi compiler need to be opensourced
David Heffernan replied to AlekXL's topic in RTL and Delphi Object Pascal
Those aren't facts though. If you are going to make a claim, back it up with credible evidence. Just because 45 said it, doesn't make it true. -
Delphi compiler need to be opensourced
David Heffernan replied to AlekXL's topic in RTL and Delphi Object Pascal
That's surely not a problem with LLVM per se, rather the Delphi compiler on top of LLVM? -
Delphi compiler need to be opensourced
David Heffernan replied to AlekXL's topic in RTL and Delphi Object Pascal
Win64 also I believe -
Code expert for fixing very simple and obvious syntax errors?
David Heffernan replied to PeterPanettone's topic in Delphi IDE and APIs
Writing a tool is how I would approach this. Learn a language like Python so that task like this can be done very easily and quickly. Of course, an even better solution is to fix the process that is generating erroneous code in the first place. -
Code expert for fixing very simple and obvious syntax errors?
David Heffernan replied to PeterPanettone's topic in Delphi IDE and APIs
Wouldn't you just add the commas? I mean, how many lines of code do you have with this mistake in? -
Code expert for fixing very simple and obvious syntax errors?
David Heffernan replied to PeterPanettone's topic in Delphi IDE and APIs
Is this the only error that you want to be fixed automatically? -
Delphi compiler need to be opensourced
David Heffernan replied to AlekXL's topic in RTL and Delphi Object Pascal
Pretty bad reasoning. If it's for paid customers only, then there's no security in case Emba go bust. "Because we love Delphi more than you do." How to win friends and influence people. -
I don't think that this is encryption. And in any case, it's probably worth knowing that the password can be removed trivially.
-
TArray vs TList with VirtualStringTree
David Heffernan replied to Mike Torrettinni's topic in Algorithms, Data Structures and Class Design
Being able to manage the lifetime of classes is not an expert skill. It's well worth learning how to do it. Likely in your case you have somewhat tangled code into which you are jamming these classes. The difficulty is not that TList is hard, or that lifetime of classes is hard, but refactoring large code with different standards is hard. -
TArray vs TList with VirtualStringTree
David Heffernan replied to Mike Torrettinni's topic in Algorithms, Data Structures and Class Design
When done right, it is simpler and cleaner to code using higher level constructs. Sounds like you are blaming the tools. -
Delphi Rio Android application.processMessages; dosent work
David Heffernan replied to a topic in FMX
Aren't you meant to do work in a background thread? -
Initialize local variables at declaration
David Heffernan replied to PeterPanettone's topic in Delphi IDE and APIs
Herd immunity springs to mind