MS asked us (mostly NEU) to investigate a port of Racket (then PLT Scheme) to 
.Net some 15 years ago. (They supported the 4-year project with a generous 
financial donation.) In the end, we had to admit defeat. Racket’s GUI framework 
(e.g, event spaces), its mapping to the control stack (continuation marks), and 
a few other niceties that we really enjoy (but could live without) got in the 
way. 

Since then, both Racket and .Net have evolved, but I am afraid, not enough to 
make a full-fledged port easy. 

Now, if you can live with separate Racket and .Net processes that communicate 
via a COM or ActiveX-like interface, that might be doable. We do have COM 
packages and have used them extensively. As far as I know, nothing like that 
exists. 

Please continue to report on your efforts — Matthias






> On Jan 15, 2017, at 5:36 PM, Alexander McLin <alex.mc...@gmail.com> wrote:
> 
> Dear Racketeers,
> 
> I've been using Racket on and off for small-scale private projects over 
> several years. Unfortunately the majority of my development work has been 
> based on .NET Framework as part of my daily job. 
> 
> I'm interested in incorporating Racket into my software stack but I need to 
> be able to support interoperating with Microsoft services in use in my 
> organization.
> 
> I'm considering developing a package designed to create and manage .NET 
> objects and services from within Racket. For the past several weeks I've been 
> doing exploratory work with Racket's ffi/unsafe library and .NET CLR's low 
> level plumbing to understand what would be required to create a such package. 
> It's all very preliminary right now and much design work remains to be done.
> 
> The Pythonnet project serves as an existing example of a similar type of 
> package.
> 
> Before I get too deep into this, I'm doing my due diligence. I did a keyword 
> search of Racket's package catalog and the users mailing list archives but 
> didn't find any existing prior work along similar lines. I did find a thread 
> from 2011 asking about .NET support. 
> 
> I'm asking on the list if anyone has done or know of any similar work? 
> Currently I'm starting from scratch but would like to avoid unnecessary 
> duplication of efforts if I can help it. Appropriate credit will of course be 
> given.
> 
> Because .NET is object-oriented, therefore code written for that platform is 
> designed along the lines or compiled to OO semantics — see C# versus F# — my 
> current idea is to create a Racket API using Racket's own class system to map 
> to .NET classes. The .NET OO semantics are similar enough to Racket's system 
> I think it can be adapted to interface with .NET without too much impedance 
> mismatch.
> 
> Any design ideas or suggestions are very much welcome.
> 
> Best,
> Alexander McLin
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to