Jump to content

David Heffernan

Members
  • Content Count

    3711
  • Joined

  • Last visited

  • Days Won

    185

Everything posted by David Heffernan

  1. David Heffernan

    Are we just "Cash Cows"?

    I'm less convinced that is so.
  2. David Heffernan

    Are we just "Cash Cows"?

    The problem with that is the the problems tend to interact with each other.
  3. David Heffernan

    Are we just "Cash Cows"?

    The point of the book is that adding programmers won't necessarily result in a better output.
  4. David Heffernan

    Are we just "Cash Cows"?

    It's far from that simple. I take it that everybody has read this:
  5. David Heffernan

    FreeAndNil or NilAndFree ?

    I can't reconcile these two statements.
  6. David Heffernan

    FreeAndNil or NilAndFree ?

    That something may be done in the RTL/VCL doesn't mean it is good practise.
  7. David Heffernan

    FreeAndNil or NilAndFree ?

    Nothing can save you at this point.
  8. David Heffernan

    Need to Remove the PixelsPerInch and TextHeight fake properties

    OK, Scaled = False does change things.
  9. David Heffernan

    FreeAndNil or NilAndFree ?

    Destructors must not raise exceptions. My personal view is that if they do then the best course of action is to terminate the process.
  10. David Heffernan

    Need to Remove the PixelsPerInch and TextHeight fake properties

    If you remove PixelsPerInch from the DFM then you'll find that your form layouts break different devs modify forms if their machines use different font scaling (i.e. DPI) settings. In my workplace we handle this by requiring all modifications of forms to be made using a common font scaling setting.
  11. David Heffernan

    Open Type Arrays?

    In the OP you also write an implementation for each different type. So where is the saving?
  12. David Heffernan

    Open Type Arrays?

    It's not double the work.
  13. David Heffernan

    Open Type Arrays?

    I would absolutely not want syntax like that. If that's the way you want to go you can do it today with generics. In an ideal world I'd like to see the generality offered by C++ templates though. That would allow algorithmic programming that is just too painful with generics.
  14. David Heffernan

    Open Type Arrays?

    You mean with the code from OP?
  15. David Heffernan

    Open Type Arrays?

    This seems worse than method overloading to me. There you have compile time branching. Here you have to perform runtime type checking.
  16. Rethinking Delphi Floating Point Control Register Management.pdf
  17. I don't think so. You want to be able to define a default FPCR for new threads, so just making those vars threadvars doesn't achieve that. But in any case, why have threadvars for something that is already part of the thread context? That makes no sense to me.
  18. That's a different race though. At least when you call Set8087CW then you know what happens in your thread. But you can still end up modifying things in other threads I guess.
  19. No. That can result in a change to the floating point control state in a different thread, due to the data race on the global var.
  20. 32 bit processes on Windows aren't going away anytime soon. It's actually not hard to change the runtime to address these issues, which can effectively be summarised as isolating threads from each other's execution contexts. I would imagine that Emba don't do it because they perceive that the benefit is too small in comparison with other candidate developments. And remember that I'm proposing a breaking change in behaviour which always raises the bar. Personally I feel that it's important to build on solid foundations. We've just had a huge breaking change by the killing of ARC. So breaking changes can happen. And by the token that a minority of users care about floating point, breaking changes in this area won't affect many people. And surely those that are affected would by and large appreciate the change.
  21. I don't think so. It's very important that code behaves the same way for both 32 and 64 bit compilers and indeed for the non Windows platforms too.
  22. David Heffernan

    Ctrl Tab Ide Plugin

    I have noticed that the list of units that the plugin offers includes those that are loaded but not visible in the IDE. In my case this means units loaded because of visual form inheritance. So with a base form and a derived form, suppose that you load just the derived form. Well, both of the forms are offered by the plugin even though the base form isn't visible in the IDE. Is that intentional?
  23. David Heffernan

    Varialbe set to nil

    That happens when the variable is destroyed, which is when the destructor is executed.
  24. David Heffernan

    Centered message?

    https://stackoverflow.com/questions/4618743/how-to-make-messagedlg-centered-on-owner-form
  25. They both have seen the document already.
×