[#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:

[#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:

[#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:

[#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
[#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:

[#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:

[#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: Underpinnings of Method Wrapping

From: "T. Onoma" <transami@...>
Date: 2003-11-30 02:53:25 UTC
List: ruby-talk #86747
On Sunday 30 November 2003 01:01 am, Peter wrote:
> Oh, I agree completely, Ruby will be able to specify the most general
> pointcuts possible since you can specify it in code. Any code. Wildcards
> is limiting. Though maybe I should mention that the AspectJ guys said
> nobody ever missed anything more general then wildcards in AspectJ.

How would they know? ;-)

> I agree we should support both scenarios. But I don't agree yet on
> discarding wrappers by default. Aspects are supposed to model orhtogonal
> aspects of an application and are supposed to be uncoupled. Which means
> wrapper and wrappee ought to be uncoupled. But maybe that's one of those
> cool ideas that are infeasible in practice. And the use of method
> combination may not be limited to AOP...

I'm had some varying thoughts on this. But I think I've come to a good 
solution. First let me point out that, although unmentioned in my RCR, I'm 
all for pre and post, and actually, I'm now in favor of dblack's suggestion 
of simply using pre and post as keywords [yes, db, bygones &c.] b/c they are 
ONLY for "meta-tasks" and can't get invovled in the underlying exectution; so 
in this manner they are quite distinct from def. In other words, defs "get in 
line" while pres and posts "hang about", if you take my meaning. In light of 
this, it seems appropriate for redef to flush the wrap stack, but all pre's 
and post's still remain. So we have proper seperation of these concerns: pre 
and post for extrinsic, def wrap for intrinsic.

> > This reminds me of an RCR I put in once. I suggested that every object
> > have a keyword reference back to its "brith parent". So if I cerated
> > object foo = Foo.new from within object bar, foo#parent would reference
> > bar. In this case it seems their might be good reason for each method to
> > have a keyword method (Method#cflow) referenceing the method object it
> > was called from. In that way I think we could offer cflow support.
>
> Yes, except that Method#cflow will only allow looking back one step in the
> calling stack. In AspectJ, cflow looks back along the complete calling
> stack, which is quite expensive to do if you'd use a Method#cflow for
> looking at the calling method.

Is it very expensive? ameth.cflow.cflow... hmmm, I guess your right, if your 
looking for a method that could be anywhere up the reference list. Although I 
think in practice the list will only get so long. (And shortcutted for 
recursive calls). But I definitely see your point (though I think 
Method#cflow would still have its uses).

> Actually AspectJ's implementation can be
> done in Ruby using only wraps as follows:
>
>   def foo
>     # ...
>   end
>
>   def foo
>     oldInFooCFlow = $inFooCFlow
>     $inFooCFlow = true
>     super
>     $inFooCFlow = oldInFooCFlow
>   end
>
>   def bar
>     # ...
>   end
>
>   def bar
>     if $inFooCFlow
>       # advice added to bar in the cflow of foo
>     end
>     super
>     if $inFooCFlow
>       # advice added to bar in the cflow of foo
>     end
>   end
>
> I used your RCR syntax. And forgive me the use of the global var, but that
> least clutters the point. So it is possible foo calls some foo2, which
> calls some foo3, ... until eventually bar is called, and it will work
> without the need for looking all the way back up the call stack.

I noticed right away that you were using my syntax :-) I've heard so many 
people say how ridiculous such a syntax is (funny that they keep mentioning 
it), but right now I can tell you it feels completely natural --seeing the 
defs come in order parallels their stacking order. Anyway...

> As for the use of the global variable, in AspectJ this is easily done.
> Every aspect in AspectJ is a singleton, with its own data members, and all
> the advice from that aspect (read: wraps) can access these data members.
> As such it effectively provides global, yet private variables.

Definitely, and I'm certain we can achieve the same thing with module's and 
their instance variables. Define a module containing aspect methods and the 
module variables they need and apply as desired. Hell, we can even wrap the 
aspect methods!

> > I think a lot of this is pointing to the simple fact that Ruby needs to
> > make its Methods more capable and introspective, much in the same way
> > that classes/objects are. For instance, cflow, and my suggestion for
> > built-in keywords for args, keys and block, plus a way to see what
> > class/module the method is in (from the inside out, we can already do
> > from the outside in), and so on. Having such capabilities helps exploit
> > the full potential of AOP.
>
> Agreed.

Have to add to RCR.

> > I cann see it to some degree: off the top of my head: If the method #kill
> > was called from method #hunt, then you might want to trigger the method
> > #excitement, but if the same method #kill was called from
> > #protect_thyself, then it should instead trigger #relief. Very abstract,
> > but I think it paints the proper idea.
>
> I understand. It offers a way to find out about the callers of a method -
> or more abstract: the context of a call. Though the abstract idea sounds
> mighty interesting, I'm not so crazy about using method names to find out
> about the context. But I don't know about a better way. Just weird that
> you have to name your method in a particular way to get the right behavior
> from a method you're calling.

Ah...but this is what the indicators are for.

  def eat:eating
  end

  def gorge:eating
  end

  def stuffyourface:eating
  end

We can aspect all the eating methods. ( no, i'm not hungry :-)

> Peter
>
> > P.S. So what did you think of the singleton foundation?
>
> Are you referring to the line "wraps act very much like singletons" from
> your RCR? In that case, I think I missed the point. But that's probably
> because it was the explanation to something that's so obvious to me :-)

I really need to go back and specify this. It was still a little fuzzy in my 
mind when I started the RCR, but now it's quite clear --perfectly clear. So 
much so that I pulled up the Ruby source and hacked it in. Changed about 6 
lines of code and got it working, albiet it still needs TLC to fix-up and add 
all the bells and whistles, but the proof is in pudding, and I got pudding. 

But I'm getting ahead of myself. I need to explain the point. Lets take this 
example:

  class Classic
    def x
      print "X"
    end
  end
  c = Classic.new
  def c.x
    print "("
    super
    print ")"
  end
  c.x; puts  # => (X)

We have created an object c, that has a method x, then we defined a singleton 
also called x. The singleton effectively wraps the original method. This is 
explained well in the Pickaxe. Check out page 246, Fig. 19.3. The diagram is 
describe a couple pages back under Object-Specific Class; or you can surf 
here:

  http://www.rubycentral.com/book/classes.html

So then what happens if we try to add another singleton of the same name?

  def c.x
    print "["
    super
    print "]"
  end
  c.x; puts  # => [X]

Why didn't it wrap again? Let me quote the end of that Pickaxe section:

  "Ruby performs a slight optimization with these singleton classes. If an 
object's klass reference already points to a singleton class, a new one will 
not be created."

Obviously when Matz created this, it didn't occur to him that unlimted 
wrapping may be useful. He just saw that it was wasted overhead to have a 
separate singleton class for each and every singleton method. But his 
optimization had the above side effect --you can only define one layer. So I 
went back and changed the optimization such that when a method of the same 
name already exists in the singleton class, a new singleton class (metaclass 
in the code) is created. So my version of Ruby instead does the following:

  def c.x
    print "["
    super
    print "]"
  end
  c.x; puts  # => [(X)]

That's all there was to it, and it serves as the perfect starting point/basis 
for building all the rest of the AOP features.

-t0


In This Thread