Jump to content

Lars Fosdal

Administrators
  • Content Count

    3483
  • Joined

  • Last visited

  • Days Won

    114

Everything posted by Lars Fosdal

  1. I can't find a validator that will accept the Object Pascal Grammar.
  2. BTW - Is this file in EBNF format?
  3. @Attila Kovacs I am not sure why you think this would be slower than the current inspection view? Massaging the data for display is not that time consuming, considering you already are in a breakpoint situation - or are you thinking about applying it for a logging breakpoint?
  4. True, which is another reason to support something like this in the debugger.
  5. Lars Fosdal

    Problems with email confirmation

    @AlanScottAgain - Can't rename as there is an existing older AlanScott account already.
  6. Lars Fosdal

    Problems with email confirmation

    @Daniel - any known issues atm?
  7. Lars Fosdal

    Delphi on Windows 11 on MacBook Pro 16 (2021)

    For the M-series ARM CPUs, Windows 11 for ARM is the only viable option. Parallells' seamless Windows on MacOS solution is mindblowing. I am working on integration solutions using IBM App Connect Enterprise these days, so I've not been able to spend so much time with Delphi on the Mac as I'd like to. Our company is moving away from Delphi, and the current app portfolio has gone into care & maintenance mode and will in time be replaced with commercial shelf-ware, so my active Delphi time will be greatly reduced going forward. As for using Delphi under Win4ARM om M1 - compilation is not a problem, but I have not had time to test debugging on iOS/Android at all, so others must peep up about any eventual issues on that. Other than the debuggers of Delphi being in an awful state in general - as long as the VM is set up to reroute the USB connections correctly, I would not expect any issues. I went for Pro + 32Gb + 2TB as I don't expect to need those gfx cores. I'd opt for a 64Gb Pro if there was one, but only Max supports 64Gb. I have to say it is an awesome piece of HW - although - during the winter, I actually miss the heat from the Intel CPU on the Lenovo 😛 I'd opt for even more storage, but Apple are greedy AF.
  8. Lars Fosdal

    Announcement: Magenta Hardware Components

    Fixed that.
  9. Lars Fosdal

    Fill Class Variables from a table row??

    We do that for configuration data - it is basically like a key/value dictionary.
  10. Lars Fosdal

    Forum for Spring4D

    If they react at all.
  11. Lars Fosdal

    simple SFTP-like server for Windows?

    Does HFS support secure connections?
  12. Lars Fosdal

    Fill Class Variables from a table row??

    An instance is a value of a class type that has been constructed with a call to Create. A class var is shared across all instances of the class - and they are accessible directly from the uninstanced type as TCompany.ClassVarName. The drawback is that you can only have one value for all the TCompany instances. If you need to have multiple companies in memory, you need to do a TCompany.Create and load up the instances ordinary fields/props per company.
  13. Lars Fosdal

    Fill Class Variables from a table row??

    Just curious - since the data has to be imported - why bother with class vars instead of using a regular instance with regular fields?
  14. Lars Fosdal

    simple SFTP-like server for Windows?

    https://filezilla-project.org/ aka "The free FTP solution" has both a client and a server. Open source, and pretty good. Configurable connections, including source and target folders. Quick, easy and reliable - and you can set a throttle for the transfer rates if you need to. Edit: One significant drawback - the client is not suitable for command line scripting. If you need to do that, you need to use WinSCP or PowerShell.
  15. I don't mind the compiler throwing hints and warnings - as I always fix them as they appear. I even set some warnings to be errors - since they most likely are severe enough to dictate a no-tolerance policy.
  16. Just a minor detail, based on the wisdom in the Framework Design Guidelines book: I would call the property Enabled, and not Enable. Enabled is a state. Enable is an operator. Also - I would not use FThing - but Thing. If it is publicly accessible as a property, I'd use the prop ref, not the field ref, unless the FThing getter did lazy initialization. If it is not for public use, I'd place it under private or strict private and not use the F prefix. Avoiding prefixes also helps for readability. Thing.Enabled := True; Thing.Execute( 1 ); // or Thing.Enable; Thing.Execute( 1 ); // or - Enable could be a function to set Enabled to true, that returns true if it succeeded. if Thing.Enable then Thing.Execute( 1 );
  17. I wonder why an account was created to post the link, and then the account requested to be deleted?
  18. Lars Fosdal

    did Sherlock left DP?

    Good to see you back, @Sherlock! I hope you are recovering ok.
  19. Other advantages: Properties can be read-only. Since you can opt to have methods for the setter and getter of a property, you also have a place to monitor the activity of the said property - with a breakpoint that simply counts accesses, a method that logs the accesses, or an actual breakpoint Using the get method, a property can allow for lazy instance generation, so that if it is never used, the connected instance is never instantiated Using the set method - the validity of a property value can be decided on assignment, without needing that validation to be spread around on the calling code
  20. Lars Fosdal

    task thread priority?

    As I write this, my laptop runs 523 processes with 7600+ threads on a 12-kernal (6 core) i7. If all those threads were check/sleep/loop based - I'd be at 100%. Instead, most of them are idle, just waiting for something to happen.
  21. Lars Fosdal

    task thread priority?

    It depends on how you wait? I meant kernels as in logical processors. Typically twice the number of cores on an Intel CPU.
  22. Lars Fosdal

    task thread priority?

    There are too many unknowns to suggest a complete design. Are multiple queries done on the same connection, one after the other - or shall each query make a new connection? Is there a limit to the number of parallel slow query/responses? Is order of sequence for the query a crucial factor? Is order or sequence for the response processing a crucial factor? I would be thinking along the lines of a request queue of objects containing the connection and any other necessesary payload. A request thread pool would be processing the request queue and moving the objects to a wait queue. A receive event would copy the response payload to the object, close the connection, and move the object to the response processing queue. A response thread pool would process the objects from the response queue, populate the data used by the UI, and signal the UI that an update has arrived. The UI thread would throttle the actual update/repaint activity to an acceptable rate. IMO, the thread pool sizes does not need to exceed the number of kernels as long as the threads themselves are not idle looping.
  23. https://quality.embarcadero.com/browse/RSP-36887
  24. Lars Fosdal

    XMLMapper crashes out on recursive XML Schema

    @Roger Cigol I designed it. It is intended for inhouse use, but there is no confidentiality, nor is it explicitly copyrighted.
  25. Lars Fosdal

    Frequent and/or annoying typos you make while coding

    I remember beginning in a new position and I spotted and corrected a misspelled parameter in the SQL in Delphi, while it actually was misspelled in the database, so... that didn't really help. Since I am a bit of a petimeter, I mentally spell check my names all the time and get a bit miffed when I stumble on the mistakes of others, but I don't always correct them anymore 😛
×