comp.lang.ada
 help / color / mirror / Atom feed
* Ann: AdaNetframework - Proof of cncept / alpha release
@ 2020-03-26  9:11 alby.gamper
  2020-03-31 15:25 ` Shark8
  0 siblings, 1 reply; 4+ messages in thread
From: alby.gamper @ 2020-03-26  9:11 UTC (permalink / raw)


Dear Ada Community

For those interested in Microsoft NetFramework, I have developed a set of
bindings, runtime that allows native Ada applications built using GNAT to
use the NetFramework. Conceptually this is very similar to "Embedinator 4000"
developed by the "Mono" development team. Note this is not Ada compiled into
CLR/VM bytecode, but a native (albeit for the moment) Windows x64 application that
can make use of the functionality provided by the NetFramework.

Note this is a Proof of concept/alpha release, but it is functional

The git repo contains 3 branches, these being

1) Master - a cutdown version of mscorlib (only includes subset of mscorlib)
2) System.dll - contains the core system bindings (core dependency)
3) System.Windows.forms.dll - contains winforms bindings

I suggest that if you want to build/test the repo, please start with the "Master"
branch (which contains rudimentary test application (ie VS/GPR project) and then
progress to System and finally System.Windows.Forms branch. Note that the 
Winforms branch will take ~45 min to complete, so be patient (its a large lib!)

Notes:

1) Please use the latest version of VisualAda to build the projects. Their was
a memory leak which may/will cause the final part of the build to fail

2)I am intending to support NetCore going forward, so that Mac, Linux clients
will be supported. But this may take some time, since the CLR hosting /interop
Api's are very different from NetCore to NetFRamework

Git repo is https://github.com/Alex-Gamper/Ada-NetFramework.git

Feel free to raise questions / comments

Alex


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Ann: AdaNetframework - Proof of cncept / alpha release
  2020-03-26  9:11 Ann: AdaNetframework - Proof of cncept / alpha release alby.gamper
@ 2020-03-31 15:25 ` Shark8
  2020-04-04  6:27   ` alby.gamper
  2020-04-04  6:30   ` alby.gamper
  0 siblings, 2 replies; 4+ messages in thread
From: Shark8 @ 2020-03-31 15:25 UTC (permalink / raw)


On Thursday, March 26, 2020 at 3:11:37 AM UTC-6, alby....@gmail.com wrote:
> Dear Ada Community
> 
> For those interested in Microsoft NetFramework, I have developed a set of
> bindings, runtime that allows native Ada applications built using GNAT to
> use the NetFramework. Conceptually this is very similar to "Embedinator 4000"
> developed by the "Mono" development team. Note this is not Ada compiled into
> CLR/VM bytecode, but a native (albeit for the moment) Windows x64 application that
> can make use of the functionality provided by the NetFramework.
> 
> Note this is a Proof of concept/alpha release, but it is functional
> 
> The git repo contains 3 branches, these being
> 
> 1) Master - a cutdown version of mscorlib (only includes subset of mscorlib)
> 2) System.dll - contains the core system bindings (core dependency)
> 3) System.Windows.forms.dll - contains winforms bindings
> 
> I suggest that if you want to build/test the repo, please start with the "Master"
> branch (which contains rudimentary test application (ie VS/GPR project) and then
> progress to System and finally System.Windows.Forms branch. Note that the 
> Winforms branch will take ~45 min to complete, so be patient (its a large lib!)
> 
> Notes:
> 
> 1) Please use the latest version of VisualAda to build the projects. Their was
> a memory leak which may/will cause the final part of the build to fail
> 
> 2)I am intending to support NetCore going forward, so that Mac, Linux clients
> will be supported. But this may take some time, since the CLR hosting /interop
> Api's are very different from NetCore to NetFRamework
> 
> Git repo is https://github.com/Alex-Gamper/Ada-NetFramework.git
> 
> Feel free to raise questions / comments
> 
> Alex

So, this allows you to use DOTNET stuff in native applications; that's pretty nifty.
There was a GANT that targeted DOTNET directly, though the latest one is pretty old now (2014?) and there was a Ada spec generator where you could import DOTNET libraries for use in your Ada programs. [I have a copy of Delphi.NET, so of course I ran it over the Delphi DLLs. ;) And had some fun playing around with that.]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Ann: AdaNetframework - Proof of cncept / alpha release
  2020-03-31 15:25 ` Shark8
@ 2020-04-04  6:27   ` alby.gamper
  2020-04-04  6:30   ` alby.gamper
  1 sibling, 0 replies; 4+ messages in thread
From: alby.gamper @ 2020-04-04  6:27 UTC (permalink / raw)


On Wednesday, April 1, 2020 at 2:25:21 AM UTC+11, Shark8 wrote:
> On Thursday, March 26, 2020 at 3:11:37 AM UTC-6, alby....@gmail.com wrote:
> > Dear Ada Community
> > 
> > For those interested in Microsoft NetFramework, I have developed a set of
> > bindings, runtime that allows native Ada applications built using GNAT to
> > use the NetFramework. Conceptually this is very similar to "Embedinator 4000"
> > developed by the "Mono" development team. Note this is not Ada compiled into
> > CLR/VM bytecode, but a native (albeit for the moment) Windows x64 application that
> > can make use of the functionality provided by the NetFramework.
> > 
> > Note this is a Proof of concept/alpha release, but it is functional
> > 
> > The git repo contains 3 branches, these being
> > 
> > 1) Master - a cutdown version of mscorlib (only includes subset of mscorlib)
> > 2) System.dll - contains the core system bindings (core dependency)
> > 3) System.Windows.forms.dll - contains winforms bindings
> > 
> > I suggest that if you want to build/test the repo, please start with the "Master"
> > branch (which contains rudimentary test application (ie VS/GPR project) and then
> > progress to System and finally System.Windows.Forms branch. Note that the 
> > Winforms branch will take ~45 min to complete, so be patient (its a large lib!)
> > 
> > Notes:
> > 
> > 1) Please use the latest version of VisualAda to build the projects. Their was
> > a memory leak which may/will cause the final part of the build to fail
> > 
> > 2)I am intending to support NetCore going forward, so that Mac, Linux clients
> > will be supported. But this may take some time, since the CLR hosting /interop
> > Api's are very different from NetCore to NetFRamework
> > 
> > Git repo is https://github.com/Alex-Gamper/Ada-NetFramework.git
> > 
> > Feel free to raise questions / comments
> > 
> > Alex
> 
> So, this allows you to use DOTNET stuff in native applications; that's pretty nifty.
> There was a GANT that targeted DOTNET directly, though the latest one is pretty old now (2014?) and there was a Ada spec generator where you could import DOTNET libraries for use in your Ada programs. [I have a copy of Delphi.NET, so of course I ran it over the Delphi DLLs. ;) And had some fun playing around with that.]

Hi Shark8

Yes it does allow you to use DOTNET directly (ie from a native x64 binary)
The big difference between my approach and targeting CLR/DOTNET directly as
the BNAT 2014 did, Is that the Bindings need to be generated based on a 
predefined set of assembly's. Hence the reason for the 2 main branches in Git

The "system.dll" branch contains only the bindings for system.dll and the
"System.windows.Forms.dll" branch contains the bindings for WinForms and all
its dependencies (If their is demand I can do another branch for WPF)

Alex

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Ann: AdaNetframework - Proof of cncept / alpha release
  2020-03-31 15:25 ` Shark8
  2020-04-04  6:27   ` alby.gamper
@ 2020-04-04  6:30   ` alby.gamper
  1 sibling, 0 replies; 4+ messages in thread
From: alby.gamper @ 2020-04-04  6:30 UTC (permalink / raw)


On Wednesday, April 1, 2020 at 2:25:21 AM UTC+11, Shark8 wrote:
> On Thursday, March 26, 2020 at 3:11:37 AM UTC-6, alby....@gmail.com wrote:
> > Dear Ada Community
> > 
> > For those interested in Microsoft NetFramework, I have developed a set of
> > bindings, runtime that allows native Ada applications built using GNAT to
> > use the NetFramework. Conceptually this is very similar to "Embedinator 4000"
> > developed by the "Mono" development team. Note this is not Ada compiled into
> > CLR/VM bytecode, but a native (albeit for the moment) Windows x64 application that
> > can make use of the functionality provided by the NetFramework.
> > 
> > Note this is a Proof of concept/alpha release, but it is functional
> > 
> > The git repo contains 3 branches, these being
> > 
> > 1) Master - a cutdown version of mscorlib (only includes subset of mscorlib)
> > 2) System.dll - contains the core system bindings (core dependency)
> > 3) System.Windows.forms.dll - contains winforms bindings
> > 
> > I suggest that if you want to build/test the repo, please start with the "Master"
> > branch (which contains rudimentary test application (ie VS/GPR project) and then
> > progress to System and finally System.Windows.Forms branch. Note that the 
> > Winforms branch will take ~45 min to complete, so be patient (its a large lib!)
> > 
> > Notes:
> > 
> > 1) Please use the latest version of VisualAda to build the projects. Their was
> > a memory leak which may/will cause the final part of the build to fail
> > 
> > 2)I am intending to support NetCore going forward, so that Mac, Linux clients
> > will be supported. But this may take some time, since the CLR hosting /interop
> > Api's are very different from NetCore to NetFRamework
> > 
> > Git repo is https://github.com/Alex-Gamper/Ada-NetFramework.git
> > 
> > Feel free to raise questions / comments
> > 
> > Alex
> 
> So, this allows you to use DOTNET stuff in native applications; that's pretty nifty.
> There was a GANT that targeted DOTNET directly, though the latest one is pretty old now (2014?) and there was a Ada spec generator where you could import DOTNET libraries for use in your Ada programs. [I have a copy of Delphi.NET, so of course I ran it over the Delphi DLLs. ;) And had some fun playing around with that.]


Hi Shark8

Yes it does allow you to use DOTNET directly (ie from a native x64 binary)
The big difference between this approach and targeting CLR/DOTNET directly as
GNAT 2014 did, Is that the Bindings need to be generated based on a 
predefined set of assembly's. Hence the reason for the 2 main branches in Git

The "system.dll" branch contains only the bindings for system.dll and the
"System.windows.Forms.dll" branch contains the bindings for WinForms and all
its dependencies (If their is demand I can do another branch for WPF)

Alex

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-04-04  6:30 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-26  9:11 Ann: AdaNetframework - Proof of cncept / alpha release alby.gamper
2020-03-31 15:25 ` Shark8
2020-04-04  6:27   ` alby.gamper
2020-04-04  6:30   ` alby.gamper

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox