[#3006] mismatched quotation — "stevan apter" <apter@...>

ruby documentation uses a punctuation convention i've never seen

13 messages 2000/05/27

[ruby-talk:02635] Re: Requiring more flexible require

From: matz@... (Yukihiro Matsumoto)
Date: 2000-05-08 14:19:26 UTC
List: ruby-talk #2635
Hi,

In message "[ruby-talk:02629] Re: Requiring more flexible require"
    on 00/05/08, Aleksi Niemel<aleksi.niemela@cinnober.com> writes:

|>|Can you imagine program barrel.c using some routines from foo_wrap.c
|>|directly? Or how about embedded Ruby programs? Could they possess some need
|>|to 'ld -lfoo_wrap'?
|
|>In that case, foo_wrap.o should be linked statically into an embedding
|>program.  Although static linking facility for Ruby extension is far
|>from perfect.
|
|What is the reason demanding static linking. Big library means huge wrapper
|(with SWIG), and with dozens of embedded programs you're really having some
|use for cheap, big hard drives. Should you? Or should you be able to link
|dynamically instead?

Well, I'd tell you again foo_wrap is a extension, not a shared
library.  You have to link it statically or load it by require().
Dynamic linking with -lfoo_wrap is not a option.

|>|foo.so, thus being clear. We might get some clarity by making bigger
|>|difference like naming the foo.so to Foo.rso (denoting Ruby shared Object)
|>|or something.
|>Dynamic loading facility provided by the OS may require the fixed
|>extension for dynamic loadables (for example `.dll').
|
|This is probably not an issue, but I'm interested in anyway. Is it possible
|to come up with "standard" way to name Ruby extensions. If there's no
|compelling reason not to create a naming policy, I would vote for it. We
|could have standard for each platform. But by no means would I like to
|enforce this in any way. It's just good to have such guideline around.

From Ruby programs, dynamic loadables have extension ".so" for all
platforms, no matter what real extension is.  At least that's what I
want.

|One good feature of more flexible require: being able to name init routine
|could allow one to have multiple initialization functions, say for different
|subsets of functionality. In perl world somehow related idea could be
|
|  use strict qw(subs vars);

I have vague idea to introduce Perl's `use' semantics, which is
supplying arguments to required libraries, e.g.

  use strict qw(subs vars);

works just like

  require 'strict'; strict->import(qw(subs vars));

I think it's better than selecting Init function for dynamic
loadables.

|Yes and no, actually I made a mess :). Here I meant that I think these are
|bugs which should be handled. Some code should be added to the middle row of
|three successive '+...' rows. [ruby-talk:02624] was related anyway and
|properly handled. Thanks for it.

I finally get it.  Sorry for being air-headed.
I'll fix the problem.

							matz.

In This Thread

Prev Next