Jump to content

FreeDelphiPascal

Members
  • Content Count

    85
  • Joined

  • Last visited

Everything posted by FreeDelphiPascal

  1. FreeDelphiPascal

    Parallel Resampling of (VCL-) Bitmaps

    It should be put under test πŸ™‚ πŸ™‚ πŸ™‚
  2. FreeDelphiPascal

    PDF view on Android

    Most libraries are for Windows but you can find also some PDF libraries that are cross-platform.
  3. FreeDelphiPascal

    Delphi 10.4.1 LIBSUFFIX AUTO

    $(Auto) is a new environment variable, introduced in Delphi 10.4. Embarcadero didn’t make a big show around it so it went unnoticed by most programmers. But don’t ignore it! It is extremely useful for packages, where it can be used as an automatic version suffix in the package’s name. How does it work? $(Auto) will be automatically substituted by Delphi with compiler’s version number: β€œ270” for Delphi 10.4 β€œ280” for Delphi 11 Etc. When used in the Lib Suffix field, Delphi will automatically add the compiler version number at the end of the BPL name. For example, if my Light Saber package is named LightSaber.DPK, without this automatic suffix, the binary files will be called LightSaber.BPL (and DCP). The name will be static no matter where I compile the library (Delphi Sydney or Alex). So, if I have two Delphi versions installed in parallel, the resulted BPLs will have the same name and we would not know which is for which Delphi version. But with the auto suffix the output file will be called LightSaber270.BPL under Delphi Sydney and LightSaber280.BPL under Delphi Alex. Without $(Auto), we would have to manually update the right version suffix with each new Delphi release, or we would need packages with different names (LightSaber270.DPK, LightSaber280.DPK, LightSaber290.DPK, etc). Note that when we use the LightSaber library in the requires section of another package, we specify it under its standard (non-suffixed) name. Delphi Sydney will correctly look for a file named LightSaber270.bpl and Delphi Alex for LightSaber280.bpl. Requires VclSmp, Vclwinx, LightSaber; // not LightSaber270 ! Using a library with multiple Delphi versions There are multiple reasons for installing and using multiple Delphi versions in parallel: Testing a new Delphi release to see if it is worth purchasing it. Testing a new Delphi release to see if your code still compiles without issues. For library developers, testing if your library compiles with all (new and old) Delphi versions where you want to deliver/sell your library. Hint: if you purchase a license for a specific Delphi version, you have automatic access to all versions below that. With the four environment variables described above, we can have fully automatic naming for the output files. Each DCU file will go to the correct output folder and each BPL/DCP file will be correctly suffixed. Now we can truly have multiple Delphi versions installed and functioning in parallel. Source: https://gabrielmoraru.com/auto-one-package-to-rule-them-all/
  4. FreeDelphiPascal

    Delphi TOIOBE index lifted in May 2022?

    Fortran and Cobol is heavily used by the banks in USA (and maybe Europe also?) Every single cent you transfer in USA goes through a Fortran program. I think it is the same in the administrative sector (USA).
  5. FreeDelphiPascal

    Delphi TOIOBE index lifted in May 2022?

    As I said before, Tiobe is very unreliable. And as a "bonus" the people are Tiobe (which are C++ people) hate Delphi. Not "generally" speaking, but particularly speaking. So, there is no reason to like or to trust Tiobe. πŸ™‚ BUT it is important for us (Delphi devs) because now it will create some hype around Delphi. By entering top 10, people will start discussing around Delphi.
  6. FreeDelphiPascal

    Delphi TOIOBE index lifted in May 2022?

    Delphi just entered Top10 Tiobe this month!
  7. FreeDelphiPascal

    Delphi roadmap 2024

    Hi Recently Marco Cantu something about a road map in his blog. (There is a link to a video there. I haven't watch it yet.) https://learndelphi.org/everything-you-need-to-know-about-future-delphi-development/ But I cannot find any official 2024 roadmap on Emba's website. https://blogs.embarcadero.com/?s=roadmap The old roadmap is from 2020 and the "latest news" it has is about Delphi 10.4 and a fictional 10.5. So, there is an official roadmap document? [UPDATE] Ups. Disregard all that! The page does not have a date (shame on them, this is not how you build a "news" page), but the video caption shows Delphi 11. So, it cannot be new. But if you have a link to a roadmap it would be cool to share it. The 2020 roadmap is definitively "expired".
  8. FreeDelphiPascal

    Delphi roadmap 2024

    I also don't understand why they create this kind of darkness... unless it is for the reasons like those above... I see Emba like a dark cathedral, with many corners, and people are walking in there quietly and with candles in their hands. It is all full of candle smoke. From time to time somebody is quietly coughing and the others are looking bad at him. The windows are covered with black drapes. Outside in the sun, the children are playing. They are happy now, but the know at one time, night will come and maybe the people in the cathedral will save them. C# is upon us.. C# is upon us.... C# is upon us.......
  9. FreeDelphiPascal

    Delphi roadmap 2024

    If it is not bullsh*t (obviously a road map cannot be legal binding especially when they have a "safe harbor" section), then it is sad. Very sad. 😞
  10. Yeah, my interpretation was wrong. It doesn't exactly makes the connection (or disconnection) between the class constructor and the initialization section. The exact quote is: "Note that a class constructor only executes if the class is used. So unlike a normal initialization section of a unit (which always executes), it only executes if the class is used somewhere." Yesterday I was reading more about class conductors, and I see his statement in a new light. I think, to this point, the https://blog.therealoracleatdelphi.com/2009/09/ is still the best resource available about class constructors. https://stackoverflow.com/questions/39471864/delphi-constructor-and-class-constructor
  11. Rudy Velthuis said on SO that "Class constructors are not executed on unit "initialization" but when the class is referenced"
  12. The mainboard of my old computer (Win 7 + Delphi 10.4) died after 12 years. God rest its soul in peace; it was a good computer . I hope is goes into the hardware heaven . So I moved to Delphi 11 on Windows 10 but everything seems slower. Everything seems slower. I don't know if it is the hardware or the OS or Delphi 11. The laptop I got now is not as powerful as my 12 years old computer. The old computer was 32GB fast RAM, 8 core 4.2GHz CPU. This laptop is a Dell Latitude from 2020 with 16GB RAM and puny i5-7440HQ (2.8Ghz) CPU. But is a newer SSD. The problem is that if I run a pure empty Delphi program, Delphi 11 needs 4 full seconds to start it and 5 full seconds to shut it down. That 9 seconds for an empty app! Beyond laughable and beyond ridiculous. I tried also an app of mine (50000 lines or so) and there is not much difference in time. Maybe the start is 0.5-1 second longer. I will have to do some benchmarking this weekend but there are so many directions in which I have to look (OS, CPU/SSD, Delphi 11). The antivirus (Defender) is stopped and the folder where I keep my projects are whitelisted anyway. The SSD encryption is off. How is in your computers (for the same default/empty Delphi program)? Could anyone do the experiment and then report the time, CPU, OS and Delphi ver? _____________ Update: scrolling up/down into the IDE also is very slow and choppy.
  13. FreeDelphiPascal

    Delphi takes 9 seconds to start/shutdown an empty application

    I have tried on different laptop with Win11 this time, different mouse. Activating "scroll a page at a time" does nothing in Delphi IDE, exactly as it does in Win 10. So, something must be broken in Windows 10 (and up).
  14. FreeDelphiPascal

    When will we have a 64-bit IDE version ?

    new 64 bit compiler (only available in Enterprise Enterprice) https://www.embarcadero.com/products/rad-studio/whats-new-in-12-athens πŸ™‚
  15. FreeDelphiPascal

    When will we have a 64-bit IDE version ?

    Why would you have 30 000 000 loc to compile in one single project? Don't you use packages/libraries?
  16. FreeDelphiPascal

    Delphi takes 9 seconds to start/shutdown an empty application

    PS: if still have horrible refresh issues when I scroll down the text in the IDE. If anyone has a fix for this, please let me know. In Win XP I was fixing this by disabling "smooth scroll" in "performance". Now I disabled almost everything and still takes 3-4 seconds to scroll one screen of text: PS: it happens only on mouse scroll. Scrolling with arrows and pg up/dwn is fast. I will try tomorrow this: https://www.thewindowsclub.com/change-mouse-scroll-speed-windows
  17. FreeDelphiPascal

    Delphi takes 9 seconds to start/shutdown an empty application

    Maybe M$ retained in 2024 the same number of users as in 2014. But their SHARE of the market can still goes down. Maybe in 10 years they will even double the number of user and still drop their market share down to 1%. So, why would you program for 1 million Windows users when the 80% of the market is taken other OS? πŸ™‚
  18. FreeDelphiPascal

    Delphi takes 9 seconds to start/shutdown an empty application

    Yeah. Forced updates suck! Microsoft suck worst than ever. No wonder their OS is going down: https://gs.statcounter.com/os-market-share But this puts a higher burden on us. 15 years ago we only cared about the Windows. Nobody* owned a Mac. But now, we must compile Windows, OSX and iOS and Android. (Linux still doesn't count. Not even today.) Microsoft didn't really had many good releases (in my personal opinion only XP and Win7 were good/stale). Microsoft just happened to be there at the appropriate moment. --- * Most Macs were in US. In Europe was unheard of. And the total market was 5% anyway.
  19. FreeDelphiPascal

    Delphi takes 9 seconds to start/shutdown an empty application

    There are no more NEW mainboards for that AMD FX-8350. πŸ˜ͺπŸ˜ͺ
  20. FreeDelphiPascal

    Delphi takes 9 seconds to start/shutdown an empty application

    Yes, but this will have to do with the compilation time. I am not taking into account the compilation time. I compile separately then I press F9. _______ But I think the issue is somehow settled now. I think. After restating Windows, I shaved 2 seconds from the start and stop time. And I THINK the rest of the seconds are explained by the i5 CPU. _______ REMEMBER: Windows 10/11 is not like Windows 7. Pressing shutdown does not do a true shutdown/restart. So, I guess I will have to press Shift now each time I shutdown or always use the Restart function instead of Shutdown. Looks like microsoft made the hardware Reset button useful again. Unfortunately, laptops do not have a reset button anymore.
  21. FreeDelphiPascal

    Delphi takes 9 seconds to start/shutdown an empty application

    I mean the time from when I press the Close button in my program (empty application, no buttons, no nothing inside) until the IDE restores itself and I can type in.
  22. FreeDelphiPascal

    Delphi takes 9 seconds to start/shutdown an empty application

    My 12 years old CPU was an AMD FX-8350 which has a raw performance superior to i5. https://versus.com/en/amd-fx-8350-vs-intel-core-i5-7440hq > The RAM will also make a difference. I have a 45% of RAM free. > If I was you I would spend my effort on fixing your old system. I would like to repair my old rig but the mainboard (gigabyte ga-990fxa-ud3) died. TWICE! The first mainboard will not POST. Then I purchased a second hand mainboard (the same model) one year ago and it went belly up exactly the same way!!! Looks like it reached a certain age and the bios parts started to degrade in the same way. I did a Windows restart and now the shutdown of the program under the debugger/IDE is only 2 seconds. Windows 11 was running for 178 hours! I think I got to much used with Windows 7, which I would use for months without these issues 😞 So, it was a Windows problem. The smaller CPU would explain the remaining 2 seconds needed for the IDE to shutdown the program and show itself. Conclusion Laptops are always a joke compared with desktops. That's settled πŸ™‚ So, now I am in the biggest dilemma: buy new laptop (portability) or build a brand new desktop PC (power)?
  23. FreeDelphiPascal

    Delphi takes 9 seconds to start/shutdown an empty application

    YES. Now, since I moved to Win10, I have that too. So, are you on Win 7 or higher? If you are on a higher Windows, them it must be the OS that is doing that, since my old Delphi 10.4 was not doing that at all on Win7. Win10 is so crappy that MS gave it for free for years and people were still not switching to it. They had to retire Win7 in order to force people switch to 10.
  24. I tried Cursor this week. The program is still early beta. Realy early beta. Strange things are happening there. But when it would be ready, for non Delphi programmers (those HTML/JS coders without a true IDE), it is promising. In some cases it will output good ideas/code, in other cases, absolutely monumental garbage, like TListBox.Items[0].Visible:= false; (wishful thinking?) In the end I the time spent on garbage equalized the time when it produced good code/ideas. I think it would be rather useful to produce ideas instead of code. But considering that you need to understand and review other's code.... I ended up with a negative score. But the end conclusion is that unless it is integrated into Delphi IDE it will not help a well seasoned Delphi programmer. It will rather disturb you. I am not even mentioning, that you can only use it on PAS files that have no DFM associated since Cursor cannot edit your DFM files!
  25. I have found these 3 plugins for "chat": https://github.com/AliDehbansiahkarbon/ChatGPTWizard/blob/main/README.md https://github.com/Code4Delphi/Delphi-AI-Developer https://github.com/FMXExpress/CodeDroidAI But none has a level of integration similar to Copilot. _____ This is not a plugin but just a guy that says that Copilot can generate Delphi code:
Γ—