Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 11/15/18 in all areas

  1. Extend the record a bit and try again (so it doesn't fit into a register): TTestRec = record dummy: array[1..10] of Integer; Value: Integer; procedure Change( AValue: Integer ); end;
  2. If you like my Forms Humanizer for Delphi IDE, I have something new for you and other colleagues. It's a new free plug-in for Delphi 10.2.3 IDE, which shows the status of opened files in the form of colored bars in the tabs above the editor: If you are interested you can download and test it here: https://sites.google.com/site/kryvich/kryvichs-editor-status-bars It is interesting that as follows from the article "New in 10.3: IDE UI Improvements in the Main Window", an appearance of the file tabs in the new Delphi 10.3 will change significantly:
  3. Our new article about how to package iOS and macOS Application Extensions with your Delphi developed iOS and macOS application and interact with the Application Extension from Delphi using the Application Groups API. https://blog.grijjy.com/2018/11/15/ios-and-macos-app-extensions-with-delphi/
  4. The built-in FastMM isn't very useful as far as gathering diagnostic info goes. You pretty much need the enhanced version with the debug DLL.
  5. AlexBelo

    New official Embarcadero forums online

    Looks ugly (slow, pile of unsorted posts, etc.)... Bring me back my lovely NNTP format...
  6. A few suggestions for the post layout in the desktop version of community: Shift the icon a little higher Remove "Members" Optionally remove the reputation and posts number, we can see this information by hovering mouse over the icon. Move the blocks as showed by the arrows. People who came from Google+, are accustomed to a light design without optional elements. Thank you for the forum, it can be the best place for communications!
  7. Lars Fosdal

    Advice on starting to work with databases

    Whichever DB you decide to use - don't expose the DB as remote storage for to your game clients, but use a REST interface or similar instead. This isolates the game client from the storage technicalities, and you can change the databases without having to change the game client. It also reduces the risk of someone meddling with the DB - at least as long as you handle the REST data properly and ward off SQL injection attempts.
  8. Edwin Yip

    Advice on starting to work with databases

    Unless you use a framework like mORMot which turns SQLite into a real multi-user DBMS (I meant real, although it's achieved with threads and locking). Advises for using an ORM - only use ORM (Object-Relation Mapping) for the simple CRUD part, but don't map your entire data model into a ORM. Doing the latter is the root cause of all complains about ORM from all the Java, C# and Delphi programmers. In this regard let me tell you why I LOVE mORMot - it allows you to accomplish simple data operations such reading/saving/updating/deleting a piece of cake, while it does NOT limit you using any SQL features. It's all about balance between a full-fledged ORM and using raw SQL, mORMot provides the best of both world. There is no over-abstraction nor over-engineering in mORMot, but it provides a HUGH foundation for your application - ORM, database, http(web ) server and http client Rest, remote function call, encryption, crossplatform-ready code base (think FPC and Linux), and so on, and so on, wow, unbelievable, all my new programs are relying on it, including an archiving software and a POS (point of sales) software.
  9. There is a book by Terence Parr on Language Implementation Patterns that might be of interest. Sue
  10. @pyscripter Thank you for the finds! I had some free time, so I adapted Teo's parser for Delphi. Also corrected some bugs in this parser and in the grammar for the Delphi 7.0 language. https://github.com/Kryuski/GOLD-Parsing-System-For-Delphi @Markus Kinzler Interesting. I will definitely follow this project. Update: Parse::Easy is written using Perl. Yes, it can generate a lexer and a parser in Delphi laguage, but hey! I do not want to install another IDE and learn a new language when such things may well be written in Delphi. Once they wrote ErrorInsight on J#, and I think it was a bad decision. Maybe later, I or someone else can rewrite Parse::Easy to Delphi. But now it does not make sense, since it is still in the beta stage.
  11. Look at https://gitlab.com/teo-tsirpanis/gold-parser-Lazarus for a version 5 compatible Gold engine. Version 5 grammars are not compatible with versions 1 engines. But IMHO the good old lex/yacc https://github.com/RomanYankovsky/ndyacclex can be more easily integrated with your Delphi projects. No need to rely on third party libraries. One could develop and test the grammar with GOLD I suppose and then translate it to lex/yacc.
  12. Although it has been pretty quiet over there for some years I still use GOLD Parsing System in some of my applications. Besides some pre-built ones it allows to create your own grammars as needed.
  13. @Tommi Prami That's easy: https://github.com/RomanYankovsky/DelphiAST You might want to try the version with all my patches in it: https://github.com/JBontes/DelphiAST It seems Roman Yankovsky has not had time to integrate all my issues yet. It **is** a very mature library and using it will serve you well. If you want to change the code, grokking the calls between the different parser levels does take some getting used to. I suggest first reading up on the difference between a parser and a lexer if you want to do that. PS don't be put off by the XML output, that's just a cheap trick to display the contents of the tree. You don't need it to work with DelphiAST.
×