394-614 subjects 799-1035

Error installing some extensions under non-default prefix
0633 [jos@ca no k.] cd obj
0634 [jos@ca no k.] Never mind, when I emptied the build dir (obj) the problem went away :-/ My

Solaris fwrite() problem (Re: Error installing some extensions under non-default prefix)
0635 [nobu.nokada@] The patch in [ruby-core:00582] is no longer necessary?
0638 [jos@ca no k.] Unfortunately, until Sun puts out patches to fix this problem, it is still

[patch] doc/NEWS
0636 [matt@li ke .] ...
+ 0637 [knu@iD em ns] Thanks much!  I'll commit it shortly.
| 0639 [matz@ru y- a] Done.  Thank you for the suggestion.
| 0644 [akr@m1 n. rg] If an assignment method which doesn't return an argument is not
| 0645 [matz@ru y- a] Agreed.  Last time I thought that, I was too lazy to modify compiler
| 0648 [nobu.nokada@] Is it better to define NODE_ASGN?
| 0649 [matz@ru y- a] Yes, I'd name it NODE_ATTRSET...oops, we already have that one.
| 0651 [nobu.nokada@] When a.b= is defined, defined?(a.b = 1) should be "method" or
| + 0652 [nobu.nokada@] @@ -4766,4 +4766,5 @@ node_assign(lhs, rhs)
| + 0653 [matz@ru y- a] Hmm, I guess it should be "method".  Oh, we should fix []= too.
|   0655 [matz@ru y- a] I changed my mind.  It should be "assignment".  Commit the fix above.
+ 0640 [nobu.nokada@] Great jobs.
  0641 [matt@li ke .] ...
  + 0642 [matt@li ke .] Sorry!  The patch also modifies re.c -- obviously don't apply this
  + 0643 [nobu.nokada@] Thank you.
    0646 [matt@li ke .] Yes, though I was thinking that if Regexp#match has the index
    + 0647 [nobu.nokada@] String#match already hasn't it?  Well, you're correct.
    + 0650 [matt@li ke .] Actually I think the "elegant" solution to the problem is lazy string
      0654 [nobu.nokada@] A String instance always has '\0' terminator not included in
      + 0656 [matz@ru y- a] I like this.  Commit this, please.
      + 0657 [matt@li ke .] I'll try to understand this new string code, but I wonder if you could
        0658 [nobu.nokada@] Related to Array#pack/String#unpack.  It means that the string

Ruby instead of PHP?
0659 [d.werder@pl ] I?m new to Ruby and I?d like to know if anybody tried to use Ruby as a replacement to PHP?
0660 [matz@ru y- a] It's better to ask questions like this at the ruby-talk list or

AW: Welcome to our (ruby-core ML)         You are added automatically
0661 [horst.neusch] help

Error in sprintf.c?
0662 [a.bokovoy@sa] Greetings!
0663 [nobu.nokada@] sprintf("%*1$2$s", 10, "hello")	# => "     hello"
0664 [a.bokovoy@sa] Ok, it works now. I'm updating ProgrammingRuby sources to produce

tempfile typo
0665 [jim@fr ez .o] I just installed ruby 173 from cvs and got an error in tempfile.rb
0666 [knu@iD em ns] Fixed, thanks!

Segfault in Ruby 1.7.x/1.8 Proc#to_s
0667 [ged@Fa ri MU] I've been experiencing a segfault when inspecting or calling to_s on a
+ 0668 [decoux@mo lo] Look is the node is still valid
+ 0669 [matz@ru y- a] Could you show me
  + 0670 [decoux@mo lo] rb_gc_mark_frame() don't mark the node : it's normal ?
  | 0671 [matz@ru y- a] This is a great hint.  Thank you.
  + 0672 [ged@Fa ri MU] Yukihiro Matsumoto (in "Re: Segfault in Ruby 1.7.x/1.8 Proc#to_s")
    0673 [matz@ru y- a] Would this patch help you?
    0674 [ged@Fa ri MU] Yukihiro Matsumoto (in "Re: Segfault in Ruby 1.7.x/1.8 Proc#to_s")

IO#read bug: patch
0675 [matju@sy pa ] File.open("/dev/zero").read(1<<24,"").length
0676 [matz@ru y- a] Thank you!

Basic UNIXSocketDGram implementation
0677 [mattbee@so p] Has anyone else tried adding UNIX datagram sockets to Ruby?  I can't quite see
0678 [mattbee@so p] Please excuse me, I'm not sure how I managed to make setting non-blocking mode

pstore not usable on read-only stores
0679 [matt@li ke .] It seems like it should be possible to use a PStore on a read-only
0680 [matz@ru y- a] Thank you for the suggestion.  I will merge this.

local_variables: exception "NULL pointer given"
0681 [Markus.Barch] I am new to the mailing list and I hope that the topic is appropriate
0682 [nobu.nokada@] It must be an aged bug, fixed now.  Thank you.

1.6.7 -vs- 1.8.0 incompatibility intended?
0683 [matt@li ke .] In 1.6.7, String.=~(arg) would compile 'arg' into a Regexp and do the
+ 0689 [matt@li ke .] Shall I add this as a ruby bug?
+ 0695 [matz@ru y- a] Intended.  1.8 reduces implicit conversion (e.g. String#split).

Re: Welcome to our (ruby-core ML)         You are added automatically
0684 [moumar@ne co] help

0685 [decoux@mo lo] Apparently instruby.rb use fileutils rather than ftools, consequence

[Patch] Wall compilation
0686 [michal@ro os] ...
0691 [nobu.nokada@] Is it needed?
0693 [michal@ro os] Try -Wall compilation. It warns badly (gcc-3.2.2) about the code has no
+ 0696 [matz@ru y- a] OK, commit all fixes, except for rb_check_array_type().
| 0697 [michal@ro os] Commited. Thank you.
+ 0698 [nobu.nokada@] I've used this (void)0 trick many times, we have to replace
  0701 [michal@ro os] ...
  0703 [nobu.nokada@] Possibly, gcc 3.2.2 always complains about assert() if NDEBUG?
  0704 [michal@ro os] You were right here. ((void)0) is absolutely perfect. GCC doesn't say a

[Patch] C2003
0687 [michal@ro os] ...
0694 [matz@ru y- a] ;-)  Please commit them, please.

[RFC] mkmf.rb - add files to clean and distclean targets
0688 [michal@ro os] ...
+ 0692 [nobu.nokada@] You'd better initialize those globals in init_mkmf, or you may
| 0700 [michal@ro os] Thank you for your comments.
| 0702 [nobu.nokada@] Thank you.
| 0705 [michal@ro os] You're welcome.
| 0706 [nobu.nokada@] I guess the initialization in init_mkmf is necessary, but one
| 0707 [michal@ro os] You're the boss :)
| 0720 [nobu.nokada@] In extmk.rb, $CPPFLAGS and $LIBPATH will be reset for each
| 0748 [michal@ro os] ...
| 0752 [nobu.nokada@] It looks good for me.
| 0755 [michal@ro os] Glad to hear it. Commited.
+ 0722 [matju@sy pa ] I've written an extension but it is different enough from regular
  0740 [matz@ru y- a] mkmf.rb does support C++, using $(CXX) for compiler, cpp, cxx, or C
  + 0741 [nobu.nokada@] Actually it's done bye extmk.rb.  I'm writing mkmf.rb wrapper
  + 0742 [a.bokovoy@sa] BTW, I implemented a mimic of Perl's vendor-install for 1.7. It separates
  | 0744 [matz@ru y- a] Show us the code, please.
  | 0746 [a.bokovoy@sa] Attached. The patch is against mid-November CVS (I haven't tried against
  | 0749 [matz@ru y- a] Thank you.  But I don't understand purpose of the following
  | 0750 [a.bokovoy@sa] $prefix/lib/ruby is used to install architecture-specific linked objects
  | 0751 [matz@ru y- a] *.rb files may or may not be platform independent.  Do you happen to
  | + 0753 [a.bokovoy@sa] Yes, actually perl5 has this feature (look at 5.8's INSTALL file).
  | + 0754 [nobu.nokada@] What about RUBY_{SHARED,LIB}_{PREFIX,PATH} and so on?
  |   0763 [a.bokovoy@sa] That would be better, or course.
  + 0794 [matju@sy pa ] I'm sorry. My problem surely occurs because I had .c files which were in
    0795 [knu@iD em ns] Wasn't it what the "depend" hook is for?

Forward: Marshal patch
0690 [nobu.nokada@] Fowarding.

0699 [michal@ro os] because Ruby 1.8 is comming and OpenSSL 0.9.7 is now default in Debian

Documentation for thread.rb
0708 [gsinclair@so] Below is a patch for thread.rb [1], containing RDoc comments.  These
0709 [matz@ru y- a] This should eventually removed.
0710 [gsinclair@so] OK, I'll leave them in for now, for consistency, and to avoid wasting
0711 [matz@ru y- a] FIXME is OK.  As I told you before the most important thing is

Is Ruby in a Nutshell online?
0712 [gsinclair@so] Since I'm copying bits out of Nutshell to add documentation to
0713 [matz@ru y- a] Unfortunately, no.  I have my copy of manuscript in the Word format,
0714 [gsinclair@so] That's OK.  You keep doing your work, and I'll get some typing

thwait.rb documented, but feedback required
0715 [gsinclair@so] I've committed thwait.rb with documentation, but I'd like to get the
0718 [matz@ru y- a] He can be reached at <keiju@rational.com>.

[bug, patch] FileTest.writable? is broken on windows
0716 [matt@li ke .] Under a _WIN32 build, FileTest.writable? returns true for all files

Wall ((void)0) - again
0717 [michal@ro os] ...
0745 [matz@ru y- a] Yes, commit the patch.
0747 [michal@ro os] Thank you. Commited.

nd_end and NODE_NEWLINE (fwd)
0719 [chad@ch df w] Sorry for the elementary questions, though I have to warn you all that you
0723 [matz@ru y- a] For the latest 1.8, it keep the end of NODE_BLOCK list, to avoid
+ 0725 [matju@sy pa ] I thought that was node->flags >> 19 ??? Then why this duplication?
| + 0726 [matz@ru y- a] The debugger requires per line event, not per node.
| + 0729 [nobu.nokada@] Now line number is taken from there on demand, and NODE_NEWLINE
|   0737 [matju@sy pa ] couldn't this work simply by having eval.c trigger a debugger event each
|   0739 [matz@ru y- a] Node may not be in source line order.
+ 0727 [chad@ch df w] Thank you very much, Matz.  After sending this, I had figured out the

ModuleBuilder started
0721 [stillflame@F] Hey -core,

Symbols: More Functionality Wanted
0724 [rpav@nw in .] I've been discussing this for a bit on #ruby-lang on OPN (or freenode or
0728 [matz@ru y- a] Interesting idea, but I feel like they are responsibility of Binding,
+ 0731 [rpav@nw in .] This sounds logical to me.
+ 0732 [nobu.nokada@] Tried.
| 0735 [nobu.nokada@] ...
+ 0743 [pit@ca it in] I like this. See http://www.ruby-talk.org/44703 for some ideas.
| 0767 [matju@sy pa ] ________________________________________________________________
| 0768 [dblack@ca dl] I seem not to have gotten anything prior to this post in
| + 0779 [gsinclair@so] Binding#add doesn't sound right if the symbol you're binding already
| | 0780 [matt@li ke .] The problem is that Binding is the wrong name for the class.  A
| | 0782 [matz@ru y- a] I consider "binding" as "a collection of bindings" in your term.  For
| | 0783 [matt@li ke .] I think so.  That sounds strange in English.  It is like saying an
| | + 0784 [matz@ru y- a] Parhaps you're right.  I'm not an English speaker anyway.
| | | 0787 [rpav@nw in .] What about "Scope", as in Scope and Extent?  These terms are originally
| | | 0788 [matju@sy pa ] Winston-Horn LISP (3rd ed) also uses the word Fence to mean a lexical
| | | 0790 [jlst@ge ty g] Would it be possible to provide an analog to const_get/set() methods
| | | 0836 [gnhurst@hu s] So why not call it a "Mapping"?
| | | 0849 [matz@ru y- a] Can "mapping" mean set of maps from name to value?
| | | 0855 [matju@sy pa ] yes it can, and "map" itself may mean that, as it is nearly-synonymous
| | + 0785 [vjoel@PA H. ] I think it's ok to use "binding" this way. Let's look at another word
| |   0786 [matt@li ke .] You can use association this way, but not binding.  E.g. this is more
| + 0781 [matju@sy pa ] Bind#bind(sym,val) as in "bind a symbol to a value, in the context of a
+ 0800 [dblack@ca dl] I'd add that the arguments could also be strings.  There's no

Comments on matrix.rb
0730 [gsinclair@so] I've commented matrix.rb, and in the process made the following
+ 0733 [ged@Fa ri MU] irb(main):001:0> m = Matrix[[1,0,0], [0,1,0], [0,0,1]]
| 0734 [gsinclair@so] You're quite right, and Matrix sensibly has "private_class_method :new"
+ 0736 [matju@sy pa ] The problem with #minor is that it's not a minor, it's a slice.
  0738 [gsinclair@so] Sigh... now we get into the "this method is badly named, but changing

0756 [sean@ch tt n] Simple patch that I've had floating around in my tree for ages, this

Extensions for Time and ParseDate
0757 [ryand-ruby@z] Eric and I have been hacking around and we can't stand the lack of
+ 0760 [matt@li ke .] I didn't look closely at what you did, but do check out time.rb as
+ 0761 [matz@ru y- a] Since localtime(3) and gmtime(3) do not understand timezone other than
| 0765 [matju@sy pa ] May I know what that problem is? I'm curious, because two of my
| 0773 [matz@ru y- a] 1.6.8 and 1.8.0 does not provide duplicated error constants, so that
| + 0774 [ryand-ruby@z] I think it's simpler than that... In the case of the header I was
| + 0789 [matju@sy pa ] hahaha. ok, i found that one by experience. I had to add this line for
+ 0762 [nobu.nokada@] What about time.rb?

Patches for Rubicon
0758 [nathaniel@ta] (Sorry if this is a duplicate)

Adding Test::Unit to CVS
0759 [nathaniel@ta] Matz has already given me the go-ahead to add Test::Unit to CVS, but I
+ 0764 [dave@pr gm t] Is there a reason that rubicon couldn't be included? It seems pretty
| + 0770 [ryand-ruby@z] I've talked to Matz about this (at rubyconf2002) and he was open to the
| | 0775 [nathaniel@ta] the
| | + 0776 [matt@li ke .] Does it work to have some tests native Test::Unit and some tests
| | | 0777 [nathaniel@ta] I think the tricky part comes not in the tests themselves so much, but
| | + 0778 [ryand@ze sp ] I'd be happy to convert them. It's not that much work...
| + 0772 [matz@ru y- a] The only reason I can think of is absence of Test::Unit in the
+ 0766 [knu@iD em ns] The procedure is OK.  You can keep developing the module in the rough/
  0769 [nathaniel@ta] Excellent. I will go forward with it shortly.
  0771 [ryand-ruby@z] If there is, please point this out to me... I'm working on release

0791 [nobu.nokada@] # Though I'm not sure which is appropriate to post this,

[Patches] Mem leak & found on disk
0792 [michal@ro os] is there a small leak in dir.c?

net/ftp.rb observations
0793 [gsinclair@so] attr_accessor :return_code

Re: value of assignment (Re: Order of the value of an expression changed? (PR#579))
0796 [sean@ch tt n] I have read the thread and I think this is a pretty bad change.  I
+ 0797 [decoux@mo lo] bdb was also broken by this modification.
+ 0798 [matz@ru y- a] That's how assignment works.  I just made it consistent for attribute
  0826 [sean@ch tt n] Can I reiterate how absolutely, fundamentally broken this change is
  0827 [nobu.nokada@] root = XML::Parser.new().set_string(str).root
  0828 [sean@ch tt n] I know how to work around it...  doesn't make it "right" though.  :)
  0829 [matz@ru y- a] Consistency.  Ruby provides illusion of assignment for attribute
  + 0830 [sean@ch tt n] I must not be getting it.
  | + 0834 [matt@li ke .] i = f.b = 42
  | | 0835 [sean@ch tt n] That precludes a module from altering the return value though.  If
  | | + 0837 [matt@li ke .] Unlike some OO languages, not everything in Ruby is a method call.
  | | + 0838 [jlst@ge ty g] I've tasted the Kool-Aid and changed my mind about this (even though it
  | | | + 0839 [decoux@mo lo] For me it's confusing if  `bdb["blue"]' and `bdb["blue"] = "XYZ"' don't
  | | | | 0841 [jlst@ge ty g] I know but neither of these evaluation schemes guarantees that
  | | | | 0842 [decoux@mo lo] pigeon% cat b.rb
  | | | | 0853 [jlst@ge ty g] I see your point.  I guess maybe you're right.  It makes the most sense
  | | | + 0840 [sean@ch tt n] Honestly?  I don't care about new users particularly, only clean
  | | | + 0859 [matju@sy pa ] * f.b = a would behave like (f.b=a; f.b)
  | | + 0844 [matz@ru y- a] Really.
  | |   0847 [jim@fr ez .o] Isn't this like
  | + 0854 [pit@ca it in] When reading code I read the assignment operator as an assignment.
  |   0860 [matju@sy pa ] # if out-of-range, auto-adjusts percent to closest valid value
  |   0862 [pit@ca it in] thanks for the code example.
  |   0867 [matju@sy pa ] This is the old debate between implicitness and explicitness. I am not
  + 0831 [dblack@ca dl] Would it be possible to have method-style return behavior iff the
    0832 [nobu.nokada@] Interesting, but how will you distinguish it from assignment,
    0833 [dblack@ca dl] Something like that... or maybe just by the presence of the () ?  I
    0845 [matz@ru y- a] Hmm, how about
    0846 [nobu.nokada@] a.:thing=(100)
    0848 [matz@ru y- a] This is very good candidate if we need to add new syntax.  But I still
    0850 [stillflame@F] what about if attr_accessor :foo defined three methods - #foo, #foo=, and
    0856 [matz@ru y- a] Possible.  But I still don't know whether it is needed enough to
    0858 [jlst@ge ty g] Definitely care.  And very grateful that you are the one to make these