On 8/23/2010 2:19 PM, Ralph Versteegen wrote:
On 24 August 2010 06:03, Mike Caron<[email protected]>  wrote:
On 8/23/2010 2:01 PM, James Paige wrote:

On Mon, Aug 23, 2010 at 01:50:55PM -0400, Mike Caron wrote:

On 8/23/2010 1:39 PM, James Paige wrote:

On Tue, Aug 24, 2010 at 05:22:00AM +1200, Ralph Versteegen wrote:

On 24 August 2010 04:33, James Paige<[email protected]>     wrote:

On Mon, Aug 23, 2010 at 04:56:27AM -0700,
[email protected] wrote:

teeemcee
2010-08-23 04:56:27 -0700 (Mon, 23 Aug 2010)
218
More horror! MenuDefs are meant to be deleted with ClearMenuData, or
they leak all their items! Fix the numerous places where we were doing that.

It would be REALLY great if FB let us use constructors and
destructors.

Isn't -lang deprecated the thing that is holding us back from using
them?

---
James

Yep.

There are a few UDTs now which have to be manually destructed, and I
feel really bad every time I introduce one because it makes our code
less friendly and more and more C-like.

I suspect that constructor and destructor support could be added to
-lang deprecated by patching a few lines in the compiler, and I am
almost considering trying it. And if I didn't have all these OHR
features to work on, I would definitely be working on fb2c++ right
now.

Have you been following the forum thread in which a couple people have
threatened to bribe you to work on it with the goal of an XNA port?

Yeah, but it would be be such a big project. I'd rather work on
porting the OHR to everything else, and have someone who actually
knows the first thing about C# try such a thing.

What, really? While I would really enjoy a .NET port of free basic, I
doubt this would happen any time in the near future.

You would? Why?

Oh, is XNA .NET only? I had mistakenly assumed that it allowed you to
make thin .NET wrappers around mostly C code, like you can with
iPhone+ObjectiveC and Android+Java

I'm reasonably confident that it is. I'm not 100% sure, though.

I'm also pretty sure it's CLR-only. Apparently it's possible to use
XNA, including on the xbox360, with managed C++ if your code is "type
safe":
http://fabiogaluppo.spaces.live.com/blog/cns!B671A4645AF2F2F4!154.entry

Oh, hey, I forgot about managed C++.

What I don't know is how freely you are allowed to use pointers:
"managed" means limitations. Certain limitations could be worked
around for most of the OHR's source, but I don't see any chance of the
script interpreter being portable. However, it may be possible to
translate hamsterspeak to C# instead of using the innermost
black-pointer-magic core of the interpreter.

Which is why I told Fyre long ago that it was theoretically possible.

Disclaimer: I have written exactly 0 lines of Managed C++, so I'm going by what I've heard, and the help file.

In regular managed C++, compiled with /clr, you can do whatever you want. Pointers, unsafe voodoo, static_cast<MyObject*>(NotMyObject), you name it.

However, the XBox 360 doesn't speak unmanaged code, so you have to compile with /clr:safe which expressly forbids all the stuff that makes C++ "interesting".

In C#, you can get limited access to pointers inside an "unsafe" method. However, to run this code on the 360, you can't even do that.

So, yeah, it doesn't look too good.

---
James
_______________________________________________
Ohrrpgce mailing list
[email protected]
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org

_______________________________________________
Ohrrpgce mailing list
[email protected]
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org

_______________________________________________
Ohrrpgce mailing list
[email protected]
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org

_______________________________________________
Ohrrpgce mailing list
[email protected]
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org

Reply via email to