www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - Delta - Bridge to the Delphi ecosystem

reply Andre Pany <andre s-e-a-p.de> writes:
Delta is a proof of concept to enhance the D Programming Language 
with the
Delphi ecosystem.

There are 2 scenarios Delta tries to achieve:

-   Create your GUI using the Delphi RAD Studio and connect the 
events with your
     logic written in D.
     The obligatory Hello World sample:
     
https://github.com/andre2007/delta-fmx-10-2-1/tree/master/examples/gui1

-   Use non visual Delphi components in your D code. There are a 
lot of components
     available for almost every purpose. For example you would be
     able to use the INDY (Internet Direct) components.

     In the sample application, the TTimer component is used. This 
example also
     shows how to write a wrapper component in D if the component 
is not already
     available.
     
https://github.com/andre2007/delta-fmx-10-2-1/tree/master/examples/ttimer


More information how to start:
https://github.com/andre2007/delta-core-10-2-1/blob/master/README.md

Notes:
- Although Delta is currently only a proof of concept maybe some 
of you can profit from it.

- The proxy objects on D side (TForm, TTimer, TEdit,...) 
currently are written manually. Maybe in the future there could 
be a Delphi unit parser which automatically creates the Delphi & 
D source proxy objects

- Everytime accessing an Delphi object on D side, a new object is 
created. I am currently not sure whether this concept will stay

- At the moment Delta targets Windows.

- At the moment the packages are not registered at code.dlang.org 
as the project is in an early state.
Sep 03
parent reply Domain <dont_email empty.com> writes:
On Sunday, 3 September 2017 at 19:53:59 UTC, Andre Pany wrote:
 Delta is a proof of concept to enhance the D Programming 
 Language with the
 Delphi ecosystem.

 [...]
Cool! Any plan to support lazarus/fpc?
Sep 03
parent Andre Pany <andre s-e-a-p.de> writes:
On Monday, 4 September 2017 at 02:32:48 UTC, Domain wrote:
 On Sunday, 3 September 2017 at 19:53:59 UTC, Andre Pany wrote:
 Delta is a proof of concept to enhance the D Programming 
 Language with the
 Delphi ecosystem.

 [...]
Cool! Any plan to support lazarus/fpc?
That makes a lot of sense as Lazarus supports the major platforms. It consists of 2 tasks: 1) Currently Delta is using the Enhanced RTTI which is only available for Delphi. I have to check wheter I can replace it with the old RTTI, also available for Lazarus. 2) Write proxy objects on D side for all needed Lazarus System/VCL classes, enums, ... I would postpone it until I have a tool which generates based on pascal units the needed Delta pascal units/ D modules. Kind regards André
Sep 04