[#37231] Announcing New Ruby Book Under Development! — <robert.calco@...>

Everybody:

31 messages 2002/04/02
[#37250] Re: [ANN] Announcing New Ruby Book Under Development! — "John" <jyeung@...> 2002/04/02

Have you checked out?

[#37279] About efficiency — Jean-Hugues ROBERT <jean_hugues_robert@...> 2002/04/02

[#37289] Re: About efficiency — nobu.nokada@... 2002/04/03

Hi,

[#37291] Re: About efficiency — Sean Middleditch <elanthis@...> 2002/04/03

On Tue, 2002-04-02 at 20:16, nobu.nokada@softhome.net wrote:

[#37232] seeking to understand... — Mark Probert <probertm@...>

38 messages 2002/04/02
[#37255] Re: Ruby, python, perl, ... — Chris <chris@...> 2002/04/02

In article <87d6xhaoif.fsf@jenny-gnome.dyndns.org>,

[#37281] Is eval a code/design smell? — "Chris Morris" <home@...>

I seem to have an inherent distaste for eval, but I don't know why. I've

51 messages 2002/04/03
[#37323] Re: Is eval a code/design smell? — Ron Jeffries <ronjeffries@...> 2002/04/03

On Wed, 03 Apr 2002 00:15:10 GMT, "Chris Morris" <home@clabs.org> wrote:

[#38034] Re: Is eval a code/design smell? — Ian Macdonald <ian@...> 2002/04/11

On Wed 03 Apr 2002 at 20:35:30 +0900, you wrote:

[#38045] Re: Is eval a code/design smell? — Sean Middleditch <elanthis@...> 2002/04/11

On Thu, 2002-04-11 at 01:40, Ian Macdonald wrote:

[#38061] Re: Is eval a code/design smell? — Ian Macdonald <ian@...> 2002/04/11

On Thu 11 Apr 2002 at 22:07:03 +0900, you wrote:

[#38063] Re: Is eval a code/design smell? — Sean Middleditch <elanthis@...> 2002/04/11

On Thu, 2002-04-11 at 12:06, Ian Macdonald wrote:

[#38064] Re: Is eval a code/design smell? — ts <decoux@...> 2002/04/11

>>>>> "S" == Sean Middleditch <elanthis@awesomeplay.com> writes:

[#38066] Re: Is eval a code/design smell? — Sean Middleditch <elanthis@...> 2002/04/11

On Thu, 2002-04-11 at 12:25, ts wrote:

[#38067] Re: Is eval a code/design smell? — ts <decoux@...> 2002/04/11

>>>>> "S" == Sean Middleditch <elanthis@awesomeplay.com> writes:

[#38068] Re: Is eval a code/design smell? — Sean Middleditch <elanthis@...> 2002/04/11

On Thu, 2002-04-11 at 12:42, ts wrote:

[#38069] Re: Is eval a code/design smell? — ts <decoux@...> 2002/04/11

>>>>> "S" == Sean Middleditch <elanthis@awesomeplay.com> writes:

[#38072] Re: Is eval a code/design smell? — Sean Middleditch <elanthis@...> 2002/04/11

On Thu, 2002-04-11 at 12:59, ts wrote:

[#37342] regular expression question — "Firestone, Mark - Technical Support" <mark.firestone@...>

Thanks for the help with the tread questions guys... I have one about (gasp)

16 messages 2002/04/03

[#37385] TextPad replacement for Linux? — Tobias Reif <tobiasreif@...>

TIA,

25 messages 2002/04/03

[#37397] Really new-new-newbie question :) — "Philip Mateescu" <philip@...>

Hi,

13 messages 2002/04/03

[#37454] ModRUBY question — George Moschovitis <gmosx@...>

Hi everybody,

18 messages 2002/04/04

[#37470] Test the result of an initialization ? — jayce@... (Jayce Piel)

17 messages 2002/04/04

[#37540] Fibonacci Number Generators — jzakiya@... (Jabari Zakiya)

Hi, I'm a newbie, coming to Ruby from a

14 messages 2002/04/04

[#37549] OO/Ruby Terminology — <james@...>

I added a wiki page for Ruby book development ...

22 messages 2002/04/05
[#37808] Re: OO/Ruby Terminology — <bbense+comp.lang.ruby.Apr.07.02@...> 2002/04/10

-----BEGIN PGP SIGNED MESSAGE-----

[#37861] RE: OO/Ruby Terminology — <james@...> 2002/04/10

> From: bbense+comp.lang.ruby.Apr.07.02@telemark.stanford.edu

[#37944] Re: OO/Ruby Terminology — Chris <chris@...> 2002/04/10

In article <PGEPJIFLPEPOHCKEEEIKIEFADCAA.james@rubyxml.com>,

[#37963] RE: OO/Ruby Terminology — <james@...> 2002/04/10

> From: Chris [mailto:chris@cmb-enterprises.com]

[#37617] Addition to file.c (File.extension) — Mike Hall <mghall@...>

18 messages 2002/04/05
[#37736] Re: Addition to file.c (File.extension) — matz@... (Yukihiro Matsumoto) 2002/04/08

Hi,

[#37653] Switching from PHP to Ruby - Comments Please — Jim Freeze <jim@...>

Hi:

34 messages 2002/04/06

[#37746] ruby-dev summary 16501-16750 — TAKAHASHI Masayoshi <maki@...>

Hi all,

17 messages 2002/04/08

[#37833] Ruby as replacement for VB? — "Robb Shecter" <rs@...>

Hi,

19 messages 2002/04/10
[#37923] Re: Ruby as replacement for VB? — Michael Davis <mdavis@...> 2002/04/10

Robb Shecter wrote:

[#39153] Re: Ruby as replacement for VB? — "Euan Mee" <xlucid@...> 2002/04/26

On 11 Apr 2002, at 1:03, Michael Davis wrote:

[#37835] crypting ruby source — Ludo <coquelle@...>

Hi,

32 messages 2002/04/10
[#38280] Re: crypting ruby source — web2ed@... (Edward Wilson) 2002/04/14

Ludo <coquelle@enib.fr> wrote in message news:<3CB31298.13A44B26@enib.fr>...

[#38044] RFC - class_added callback — Michal Rokos <m.rokos@...>

Hello,

16 messages 2002/04/11

[#38046] GetoptLong question — djberg96@... (Daniel Berger)

Hi all,

16 messages 2002/04/11
[#38051] Re: GetoptLong question — "Pit Capitain" <pit@...> 2002/04/11

On 11 Apr 2002, at 22:16, Daniel Berger wrote:

[#38101] How to Make a Method Ineffective Efficiently? — William Djaja Tjokroaminata <billtj@...>

Hi,

15 messages 2002/04/11
[#38135] Re: How to Make a Method Ineffective Efficiently? — Jean-Hugues ROBERT <jean_hugues_robert@...> 2002/04/12

Hello,

[#38159] Re: How to Make a Method Ineffective Efficiently? — William Djaja Tjokroaminata <billtj@...> 2002/04/12

Thanks for all the responses. I just want to add the final

[#38126] Ruby/Google — Ian Macdonald <ian@...>

Hi,

19 messages 2002/04/12

[#38136] Idea for a new shorthand — "Hal E. Fulton" <hal9000@...>

OK, maybe this is an idea no one will like. Or

17 messages 2002/04/12

[#38167] Why Object#class Is Inconsistent in "==" and "case"? — William Djaja Tjokroaminata <billtj@...>

Hi,

12 messages 2002/04/12

[#38199] not vs !, and vs && — <james@...>

I'm confused about the behavior of 'not'. The Pickaxe and Ruby21Days books

17 messages 2002/04/12

[#38238] Barnes & Noble putting on the squeeze — David Alan Black <dblack@...>

Hello --

11 messages 2002/04/13

[#38239] Freshmeat article about Ruby — Tobias DiPasquale <anany@...>

Hi all,

28 messages 2002/04/13
[#38447] Re: Freshmeat article about Ruby — Joel VanderWerf <vjoel@...> 2002/04/16

Tobias DiPasquale wrote:

[#38457] Re: Freshmeat article about Ruby — David Alan Black <dblack@...> 2002/04/16

Hi --

[#38560] Re: Freshmeat article about Ruby — Mark Hulme Jones <mjones@...> 2002/04/18

David Alan Black <dblack@candle.superlink.net> writes:

[#38561] Re: Freshmeat article about Ruby — Paul Brannan <pbrannan@...> 2002/04/18

On Fri, Apr 19, 2002 at 01:07:22AM +0900, Mark Hulme Jones wrote:

[#38562] Re: Freshmeat article about Ruby — Pat Eyler <pate@...> 2002/04/18

On Fri, 19 Apr 2002, Paul Brannan wrote:

[#38564] Re: Freshmeat article about Ruby — Jack Herrington <jack_d_herrington@...> 2002/04/18

On 4/18/02 9:30 AM, "Pat Eyler" <pate@eylerfamily.org> wrote:

[#38648] Ruby golf (FFT) Was: Freshmeat article about Ruby — Christian Szegedy <szegedy@...> 2002/04/19

Jack Herrington wrote:

[#38657] Re: Ruby golf (FFT) Was: Freshmeat article about Ruby — David Alan Black <dblack@...> 2002/04/19

Hello --

[#38331] mime type — Tobias Reif <tobiasreif@...>

Hi all,

15 messages 2002/04/15

[#38338] Compiling Ruby on Mac OS X — Alwyn <alwyn@...>

I've downloaded the latest Stable Snapshot and tried building it. It

18 messages 2002/04/15

[#38449] Help wanted for statvfs extension — djberg96@... (Daniel Berger)

Hi all,

35 messages 2002/04/16
[#38470] Re: Help wanted for statvfs extension — "James F.Hranicky" <jfh@...> 2002/04/17

On Wed, 17 Apr 2002 05:04:06 +0900

[#38525] resolv.rb Bug — "Roy J. Milican" <roy@...>

Greetings,

18 messages 2002/04/17

[#38627] Imlib2-Ruby 0.4.0 — Paul Duncan <pabs@...>

I just posted Imlib2-Ruby version 0.4.0, my Ruby bindings for Imlib2

12 messages 2002/04/19

[#38635] Threads creating threads creating threads... — Tobias Peters <tpeters@...>

I have already asked this question in [ruby-talk:19661], but I will ask it

12 messages 2002/04/19

[#38694] Ruby on .NET? — Ron Jeffries <ronjeffries@...>

I scanned the .net threads here and didn't see whether there is, or is not, an

37 messages 2002/04/19
[#38696] RE: Ruby on .NET? — "repeater" <repeater@...> 2002/04/19

recently found:

[#38839] building extensions-- new vs initialize — "Norman Makoto Su" <normsu@...>

Hi, I'm trying to build a ruby extension in C. While looking at the pickaxe CD

14 messages 2002/04/23

[#38910] Numberic#prev — Sean Chittenden <sean@...>

I do a lot of incrementing and decrementing of values: it'd be nice if

36 messages 2002/04/24

[#39047] A Wild Idea: What do you think? — Jim Freeze <jim@...>

Hi:

16 messages 2002/04/26

[#39122] RE: A Wild Idea: What do you think? — "Morris, Chris" <chris.morris@...>

> > OK, then let's have it in Texas. How about August? Oh, what do you

28 messages 2002/04/26
[#39123] Re: A Wild Idea: What do you think? — Jim Freeze <jim@...> 2002/04/26

On Sat, Apr 27, 2002 at 03:15:21AM +0900, Morris, Chris wrote:

[#39176] Re: A Wild Idea: What do you think? — Pat Eyler <pate@...> 2002/04/27

On Sat, 27 Apr 2002, Jim Freeze wrote:

[#39177] Re: A Wild Idea: What do you think? — David Alan Black <dblack@...> 2002/04/27

Hi --

[#39228] RubyConf.new(2002) - ideas for agenda — "Daniel Berger" <djberg96@...>

Ok - so I'm probably jumping the gun here, but hey, what the heck.

27 messages 2002/04/28

[#39394] ncurses, mingw32 — tony summerfelt <snowzone5@...>

i've been away from ruby for awhile, it was time to dust off the pickaxe book

13 messages 2002/04/30

[Patch] clenup MACRO in eval.c 2

From: Michal Rokos <m.rokos@...>
Date: 2002-04-21 06:52:02 UTC
List: ruby-talk #38757
Hi,

	this patch adresses further MACROS in eval.c cleanup.
(And some io.c, string.c isssues.)

	Please check

		Michal


Index: eval.c
===================================================================
RCS file: /src/ruby/eval.c,v
retrieving revision 1.284
diff -u -r1.284 eval.c
--- eval.c	2002/04/19 04:14:07	1.284
+++ eval.c	2002/04/19 15:39:10
@@ -117,7 +117,7 @@
 #define SCOPE_PROTECTED 2
 #define SCOPE_MODFUNC   5
 #define SCOPE_MASK      7
-#define SCOPE_SET(f)  do {scope_vmode=(f);} while(0)
+#define SCOPE_SET(f)  scope_vmode=(f)
 #define SCOPE_TEST(f) (scope_vmode&(f))
 
 int ruby_safe_level = 0;
@@ -507,7 +507,7 @@
 static struct FRAME *top_frame;
 static struct SCOPE *top_scope;
 
-#define PUSH_FRAME() {			\
+#define PUSH_FRAME() do {		\
     struct FRAME _frame;		\
     _frame.prev = ruby_frame;		\
     _frame.tmp  = 0;			\
@@ -524,7 +524,7 @@
     ruby_sourcefile = _frame.file;	\
     ruby_sourceline = _frame.line;	\
     ruby_frame = _frame.prev;		\
-}
+} while (0)
 
 struct BLOCKTAG {
     struct RBasic super;
@@ -565,7 +565,7 @@
     return blktag;
 }
 
-#define PUSH_BLOCK(v,b) {		\
+#define PUSH_BLOCK(v,b) do {		\
     struct BLOCK _block;		\
     _block.tag = new_blktag();		\
     _block.var = v;			\
@@ -590,10 +590,10 @@
    else	if (!(_block.scope->flags & SCOPE_DONT_RECYCLE)) \
        rb_gc_force_recycle((VALUE)_block.tag); \
    ruby_block = _block.prev; 		\
-}
+} while (0)
 
 struct RVarmap *ruby_dyna_vars;
-#define PUSH_VARS() { \
+#define PUSH_VARS() do { \
     struct RVarmap * volatile _old; \
     _old = ruby_dyna_vars; \
     ruby_dyna_vars = 0
@@ -604,7 +604,7 @@
            FL_SET(_old, DVAR_DONT_RECYCLE); \
     }\
     ruby_dyna_vars = _old; \
-}
+} while (0)
 
 #define DVAR_DONT_RECYCLE FL_USER2
 
@@ -747,7 +747,7 @@
 #define ITER_PRE 1
 #define ITER_CUR 2
 
-#define PUSH_ITER(i) {			\
+#define PUSH_ITER(i) do {		\
     struct iter _iter;			\
     _iter.prev = ruby_iter;		\
     _iter.iter = (i);			\
@@ -755,7 +755,7 @@
 
 #define POP_ITER()			\
     ruby_iter = _iter.prev;		\
-}
+} while (0)
 
 struct tag {
     jmp_buf buf;
@@ -769,7 +769,7 @@
 };
 static struct tag *prot_tag;
 
-#define PUSH_TAG(ptag) {		\
+#define PUSH_TAG(ptag) do {		\
     struct tag _tag;			\
     _tag.retval = Qnil;			\
     _tag.frame = ruby_frame;		\
@@ -796,11 +796,11 @@
     if (_tag.prev)			\
         _tag.prev->retval = _tag.retval;\
     prot_tag = _tag.prev;		\
-}
+} while (0)
 
 #define POP_TMPTAG()			\
     prot_tag = _tag.prev;		\
-}
+} while (0)
 
 #define TAG_RETURN	0x1
 #define TAG_BREAK	0x2
@@ -815,18 +815,18 @@
 VALUE ruby_class;
 static VALUE ruby_wrapper;	/* security wrapper */
 
-#define PUSH_CLASS() {			\
+#define PUSH_CLASS() do {		\
     VALUE _class = ruby_class
 
 #define POP_CLASS() ruby_class = _class; \
-}
+} while (0)
 
 static NODE *ruby_cref = 0;
 static NODE *top_cref;
 #define PUSH_CREF(c) ruby_cref = rb_node_newnode(NODE_CREF,(c),0,ruby_cref)
 #define POP_CREF() ruby_cref = ruby_cref->nd_next
 
-#define PUSH_SCOPE() {			\
+#define PUSH_SCOPE() do {		\
     volatile int _vmode = scope_vmode;	\
     struct SCOPE * volatile _old;	\
     NEWOBJ(_scope, struct SCOPE);	\
@@ -858,7 +858,7 @@
     ruby_scope->flags |= SCOPE_NOSTACK;	\
     ruby_scope = _old;			\
     scope_vmode = _vmode;		\
-}
+} while (0)
 
 static VALUE rb_eval _((VALUE,NODE*));
 static VALUE eval _((VALUE,VALUE,VALUE,char*,int));
@@ -1756,7 +1756,7 @@
     }\
 } while (0)
 
-#define BEGIN_CALLARGS {\
+#define BEGIN_CALLARGS do {\
     struct BLOCK *tmp_block = ruby_block;\
     if (ruby_iter->iter == ITER_PRE) {\
 	ruby_block = ruby_block->prev;\
@@ -1766,7 +1766,7 @@
 #define END_CALLARGS \
     ruby_block = tmp_block;\
     POP_ITER();\
-}
+} while (0)
 
 #define MATCH_DATA *rb_svar(node->nd_cnt)
 
@@ -2152,7 +2152,10 @@
     int state;
     volatile VALUE result = Qnil;
 
-#define RETURN(v) { result = (v); goto finish; }
+#define RETURN(v) do { \
+    result = (v); \
+    goto finish; \
+} while (0)
 
   again:
     if (!node) RETURN(Qnil);
Index: io.c
===================================================================
RCS file: /src/ruby/io.c,v
retrieving revision 1.135
diff -u -r1.135 io.c
--- io.c	2002/04/18 08:46:18	1.135
+++ io.c	2002/04/19 15:39:33
@@ -265,7 +265,7 @@
 {
     OpenFile *fptr;
     FILE *f;
-    int n;
+    long n;
 
     rb_secure(4);
     if (TYPE(str) != T_STRING)
@@ -284,7 +284,7 @@
 #ifdef __human68k__
     {
 	register char *ptr = RSTRING(str)->ptr;
-	n = (int)RSTRING(str)->len;
+	n = RSTRING(str)->len;
 	while (--n >= 0)
 	    if (fputc(*ptr++, f) == EOF)
 		break;
@@ -305,7 +305,7 @@
 	fptr->mode |= FMODE_WBUF;
     }
 
-    return INT2FIX(n);
+    return LONG2FIX(n);
 }
 
 VALUE
@@ -643,14 +643,14 @@
 {
     VALUE str;
     long bytes = 0;
-    int n;
+    long n;
 
     if (feof(fptr->f)) return Qnil;
     READ_CHECK(fptr->f);
     if (!siz) siz = BUFSIZ;
     str = rb_tainted_str_new(0, siz);
     for (;;) {
-	n = io_fread(RSTRING(str)->ptr+bytes, (long)siz-bytes, fptr->f);
+	n = io_fread(RSTRING(str)->ptr+bytes, siz-bytes, fptr->f);
 	if (n == 0 && bytes == 0) {
 	    if (feof(fptr->f)) return Qnil;
 	    rb_sys_fail(fptr->path);
@@ -1470,7 +1470,7 @@
 rb_io_modenum_flags(mode)
     int mode;
 {
-    int flags;
+    int flags = 0;
 
     switch (mode & (O_RDONLY|O_WRONLY|O_RDWR)) {
       case O_RDONLY:
Index: string.c
===================================================================
RCS file: /src/ruby/string.c,v
retrieving revision 1.101
diff -u -r1.101 string.c
--- string.c	2002/04/18 08:46:18	1.101
+++ string.c	2002/04/19 15:40:39
@@ -528,16 +528,18 @@
     VALUE str;
     long len;
 {
+    if (len < 0) {
+	rb_raise(rb_eArgError, "negative string size (or size too big)");
+    }
+	
     if (len != RSTRING(str)->len) {
 	rb_str_modify(str);
 
-	if (len >= 0) {
-	    if (RSTRING(str)->len < len || RSTRING(str)->len - len > 1024) {
-		RESIZE_CAPA(str, len);
-	    }
-	    RSTRING(str)->len = len;
-	    RSTRING(str)->ptr[len] = '\0';	/* sentinel */
+	if (RSTRING(str)->len < len || RSTRING(str)->len - len > 1024) {
+	    RESIZE_CAPA(str, len);
 	}
+	RSTRING(str)->len = len;
+	RSTRING(str)->ptr[len] = '\0';	/* sentinel */
     }
     return str;
 }


-- 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Michal Rokos                         Czech Technical University, Prague
E-mail:m.rokos@sh.cvut.cz  ICQ:36118339  Jabber:majkl@jabber.sh.cvut.cz
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

In This Thread

Prev Next