[#84664] CGI uses file size to distinguish between regular values and files — David Heinemeier Hansson <david@...>

I've been having a ton of problems handling file uploads with CGI.rb

23 messages 2003/11/02
[#84674] Re: CGI uses file size to distinguish between regular values and files — Simon Kitching <simon@...> 2003/11/03

Hi David,

[#84676] Re: CGI uses file size to distinguish between regular values and files — Dmitry Borodaenko <d.borodaenko@...> 2003/11/03

On Mon, Nov 03, 2003 at 02:29:08PM +0900, Simon Kitching wrote:

[#84678] Re: CGI uses file size to distinguish between regular values and files — Austin Ziegler <austin@...> 2003/11/03

On Mon, 3 Nov 2003 20:12:06 +0900, Dmitry Borodaenko wrote:

[#84692] Re: CGI uses file size to distinguish between regular values and files — Dmitry Borodaenko <d.borodaenko@...> 2003/11/03

On Mon, Nov 03, 2003 at 11:40:48PM +0900, Austin Ziegler wrote:

[#84700] Re: CGI uses file size to distinguish between regular values and files — Austin Ziegler <austin@...> 2003/11/03

On Tue, 4 Nov 2003 04:37:19 +0900, Dmitry Borodaenko wrote:

[#84701] Re: CGI uses file size to distinguish between regular values and files — Simon Kitching <simon@...> 2003/11/03

On Tue, 2003-11-04 at 10:29, Austin Ziegler wrote:

[#84703] Re: CGI uses file size to distinguish between regular values and files — Austin Ziegler <austin@...> 2003/11/03

On Tue, 4 Nov 2003 06:51:43 +0900, Simon Kitching wrote:

[#84708] Re: CGI uses file size to distinguish between regular values and files — matz@... (Yukihiro Matsumoto) 2003/11/04

Hi,

[#84735] Managing metadata about attribute types — Simon Kitching <simon@...>

Hi,

52 messages 2003/11/05
[#84740] Re: Managing metadata about attribute types — Austin Ziegler <austin@...> 2003/11/05

On Wed, 5 Nov 2003 09:38:16 +0900, Simon Kitching wrote:

[#84741] Re: Managing metadata about attribute types — Simon Kitching <simon@...> 2003/11/05

On Wed, 2003-11-05 at 17:09, Austin Ziegler wrote:

[#84762] Re: Managing metadata about attribute types — Simon Kitching <simon@...> 2003/11/06

What a vigorous discussion I seem to have triggered :-)

[#84770] Re: Managing metadata about attribute types — dblack@... 2003/11/06

Hi --

[#84780] Re: Managing metadata about attribute types — Ryan Pavlik <rpav@...> 2003/11/06

On Thu, 6 Nov 2003 12:45:39 +0900

[#84858] Re: Managing metadata about attribute types — "John W. Long" <ng@...> 2003/11/08

Ryan,

[#84847] Long-running daemon acquiring giant memory footprint — Jason DiCioccio <jd@...>

I have written a long-running daemon in ruby to handle dynamic DNS updates.

16 messages 2003/11/07

[#84900] Antwort: Re: Power of Interpreted Languages — Robert.Koepferl@...

25 messages 2003/11/10
[#84914] Re: Antwort: Re: Power of Interpreted Languages — Aredridel <aredridel@...> 2003/11/10

> But, would you implement a game with ruby?

[#84917] Re: Antwort: Re: Power of Interpreted Languages — Gregory Millam <walker@...> 2003/11/10

Received: Tue, 11 Nov 2003 01:21:15 +0900

[#84920] Re: Antwort: Re: Power of Interpreted Languages — "Sean O'Dell" <sean@...> 2003/11/10

On Monday 10 November 2003 09:28 am, Gregory Millam wrote:

[#84921] Ruby/Tk Some Basic Questions — "Zach Dennis" <zdennis@...> 2003/11/10

Hi,

[#84930] Re: Ruby/Tk Some Basic Questions — Hidetoshi NAGAI <nagai@...> 2003/11/11

Hi,

[#85097] substring: to the end of the string — KONTRA Gergely <kgergely@...>

Hi!

19 messages 2003/11/14

[#85104] Microsoft's C/C++ compiler freely available — "Nathaniel Talbott" <nathaniel@...>

Thought this might be interesting to those stuck on win32...

23 messages 2003/11/15
[#85106] Re: Microsoft's C/C++ compiler freely available — Daniel Carrera <dcarrera@...> 2003/11/15

Question:

[#85178] overload method in module_eval, how? — Simon Strandgaard <qj5nd7l02@...>

I want to overload a testcase method with debug-enabling wrapper.

13 messages 2003/11/17

[#85218] Access ftp-server through proxy — Kristian Sensen <ks@...>

14 messages 2003/11/17

[#85330] Yet Another Rite Thought: method combination — gabriele renzi <surrender_it@...1.vip.ukl.yahoo.com>

I just looked at matz' slides and I don't have a clear understanding

28 messages 2003/11/17

[#85421] Again, Rite explanation needed (keyword args and new hash syntax) — gabriele renzi <surrender_it@...1.vip.ukl.yahoo.com>

Hi gurus and nubys,

13 messages 2003/11/18

[#85488] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) )<Pine.LNX.4.44.0311171402340.1133-100000@ool-435 5dfae.dyn.optonline.net> — "Weirich, James" <James.Weirich@...>

David Black (dblack@wobblini.net) wrote:

121 messages 2003/11/18
[#85492] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) )<Pine.LNX.4.44.0311171402340.1133-100000@ool-435 5dfae.dyn.optonline.net> — Simon Kitching <simon@...> 2003/11/18

On Wed, 2003-11-19 at 10:30, Weirich, James wrote:

[#85499] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) )<Pine.LNX.4.44.0311171402340.1133-100000@ool-435 5dfae.dyn.optonline.net> — "Sean O'Dell" <sean@...> 2003/11/18

On Tuesday 18 November 2003 02:06 pm, Simon Kitching wrote:

[#85523] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — Austin Ziegler <austin@...> 2003/11/19

On Wed, 19 Nov 2003 08:08:25 +0900, Sean O'Dell wrote:

[#85582] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Sean O'Dell" <sean@...> 2003/11/19

On Tuesday 18 November 2003 10:30 pm, Austin Ziegler wrote:

[#85609] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — Austin Ziegler <austin@...> 2003/11/19

On Thu, 20 Nov 2003 02:43:31 +0900, Sean O'Dell wrote:

[#85619] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Sean O'Dell" <sean@...> 2003/11/19

On Wednesday 19 November 2003 12:04 pm, Austin Ziegler wrote:

[#85656] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — Austin Ziegler <austin@...> 2003/11/19

On Thu, 20 Nov 2003 05:48:37 +0900, Sean O'Dell wrote:

[#85664] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Sean O'Dell" <sean@...> 2003/11/19

On Wednesday 19 November 2003 03:00 pm, Austin Ziegler wrote:

[#85684] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — Austin Ziegler <austin@...> 2003/11/20

On Thu, 20 Nov 2003 08:19:08 +0900, Sean O'Dell wrote:

[#85688] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — Simon Kitching <simon@...> 2003/11/20

On Thu, 2003-11-20 at 14:06, Austin Ziegler wrote:

[#85734] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — Thien Vuong <tvuong@...> 2003/11/20

[#85748] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — Austin Ziegler <austin@...> 2003/11/20

On Thu, 20 Nov 2003 14:52:17 +0900, Thien Vuong wrote:

[#85854] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Sean O'Dell" <sean@...> 2003/11/20

On Wednesday 19 November 2003 10:47 pm, Austin Ziegler wrote:

[#85858] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — dblack@... 2003/11/20

Hi --

[#85895] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — matz@... (Yukihiro Matsumoto) 2003/11/20

Hi,

[#85906] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — Chad Fowler <chad@...> 2003/11/20

On Fri, 21 Nov 2003, Yukihiro Matsumoto wrote:

[#85938] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — matz@... (Yukihiro Matsumoto) 2003/11/21

Hi,

[#85940] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Sean O'Dell" <sean@...> 2003/11/21

On Thursday 20 November 2003 06:47 pm, Yukihiro Matsumoto wrote:

[#85944] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — matz@... (Yukihiro Matsumoto) 2003/11/21

Hi,

[#85951] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Sean O'Dell" <sean@...> 2003/11/21

On Thursday 20 November 2003 07:58 pm, Yukihiro Matsumoto wrote:

[#85970] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — matz@... (Yukihiro Matsumoto) 2003/11/21

Hi,

[#85997] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Sean O'Dell" <sean@...> 2003/11/21

On Friday 21 November 2003 02:20 am, Yukihiro Matsumoto wrote:

[#86046] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — matz@... (Yukihiro Matsumoto) 2003/11/21

Hi,

[#86071] Method wrapper question (was "stereotyping (was ...)) — Gavin Sinclair <gsinclair@...> 2003/11/22

On Saturday, November 22, 2003, 10:53:39 AM, Yukihiro wrote:

[#86085] Re: Method wrapper question (was "stereotyping (was ...)) — ts <decoux@...> 2003/11/22

>>>>> "G" == Gavin Sinclair <gsinclair@soyabean.com.au> writes:

[#86090] Re: Method wrapper question (was "stereotyping (was ...)) — Gavin Sinclair <gsinclair@...> 2003/11/22

On Saturday, November 22, 2003, 11:47:50 PM, ts wrote:

[#86091] Re: Method wrapper question (was "stereotyping (was ...)) — ts <decoux@...> 2003/11/22

>>>>> "G" == Gavin Sinclair <gsinclair@soyabean.com.au> writes:

[#86092] Re: Method wrapper question (was "stereotyping (was ...)) — "Christoph" <chr_mail@...> 2003/11/22

ts wrote:

[#86093] Re: Method wrapper question (was "stereotyping (was ...)) — ts <decoux@...> 2003/11/22

>>>>> "C" == Christoph <chr_mail@gmx.net> writes:

[#86095] Re: Method wrapper question (was "stereotyping (was ...)) — "Christoph" <chr_mail@...> 2003/11/22

ts wrote:

[#85908] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Sean O'Dell" <sean@...> 2003/11/20

On Thursday 20 November 2003 02:40 pm, Chad Fowler wrote:

[#85590] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "David A. Black" <dblack@...> 2003/11/19

Hi --

[#85597] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Sean O'Dell" <sean@...> 2003/11/19

On Wednesday 19 November 2003 10:33 am, David A. Black wrote:

[#85599] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — matz@... (Yukihiro Matsumoto) 2003/11/19

Hi,

[#85604] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Sean O'Dell" <sean@...> 2003/11/19

On Wednesday 19 November 2003 11:14 am, Yukihiro Matsumoto wrote:

[#85503] String startswith/endswith in Ruby? — Dave Benjamin <ramen@...>

Hi all,

12 messages 2003/11/18

[#85518] Multi-dimensioned sparse array ? — Charles Hixson <charleshixsn@...>

Does anyone have an implementation of a multi-dimensioned sparse array?

14 messages 2003/11/19
[#85527] Re: Multi-dimensioned sparse array ? — Austin Ziegler <austin@...> 2003/11/19

On Wed, 19 Nov 2003 14:21:19 +0900, Charles Hixson wrote:

[#85526] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) )<Pine.LNX.4.44.0311171402340.1133-100000@ool-4355dfae.dyn.optonline.net> <Pine.LNX.4.44.0311181524130.2236-100000@ool-4355dfae.dyn.optonline.net> — Thien Vuong <tvuong@...>

54 messages 2003/11/19
[#85544] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) — dblack@... 2003/11/19

[Apologies to anyone whose threading is getting messed up by the

[#85583] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) — "Sean O'Dell" <sean@...> 2003/11/19

On Wednesday 19 November 2003 03:55 am, dblack@wobblini.net wrote:

[#85588] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) — "David A. Black" <dblack@...> 2003/11/19

Hi --

[#85595] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) — "Sean O'Dell" <sean@...> 2003/11/19

On Wednesday 19 November 2003 10:27 am, David A. Black wrote:

[#85598] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) — matz@... (Yukihiro Matsumoto) 2003/11/19

Hi,

[#85601] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) — "Sean O'Dell" <sean@...> 2003/11/19

On Wednesday 19 November 2003 11:05 am, Yukihiro Matsumoto wrote:

[#85605] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) — Chad Fowler <chad@...> 2003/11/19

On Thu, 20 Nov 2003, Sean O'Dell wrote:

[#85612] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) — "Sean O'Dell" <sean@...> 2003/11/19

On Wednesday 19 November 2003 11:46 am, Chad Fowler wrote:

[#85617] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) — Maik Schmidt <contact@...> 2003/11/19

Sean O'Dell wrote:

[#85629] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) — "Sean O'Dell" <sean@...> 2003/11/19

On Wednesday 19 November 2003 12:42 pm, Maik Schmidt wrote:

[#85543] Re: $& write-protected? — ts <decoux@...>

>>>>> "S" == Simon Strandgaard <none> writes:

14 messages 2003/11/19

[#85547] x.f! RCR — Greg McIntyre <greg@...>

It bugs me that some methods have a ! on the end and some don't. It

20 messages 2003/11/19

[#85698] Re: "stereotyping" — Michael Campbell <michael_s_campbell@...>

Sean O'Dell wrote:

19 messages 2003/11/20
[#85701] Re: "stereotyping" — "Sean O'Dell" <sean@...> 2003/11/20

On Wednesday 19 November 2003 07:01 pm, Michael Campbell wrote:

[#85704] Re: "stereotyping" — Michael campbell <michael_s_campbell@...> 2003/11/20

Sean O'Dell wrote:

[#85718] Re: "stereotyping" — Clifford Heath <cjh_nospam@...> 2003/11/20

Michael campbell wrote:

[#85757] Re: "stereotyping" — Julian Fitzell <julian@...4.com> 2003/11/20

Clifford Heath wrote:

[#85913] Re: "stereotyping" — Clifford Heath <cjh_nospam@...> 2003/11/20

Julian Fitzell wrote:

[#85713] Re: [ANN] win32-clipboard 0.1.0 — Daniel Berger <djberg96@...>

Oops - forgot the link:

14 messages 2003/11/20

[#85766] learning the "Ruby way" — mark.wirdnam@... (Mark Wirdnam)

**Hobby-programmer alarm**

24 messages 2003/11/20
[#85863] Re: learning the "Ruby way" — Chad Fowler <chad@...> 2003/11/20

On Thu, 20 Nov 2003, Mark Wirdnam wrote:

[#85821] iterator 0.1 — Simon Strandgaard <qj5nd7l02@...>

homepage:

22 messages 2003/11/20

[#85870] Re: "stereotyping" — Michael Campbell <michael_s_campbell@...>

Sean O'Dell wrote:

17 messages 2003/11/20

[#85886] Partial Euphoric Type Checking — "T. Onoma" <transami@...>

Greetings all Type Checkers!

16 messages 2003/11/20
[#85948] Re: Partial Euphoric Type Checking (now Ducked!) — "T. Onoma" <transami@...> 2003/11/21

quack! quack! I added duck typing capability to my euphoric type checking

[#85952] Re: Partial Euphoric Type Checking (Super Duck!?) — "T. Onoma" <transami@...> 2003/11/21

Now some for some rally crazy cross thought. First a complete interface

[#85957] Re: Partial Euphoric Type Checking (Super Duck!?) — "T. Onoma" <transami@...> 2003/11/21

for some cross rally some thought crazy. ( read: i need a type system for my

[#85981] Re: Partial Euphoric Type Checking (Super Duck!?) — Chris Morris <chrismo@...> 2003/11/21

> you see we have a problem here. it doesn't matter what methods are

[#85987] Re: Partial Euphoric Type Checking (Super Duck!?) — Peter <Peter.Vanbroekhoven@...> 2003/11/21

> > you see we have a problem here. it doesn't matter what methods are

[#85888] New Type Checking System Idea — "Sean O'Dell" <sean@...>

Taking comments into consideration, a totally new approach strikes me

22 messages 2003/11/20

[#85947] RubyConf 2003 Presentations Posted — Ryan Davis <ryand-ruby@...>

In absolute record time (5 days compared to 3 months), rubyconf 2003

11 messages 2003/11/21

[#86007] Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) — "Weirich, James" <James.Weirich@...>

> This is a wonderful idea. Let me restate it to make sure I

13 messages 2003/11/21

[#86127] Ruby classes for MP3 de-/encoding — Dennis Oelkers <dennis@...>

Hello folks,

12 messages 2003/11/22

[#86183] "wrong argument type nil (expected String)" from Dir.chdir — Tim Kynerd <vxbrw58s02@...>

I'm running Ruby 1.6.8.

13 messages 2003/11/23

[#86202] Message "Insecure world writable dir ..." — Harry Ohlsen <harryo@...>

When File.popen() is passed an executable whose path contains a world writable directory, it produces a warning message.

19 messages 2003/11/24

[#86215] Library path relative to current .rb file — zoranlazarevic@... (Zoran Lazarevic)

One of the most irritating (missing) features of Ruby is inability to

12 messages 2003/11/24

[#86265] raise unless RUBY_VERSION[%r/^\s*\d+\.\d+/o].to_f >= 1.8 — "Ara.T.Howard" <ahoward@...>

25 messages 2003/11/24

[#86344] Re: Controlled block variables — "T. Onoma" <transami@...>

On Wednesday 26 November 2003 09:10 am, Guy Decoux wrote:

42 messages 2003/11/26
[#86369] Re: Controlled block variables — Dan Doel <djd15@...> 2003/11/26

I actually have wondered in the past why there isn't an #eval that takes

[#86390] Re: Controlled block variables — "T. Onoma" <transami@...> 2003/11/26

On Wednesday 26 November 2003 03:57 pm, Dan Doel wrote:

[#86346] Re: Controlled block variables — ts <decoux@...> 2003/11/26

>>>>> "T" == T Onoma <transami@runbox.com> writes:

[#86347] Re: Controlled block variables — "T. Onoma" <transami@...> 2003/11/26

On Wednesday 26 November 2003 09:56 am, ts wrote:

[#86360] turning a string into array of ASCII bytes — David Garamond <lists@...6.isreserved.com>

What is the shortest, most straightforward way (without temporary

17 messages 2003/11/26

[#86391] Method wrapping — Hal Fulton <hal9000@...>

I've come late into the thread on this, and I haven't read all

62 messages 2003/11/26
[#86445] Re: Method wrapping — matz@... (Yukihiro Matsumoto) 2003/11/26

Hi,

[#86457] Re: Method wrapping — Hal Fulton <hal9000@...> 2003/11/27

Yukihiro Matsumoto wrote:

[#86462] Re: Method wrapping — matz@... (Yukihiro Matsumoto) 2003/11/27

Hi,

[#86470] Re: Method wrapping — "T. Onoma" <transami@...> 2003/11/27

On Thursday 27 November 2003 07:07 am, Yukihiro Matsumoto wrote:

[#86493] Re: Method wrapping — "Christoph" <chr_mail@...> 2003/11/27

Yukihiro Matsumoto wrote:

[#86498] Re: Method wrapping — Peter <Peter.Vanbroekhoven@...> 2003/11/27

> I have asked the same this question as well and I really wish

[#86508] Re: Method wrapping — "Christoph" <chr_mail@...> 2003/11/27

From: Peter wrote:

[#86512] Re: Method wrapping — Peter <Peter.Vanbroekhoven@...> 2003/11/27

> This sound all good and well however this does not change the

[#86550] pre/post question/idea — "David A. Black" <dblack@...>

Hello --

21 messages 2003/11/28

[#86646] Underpinnings of Method Wrapping — "T. Onoma" <transami@...>

Its important that we clearly seperate the issue of "surface" syntax from the

54 messages 2003/11/28
[#86657] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/11/28

> Thoughts?

[#86692] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/11/29

On Saturday 29 November 2003 12:44 am, Peter wrote:

[#86707] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/11/29

> I originally had a small paragraph touching on this, but I took it out b/c I

[#86726] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/11/29

On Saturday 29 November 2003 04:26 pm, Peter wrote:

[#86734] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/11/30

> The join-points are the only thing required to facilitate all of this. So I

[#86747] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/11/30

On Sunday 30 November 2003 01:01 am, Peter wrote:

[#86794] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/11/30

> How would they know? ;-)

[#86812] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/11/30

On Sunday 30 November 2003 03:57 pm, Peter wrote:

[#86824] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/11/30

> > I like the proper separation, but why pre and post for extrinsic and def

[#86831] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/11/30

On Sunday 30 November 2003 09:39 pm, Peter wrote:

[#86835] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/11/30

> You're absolutely right. Hmm...Granted this is acting in accordance to an

[#86873] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/12/01

On Monday 01 December 2003 12:25 am, Peter wrote:

[#86911] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/12/01

> I was thinking about the terms. To really distinguish these two types of wraps

[#86943] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/12/02

On Monday 01 December 2003 06:58 pm, Peter wrote:

[#87024] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/12/02

> OK as in so-so, or OK as in yes? If just so-so we'll find something better. I

[#87034] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/12/02

Peter:

[#87068] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/12/03

[snip]

[#87242] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/12/04

On Wednesday 03 December 2003 03:21 am, Peter wrote:

[#87478] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/12/07

Here is an intereseting problem that I'm currently facing and which is related

[#87481] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/12/07

> As always, I may be over looking the obvious. But if anyone has a current

[#87491] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/12/08

On Sunday 07 December 2003 08:02 pm, Peter wrote:

[#87575] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/12/09

Hi Tom,

[#87609] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/12/09

On Tuesday 09 December 2003 01:05 am, Peter wrote:

[#87686] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/12/10

> QUICK SIDE NOTE: might be nice to have something for all those dang ends. How

[#87688] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/12/10

On Wednesday 10 December 2003 05:16 am, Peter wrote:

[#87713] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/12/10

> Mine too! But I was joking :) Well, half way. It would be nice to have a good

[#87731] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/12/10

On Wednesday 10 December 2003 05:55 pm, Peter wrote:

[#87747] Re: Underpinnings of Method Wrapping — Peter <Peter.Vanbroekhoven@...> 2003/12/11

> Well, I thought of using the underscores to allow one to indent as needed to

[#87761] Re: Underpinnings of Method Wrapping — "T. Onoma" <transami@...> 2003/12/11

On Thursday 11 December 2003 04:04 am, Peter wrote:

[#86655] anything disappearing from Ruby for 2.0? — "David A. Black" <dblack@...>

Hi --

62 messages 2003/11/28
[#86710] Re: anything disappearing from Ruby for 2.0? — matz@... (Yukihiro Matsumoto) 2003/11/29

Hi,

[#86737] Re: anything disappearing from Ruby for 2.0? — Michael Campbell <michael_s_campbell@...> 2003/11/30

Yukihiro Matsumoto wrote:

[#86779] Re: anything disappearing from Ruby for 2.0? — matz@... (Yukihiro Matsumoto) 2003/11/30

Hi,

[#86661] rdoc included in standard distribution? — Chad Fowler <chad@...>

I've seen various plans for this dating back more than a year. Is it

16 messages 2003/11/29

[#86669] Class-level readers and writers — Carl Youngblood <carl@...>

I've been working with the class attribute shortcuts that Hal introduced

36 messages 2003/11/29
[#86675] Re: Class-level readers and writers — "David A. Black" <dblack@...> 2003/11/29

Hi --

[#86722] Re: Class-level readers and writers — Carl Youngblood <carl@...> 2003/11/29

> (Just as a footnote, you can also use "normal" accessor shortcuts at

[#86723] Re: Class-level readers and writers — "David A. Black" <dblack@...> 2003/11/29

Hi --

[#86728] Re: Class-level readers and writers — "Christoph" <chr_mail@...> 2003/11/29

David A. Black wrote:

[#86752] Re: Class-level readers and writers — "T. Onoma" <transami@...> 2003/11/30

On Saturday 29 November 2003 10:59 pm, Christoph wrote:

[#86782] Re: Class-level readers and writers — "David A. Black" <dblack@...> 2003/11/30

Hello --

[#86801] Re: Class-level readers and writers — "T. Onoma" <transami@...> 2003/11/30

On Sunday 30 November 2003 12:11 pm, David A. Black wrote:

[#86807] Re: Class-level readers and writers — "David A. Black" <dblack@...> 2003/11/30

Hi --

[#86808] Re: Class-level readers and writers — ts <decoux@...> 2003/11/30

>>>>> "D" == David A Black <dblack@wobblini.net> writes:

[#86815] Re: Class-level readers and writers — "David A. Black" <dblack@...> 2003/11/30

Hi --

[#86673] New to ruby--trouble with initializing arrays — vanjac12@... (Van Jacques)

I am writing a practice program; the Game of Life. Naturally I am having troubles.

11 messages 2003/11/29

[#86784] Re: anything disappearing from Ruby for 2.0? — "Gavri Savio Fernandez" <Gavri_F@...>

> From: Chris Uppal [mailto:chris.uppal@metagnostic.REMOVE-THIS.org]

21 messages 2003/11/30
[#86800] Re: anything disappearing from Ruby for 2.0? — "Chris Uppal" <chris.uppal@...> 2003/11/30

Gavri Savio Fernandez wrote:

Re: Managing metadata about attribute types

From: Austin Ziegler <austin@...>
Date: 2003-11-06 06:55:16 UTC
List: ruby-talk #84782
Given:

  class Weight
    def initialize(units, amount)
      @units = units
      @amount = amount
    end
  end
  
  class StockItem
    attr_accessor :weight
    attr_accessor :name
    attr_accessor :cost # Float
  end

  <stock-item name="spanner" cost="12.50" weight="0.75 kg"/> 

> Now as a programmer dealing with the above problem, I want to be
> able to tell xmldigester than when it encounters the <stock-item>
> tag it is to create a StockItem instance, then create a Weight
> instance and initialise it appropriately from a string, then
> assign that initialised object to the StockItem's weight
> attribute.

Fair enough. But what is a Weight? You say that the StockItem
expects that the object stored in @weight will behave as a Weight.
Do you enforce it, or just let it blow up later if someone disobeys
the contract?

> The Java Digester version does this automatically, by determining
> that the StockItem has a "weight" attribute of type "Weight", and
> that there is a "weight" xml attribute (with a string value). It
> then invokes a table of data-conversion methods to convert the
> string to the target type; built-in types are already in the
> table, and user-specific types (like Weight) can be added as
> needed.

Um. You've sort of given the right answer here, I think, for making
this generic. There's a conversion table in the *digester*. So what
you do is you make your conversion table a bit more rich than it is
in Java.

Someone -- Rich Kilmer? -- suggested that a #from_string is
appropriate. Well, why not?

> You're suggesting that in the file which contains the
> "xml-parsing" code, I re-open the existing StockItem class, and
> use some approach like the attr_accessor modification to "wrap"
> the existing weight= code, resulting in something that effectively
> works like:

> class StockItem # reopen existing class
>   alias :__weight= :weight=
>   def weight=(param)
>     weight2 = param.to_weight
>     __weight = weight2
>   end
> end

That's certainly a possibility; but not the one that I'd do, because
it requires creating a "to_weight" on both the original class and
String. Rather, I might suggest doing:

  class Weight
    def self.from_String(weight_string)
      # code necessary to parse the string into units and amount,
      # which are then passed into Weight.new
    end
  end

  class StockItem
    alias_method :__set_weight, :weight=

    def weight=(param)
      w = Weight.__send__("from_#{param.class}".intern, param)
      self.__set_weight(w)
    rescue
      self.__set_weight(param)
    end
  end

You've now got everything you need to be able to handle such a
string very easily. You would still be able to do both:

  stock_item.weight = "0.75 kg"
  stock_item.weight = Weight.new("kg", 0.75)

<snip>

> Hmm .. libraries don't ever call "freeze" on their classes, do they?

Rarely.

>> Therefore, by simply *assuming* that you're getting an object
>> that can act like a float, you've introduced a huge error. Should
>> I have entered 10.0 as the price, or divided by 8.0? Either of
>> those would have guaranteed me a Float context in which type
>> coercion will be used to ensure a Float result. If, however, we
>> had converted cost to a float explicitly during assignment, this
>> wouldn't even be an issue. Without talking about Strings, we've
>> already run into a problem with StockItem's assumption of
>> Float-ness.
> Yes, but as you noted yourself, you've violated the contract on
> the class. I haven't bothered to clutter my example with
> "defensive programming". I grant that you may be right that the
> cost method should call to_f on its parameter, so that Integers
> can also be passed. And maybe every method expecting a String
> parameter should call to_s on its parameter?

If you're expecting to deal explicitly with the string result, yes.
But if you're going to operate on the object and then deal with the
string, no. The violation of the contract is a small one -- and, I
argue, a common one. I've been bitten more than once by the lack of
a .0 ...

> Hmm .. by the way, aren't you arguing against duck-typing here? If
> someone deliberately creates a type which is *like* a Float, then
> this code would force it to be a real float (assuming that to_f
> returns a real Float object).

No, not really. There's a BigDecimal class that works a bit like the
Bignum class.

  (3**3**3).class       # => Bignum
  (3**3**3).to_i.class  # => Bignum

Just because #to_i/#to_f is called doesn't mean that an actual
Integer or Float will be returned; but if it *isn't* returned, then
the class is more or less guaranteeing that it will behave exactly
as it should.

>> In Java, it doesn't matter if you pass an int to setCost because
>> the compiler has already marked that as a float -- and it will do
>> an implicit conversion from int to float. (IIRC, that *won't*
>> work in Ada, which disallows implicit conversions.)
> Yes, but for the Java Digester library, implicit conversions are
> irrelevant. It doesn't try to pass a String to the setCost method
> and hope the compiler will insert the correct conversion code (it
> won't anyway). Instead, as described earlier, a table of "type
> conversion operations" is used to map from the input String to the
> target type, allowing any target type (such as Weight) to be
> correctly dealt with.

Fair enough, as I said. But don't you, the user, have to create such
conversions before running the digester (excepting well-known
"common" types)?

>> The author of the StockItem class *should* have considered that
>> any numeric value could have been assigned -- and that integer
>> math wouldn't be a good idea.
> As above, I agree that for safety cost= could try to ensure the
> parameter passed to it complies with the contract. I still don't
> believe that it is mandatory for methods to enforce their
> contracts, though...user beware should be the motto, for
> performance and simplicity.

I never said it was mandatory. I have a lot of methods that operate
on objects assuming that they are of the correct type (per duck-
typing). But on those few methods where I must ensure behaviour, I
will do such enforcement. I tend to do failure enforcement (that is,
I fail when I encounter something that doesn't match), but I enforce
compliance regardless.

>> Actually, it doesn't change the API at all. It enforces the
>> documented constraints. It's the difference between early and
>> late detection.
> I didn't initially realise that if a real Float was passed to this
> method, then calling to_f on it is ok; it just returns the same
> object.

Right.

>> I donno. That still doesn't feel very "Ruby" to me, and I personally
>> find both StrongTyping and MetaTag clunky, trying to solve things that
>> I'm not sure are best solved that way.
> Yes, I'm still worried that there is some obvious rubyish way to handle
> this. Maybe when I actually issue 0.1 of xmldigester (with whatever API),
> then start trying to build some apps with it some epiphany will happen.

Perhaps. It's been an interesting discussion, and I think I've
created some useful metacode out of the discussion, for sure.

-austin
--
austin ziegler    * austin@halostatue.ca * Toronto, ON, Canada
software designer * pragmatic programmer * 2003.11.06
                                         * 01.55.07




In This Thread