C embed assistance

I was wondering if there was a site with reliable documentation covering
the C embed API? The one on ruby-lang.org is near useless as it was
simply generated without commentary. I could have sworn there was
another site with documentation that explained the stuff and not just
display the declarations. I forgot which site that was and I forgot what
terms I put in Google to find it.

···

--
Posted via http://www.ruby-forum.com/.

Schala Zeal wrote:

I was wondering if there was a site with reliable documentation covering
the C embed API? The one on ruby-lang.org is near useless as it was
simply generated without commentary. I could have sworn there was
another site with documentation that explained the stuff and not just
display the declarations. I forgot which site that was and I forgot what
terms I put in Google to find it.

The word 'reliable' is a bit problematic in this case, no docs I found
so far are something I would like to call that. I had a hard time to
figuring the stuff out to embed ruby into my window manager
(http://subtle.subforge.org).

During the time I learned a lot from following urls:

http://www.eqqon.com/index.php/Ruby/Ruby_V1.9_C_Extension
http://metaeditor.sourceforge.net/embed/

I started to write down common pitfalls with embedding ruby today
(Subforge) and will also help if you have any questions
I can answer.

···

--
Posted via http://www.ruby-forum.com/\.

Schala Zeal wrote:

I was wondering if there was a site with reliable documentation covering
the C embed API? The one on ruby-lang.org is near useless as it was
simply generated without commentary. I could have sworn there was
another site with documentation that explained the stuff and not just
display the declarations. I forgot which site that was and I forgot what
terms I put in Google to find it.

This one?

http://www.ruby-doc.org/docs/ProgrammingRuby/html/ext_ruby.html

That's from a very old version of the book (covering ruby 1.6.8) but the
fundamentals are the same. Or you can buy a later version as PDF or dead
tree.

···

--
Posted via http://www.ruby-forum.com/\.

Unless there's a magic API I'm not aware of, Ruby doesn't have anything like
this. MRI uses globals which can make embedding difficult and will
certainly prevent you from running multiple copies of the same VM within a
single process image.

I know people using an embedded Ruby interpreter, and the general take is:
not fun.

If you really want to use Ruby within your application, I'd suggest starting
a copy of the Ruby interpreter in another process and talking over pipes.

···

On Sun, Feb 7, 2010 at 3:00 PM, Schala Zeal <schalaalexiazeal@gmail.com>wrote:

I was wondering if there was a site with reliable documentation covering
the C embed API? The one on ruby-lang.org is near useless as it was
simply generated without commentary. I could have sworn there was
another site with documentation that explained the stuff and not just
display the declarations. I forgot which site that was and I forgot what
terms I put in Google to find it.
--
Posted via http://www.ruby-forum.com/\.

--
Tony Arcieri
Medioh! A Kudelski Brand

You know... I was considering right now about using C# instead of C/C++.
My main target audience use Windows. For Linux/Mac, perhaps Mono, but
I've only used version 1.0 of that for development several years ago and
it was rather slow, compiling and running.

Does anyone have an opinion on this?

···

--
Posted via http://www.ruby-forum.com/.

I think the book Programming Ruby 1.9 from the pragmatic programmers
will help a lot.

And from my own experience, it is important to understand that writing
ruby extensions and embedding ruby interpreter are the same in
reality.

···

2010/2/8 Christoph Kappel <unexist@dorfelite.net>:

Schala Zeal wrote:

I was wondering if there was a site with reliable documentation covering
the C embed API? The one on ruby-lang.org is near useless as it was
simply generated without commentary. I could have sworn there was
another site with documentation that explained the stuff and not just
display the declarations. I forgot which site that was and I forgot what
terms I put in Google to find it.

The word 'reliable' is a bit problematic in this case, no docs I found
so far are something I would like to call that. I had a hard time to
figuring the stuff out to embed ruby into my window manager
(http://subtle.subforge.org).

During the time I learned a lot from following urls:

Ruby/Ruby V1.9 C Extension - eqqon
ruby embedded into c++
http://banisterfiend.wordpress.com/

I started to write down common pitfalls with embedding ruby today
(Subforge) and will also help if you have any questions
I can answer.
--
Posted via http://www.ruby-forum.com/\.

I would not consider C# to be portable past Windows, which for me would
be a dealbreaker. (Also, if I had my choice of companies on whose code
base and API to bet my future, it would not be Microsoft. They have too
often said "here is the One True API, code to this and we'll support it
forever" and then killed it a year or two later.)

-s

···

On 2010-02-09, Schala Zeal <schalaalexiazeal@gmail.com> wrote:

You know... I was considering right now about using C# instead of C/C++.
My main target audience use Windows. For Linux/Mac, perhaps Mono, but
I've only used version 1.0 of that for development several years ago and
it was rather slow, compiling and running.

Does anyone have an opinion on this?

--
Copyright 2010, all wrongs reversed. Peter Seebach / usenet-nospam@seebs.net
| Seebs.Net <-- lawsuits, religion, and funny pictures
Fair game (Scientology) - Wikipedia <-- get educated!

I hear IronRuby's fairly good (i.e. Ruby for .NET), and it would make
integration a hell of a lot easier than trying to integrate MRI into your
C/C++ code.

···

On Mon, Feb 8, 2010 at 7:59 PM, Schala Zeal <schalaalexiazeal@gmail.com>wrote:

You know... I was considering right now about using C# instead of C/C++.
My main target audience use Windows. For Linux/Mac, perhaps Mono, but
I've only used version 1.0 of that for development several years ago and
it was rather slow, compiling and running.

Does anyone have an opinion on this?

--
Tony Arcieri
Medioh! A Kudelski Brand

Schala Zeal wrote:

You know... I was considering right now about using C# instead of C/C++.
My main target audience use Windows. For Linux/Mac, perhaps Mono, but
I've only used version 1.0 of that for development several years ago and
it was rather slow, compiling and running.

Does anyone have an opinion on this?

Use something portable. It will make it easier to provide other
versions later. That probably means not C#, unless Mono will work for
what you're doing.

Best,

···

--
Marnen Laibow-Koser
http://www.marnen.org
marnen@marnen.org
--
Posted via http://www.ruby-forum.com/\.

贾枭 wrote:

I think the book Programming Ruby 1.9 from the pragmatic programmers
will help a lot.

And from my own experience, it is important to understand that writing
ruby extensions and embedding ruby interpreter are the same in
reality.

I guessed that much. I mean if a language can be extended by C, C should
be able to use it embedded.

···

2010/2/8 Christoph Kappel <unexist@dorfelite.net>:

--
Posted via http://www.ruby-forum.com/\.

Seebs wrote:

···

On 2010-02-09, Schala Zeal <schalaalexiazeal@gmail.com> wrote:

You know... I was considering right now about using C# instead of C/C++.
My main target audience use Windows. For Linux/Mac, perhaps Mono, but
I've only used version 1.0 of that for development several years ago and
it was rather slow, compiling and running.

Does anyone have an opinion on this?

I would not consider C# to be portable past Windows, which for me would
be a dealbreaker. (Also, if I had my choice of companies on whose code
base and API to bet my future, it would not be Microsoft. They have too
often said "here is the One True API, code to this and we'll support it
forever" and then killed it a year or two later.)

-s

MFC, Win32, and DirectX have been around for a while, no?
--
Posted via http://www.ruby-forum.com/\.

Tony Arcieri wrote:

···

On Mon, Feb 8, 2010 at 7:59 PM, Schala Zeal > <schalaalexiazeal@gmail.com>wrote:

You know... I was considering right now about using C# instead of C/C++.
My main target audience use Windows. For Linux/Mac, perhaps Mono, but
I've only used version 1.0 of that for development several years ago and
it was rather slow, compiling and running.

Does anyone have an opinion on this?

I hear IronRuby's fairly good (i.e. Ruby for .NET), and it would make
integration a hell of a lot easier than trying to integrate MRI into
your
C/C++ code.

Nice! Uhm... I used Allegro (http://alleg.sf.net) for my gaming API, and
well... what would be a good choice for .NET? There's likely no DirectX
for Mono, and Allegro's .NET binding is outdated.
--
Posted via http://www.ruby-forum.com/\.

Schala Zeal wrote:

I guessed that much. I mean if a language can be extended by C, C should
be able to use it embedded.

Inconclusively, I started embedding with 1.8.6 and it was fun to tinker
a buildsystem that used headers in the right order, ruby had e.g. an own
regex.h. Also initiating the loadpath with gems isn't strictly forward,
because when using ruby_options() things will get worse.

The thing with 1.9 that is really annoying while embedding is the
polling thread that handles ruby threads and signals.

···

--
Posted via http://www.ruby-forum.com/\.

Win32 is old news, it's been .NET for a while. Before that it was OS/2 that
was the next target that all MS-platform developers should be looking at.
And I think there's been more shifts than that, but some are not especially
visible from the outside.

-s

···

On 2010-02-09, Schala Zeal <schalaalexiazeal@gmail.com> wrote:

MFC, Win32, and DirectX have been around for a while, no?

--
Copyright 2010, all wrongs reversed. Peter Seebach / usenet-nospam@seebs.net
| Seebs.Net <-- lawsuits, religion, and funny pictures
Fair game (Scientology) - Wikipedia <-- get educated!

How so?

···

--
Posted via http://www.ruby-forum.com/.