i would assume a CLR target would do everything as the CLR does it. So yes it 
would use the system GC (equivalent to gc:none as far as the compiler is 
concerned.)

Unsafe doesn't mean anything to the CLR. That is a C# keyword that just allows 
pointer stuff, while in CIL (the bytecode) you just have ops that deal with 
managed and unmanaged pointers. No special handling by the language needed.

Strings I would assume to be ultimately backed by System.String with a thin 
layer to sugar coat it to match the stdlib. AFAIK we already do that for 
JavaScript and this is more or less what the .NET languages all do.

Interfaces and objects might need a couple pragmas. We already have `method` 
which does largely what virtual calls do on the CLR. I would be inclined to say 
interface attachment to objects would also be a pragma. We have concepts now 
(though I haven't used them yet) but I couldn't say how easily those could be 
mapped. I don't think we have syntax to say "this object should comply with 
this concept" because if we did then we could very likely just piggyback on 
that (with the concept having a pragma to indicate it means an interface, 
CLR-wise.)

Still working on a research project tangential to this. (But more on that when 
its over.)

Reply via email to