[#360221] Its a bird, its a plane, its.. um, an Attribute based System? — thunk <gmkoller@...>

15 messages 2010/04/01

[#360275] combined ranges... — Roger Pack <rogerpack2005@...>

Anybody know if there's an easy way to accomplish the equivalent of

26 messages 2010/04/02
[#360276] Re: combined ranges... — David Springer <dnspringer@...> 2010/04/02

Will this work:

[#360283] Re: combined ranges... — Roger Pack <rogerpack2005@...> 2010/04/02

David Springer wrote:

[#360285] Re: combined ranges... — Rick DeNatale <rick.denatale@...> 2010/04/02

On Fri, Apr 2, 2010 at 6:33 PM, Roger Pack <rogerpack2005@gmail.com> wrote:

[#360331] ThunkGen released! — Andrea Dallera <andrea@...>

Ahem...

98 messages 2010/04/03

[#360366] $SAFE=0 for setuid? — Rick Ashton <expiation@...>

Hi

17 messages 2010/04/04
[#360378] Re: $SAFE=0 for setuid? — Jonathan Nielsen <jonathan@...> 2010/04/04

> From most documentation I see that $SAFE is automatically set to 1 if

[#360381] Re: $SAFE=0 for setuid? — Rick Ashton <expiation@...> 2010/04/04

Jonathan Nielsen wrote:

[#360418] Novice school teacher seeking help in programming — Hilary Bailey <my77elephants@...>

I will like to know how to use programming languages to create a

20 messages 2010/04/05
[#360419] Re: Novice school teacher seeking help in programming — Jes俍 Gabriel y Gal疣 <jgabrielygalan@...> 2010/04/05

On Mon, Apr 5, 2010 at 5:23 PM, Hilary Bailey <my77elephants@gmail.com> wrote:

[#360420] Re: Novice school teacher seeking help in programming — Hilary Bailey <my77elephants@...> 2010/04/05

Jes炭s Gabriel y Gal叩n wrote:

[#360595] modifying a Hash in one process when .each is running in another — Nathan <njmacinnes@...>

I want one process to continually loop through a list of objects (in

11 messages 2010/04/07
[#360597] Re: modifying a Hash in one process when .each is running in another — Brian Candler <b.candler@...> 2010/04/07

Nathan Macinnes wrote:

[#360598] Re: modifying a Hash in one process when .each is running in another — Nathan <njmacinnes@...> 2010/04/07

Thanks for the clarification... My application is network based, and

[#360651] Is it possible, a fully general Enumerable#recursive ? — Intransition <transfire@...>

For the last couple of days I've been trying to write an Enumerable

28 messages 2010/04/07
[#360670] Re: Is it possible, a fully general Enumerable#recursive ? — David Masover <ninja@...> 2010/04/08

On Wednesday 07 April 2010 04:49:15 pm Intransition wrote:

[#360784] Re: Is it possible, a fully general Enumerable#recursive ? — Robert Dober <robert.dober@...> 2010/04/09

On Thu, Apr 8, 2010 at 5:51 AM, David Masover <ninja@slaphack.com> wrote:

[#360790] Re: Is it possible, a fully general Enumerable#recursive ? — Intransition <transfire@...> 2010/04/09

[#360898] Re: Is it possible, a fully general Enumerable#recursive ? — Robert Klemme <shortcutter@...> 2010/04/11

On 04/09/2010 08:53 PM, Intransition wrote:

[#360935] Re: Is it possible, a fully general Enumerable#recursive ? — Robert Dober <robert.dober@...> 2010/04/12

On Sun, Apr 11, 2010 at 10:55 PM, Robert Klemme

[#360945] Re: Is it possible, a fully general Enumerable#recursive ? — Robert Klemme <shortcutter@...> 2010/04/12

2010/4/12 Robert Dober <robert.dober@gmail.com>:

[#360760] The Ruid Concept, with question — thunk <gmkoller@...>

The Ruid Concept

32 messages 2010/04/09

[#360783] Ruby-warrior : Teaching AI concepts with Ruby — Aldric Giacomoni <aldric@...>

I think this project doesn't get enough attention :-)

24 messages 2010/04/09

[#360910] attr_accessor, but for a boolean — Albert Schlef <albertschlef@...>

Let's say I have this code:

13 messages 2010/04/12

[#360981] Method to groom a string to floating point representation — Alex DeCaria <alex.decaria@...>

I have a program that asks for the user to enter a string that

16 messages 2010/04/13
[#360986] Re: Method to groom a string to floating point representation — Josh Cheek <josh.cheek@...> 2010/04/13

On Mon, Apr 12, 2010 at 9:34 PM, Alex DeCaria <alex.decaria@millersville.edu

[#360994] Re: Method to groom a string to floating point representation — Alex DeCaria <alex.decaria@...> 2010/04/13

Josh Cheek wrote:

[#361047] Re: Method to groom a string to floating point representation — Josh Cheek <josh.cheek@...> 2010/04/14

On Tue, Apr 13, 2010 at 6:20 AM, Alex DeCaria <alex.decaria@millersville.ed=

[#361015] How to find multiple matches in a string — Alex DeCaria <alex.decaria@...>

I know how to use regular expressions to find the first match of a

11 messages 2010/04/13

[#361038] I thought spaces didn't matter around operators — Sarah Allen <sarah@...>

I had understood that operators, like minus (-), had special "syntactic

15 messages 2010/04/13

[#361055] Who maintains ruby-talk? — Tony Arcieri <tony.arcieri@...>

Among other things, the ruby-talk MLM is rampant with security

70 messages 2010/04/14
[#361066] Re: Who maintains ruby-talk? — Robert Klemme <shortcutter@...> 2010/04/14

2010/4/14 Tony Arcieri <tony.arcieri@medioh.com>:

[#361079] Re: Who maintains ruby-talk? — Tony Arcieri <tony.arcieri@...> 2010/04/14

On Wed, Apr 14, 2010 at 6:21 AM, Robert Klemme

[#361084] Re: Who maintains ruby-talk? — Josh Cheek <josh.cheek@...> 2010/04/14

On Wed, Apr 14, 2010 at 9:52 AM, Tony Arcieri <tony.arcieri@medioh.com>wrote:

[#361138] Re: Who maintains ruby-talk? — Justin Collins <justincollins@...> 2010/04/14

Tony Arcieri wrote:

[#361155] Re: Who maintains ruby-talk? — Tony Arcieri <tony.arcieri@...> 2010/04/15

On Wed, Apr 14, 2010 at 4:18 PM, Justin Collins <justincollins@ucla.edu>wrote:

[#361159] Re: Who maintains ruby-talk? — Tony Arcieri <tony.arcieri@...> 2010/04/15

On Wed, Apr 14, 2010 at 11:54 PM, Tony Arcieri <tony.arcieri@medioh.com>wrote:

[#361209] Re: Who maintains ruby-talk? — Walton Hoops <walton@...> 2010/04/15

On 4/15/2010 12:00 AM, Tony Arcieri wrote:

[#361141] Is this good OOP structuring? — Derek Cannon <novellterminator@...>

Hello everyone. I'm trying to get a hang of object-oriented programming

14 messages 2010/04/15
[#361157] Re: Is this good OOP structuring? — Robert Klemme <shortcutter@...> 2010/04/15

On 15.04.2010 02:46, Derek Cannon wrote:

[#361242] Re: Is this good OOP structuring? — Robert Dober <robert.dober@...> 2010/04/15

On Thu, Apr 15, 2010 at 8:00 AM, Robert Klemme

[#361254] Re: Is this good OOP structuring? — Derek Cannon <novellterminator@...> 2010/04/16

>class CourseController

[#361279] Writing a parser — Martin Hansen <mail@...>

Hello there,

18 messages 2010/04/16

[#361322] iconv transfer code — Pen Ttt <myocean135@...>

in my computer(ubuntu9.1+ruby1.9):

14 messages 2010/04/17
[#361372] Re: iconv transfer code — Brian Candler <b.candler@...> 2010/04/18

Pen Ttt wrote:

[#361366] Elegant Solution to a Seemingly Simple Problem? — Derek Cannon <novellterminator@...>

Hello everyone. It's me: Derek, again! Sorry for writing a novel here,

12 messages 2010/04/18

[#361396] ruby 1.9+ , floats, and decimal — botp <botpena@...>

> 0.2-0.1

18 messages 2010/04/19
[#361399] Re: ruby 1.9+ , floats, and decimal — Christopher Dicely <cmdicely@...> 2010/04/19

On Sun, Apr 18, 2010 at 8:07 PM, botp <botpena@gmail.com> wrote:

[#362518] Re: ruby 1.9+ , floats, and decimal — Rick DeNatale <rick.denatale@...> 2010/05/11

On Mon, Apr 19, 2010 at 1:24 AM, Christopher Dicely <cmdicely@gmail.com> wrote:

[#361454] DrX, an object inspector — "Mooffie n/a" <mooffie@...>

DrX is an object inspector (and a source-code browser).

32 messages 2010/04/20
[#361470] Re: [ANN] DrX, an object inspector — David Espada <davinciSINSPAM@...> 2010/04/20

El martes 20 de abril, Mooffie n/a escribi坦:

[#361504] Re: DrX, an object inspector — "Mooffie n/a" <mooffie@...> 2010/04/21

David Espada wrote:

[#361459] [RFC] Proposing a Ruby Packaging Standard — Christian Neukirchen <chneukirchen@...>

Hello,

34 messages 2010/04/20
[#361487] Re: [RFC] Proposing a Ruby Packaging Standard — Suraj Kurapati <sunaku@...> 2010/04/20

Hi,

[#361528] Ruby 1.9.1, Threads and "[BUG] The handle is invalid." — John Briggs <aazman.w@...>

Hi!

11 messages 2010/04/21

[#361587] Best way to write this method? — Derek Cannon <novellterminator@...>

Could my code below be more Ruby-esque or simpler (using Ruby methods I

13 messages 2010/04/22
[#361625] Re: Best way to write this method? — Derek Cannon <novellterminator@...> 2010/04/23

If you guys need some better clarification as to what these methods do:

[#361631] Re: Best way to write this method? — Robert Klemme <shortcutter@...> 2010/04/23

2010/4/23 Derek Cannon <novellterminator@gmail.com>:

[#361688] Segmentation fault at raise exception. — O01eg Oleg <o01eg@...>

I get segfault at any Ruby exception with C API:

13 messages 2010/04/24

[#361755] Networking: select() blocks for seconds (> timeout) — Raul Parolari <raulparolari@...>

I am using Ruby (as a prototype version) to communicate with a network

27 messages 2010/04/26
[#361833] Re: Networking: select() blocks for seconds (> timeout) — Caleb Clausen <vikkous@...> 2010/04/27

On 4/25/10, Raul Parolari <raulparolari@gmail.com> wrote:

[#361845] Re: Networking: select() blocks for seconds (> timeout) — Raul Parolari <raulparolari@...> 2010/04/27

Caleb Clausen wrote:

[#361888] Re: Networking: select() blocks for seconds (> timeout) — Caleb Clausen <vikkous@...> 2010/04/28

On 4/27/10, Raul Parolari <raulparolari@gmail.com> wrote:

[#365061] Re: Networking: select() blocks for seconds (> timeout) — Raul Parolari <raulparolari@...> 2010/06/30

I have some final results on the problem described.

[#365070] Re: Networking: select() blocks for seconds (> timeout) — Roger Pack <rogerpack2005@...> 2010/06/30

[#365078] Re: Networking: select() blocks for seconds (> timeout) — Raul Parolari <raulparolari@...> 2010/06/30

Roger Pack wrote:

[#365091] Re: Networking: select() blocks for seconds (> timeout) — Roger Pack <rogerpack2005@...> 2010/06/30

[#361896] Use of STDOUT.flush after puts — Alex DeCaria <alex.decaria@...>

I've seen several examples on this forum where folks have used

22 messages 2010/04/28
[#361897] Re: Use of STDOUT.flush after puts — Dave Baldwin <dave.baldwin@3dlabs.com> 2010/04/28

[#361916] Re: Use of STDOUT.flush after puts — Siep Korteling <s.korteling@...> 2010/04/29

Dave Baldwin wrote:

[#361917] Re: Use of STDOUT.flush after puts — Robert Dober <robert.dober@...> 2010/04/29

On Thu, Apr 29, 2010 at 9:16 AM, Siep Korteling <s.korteling@gmail.com> wrote:

[#361921] Re: Use of STDOUT.flush after puts — hemant <gethemant@...> 2010/04/29

On Thu, Apr 29, 2010 at 1:28 PM, Robert Dober <robert.dober@gmail.com> wrote:

[#361930] Re: Use of STDOUT.flush after puts — Robert Dober <robert.dober@...> 2010/04/29

On Thu, Apr 29, 2010 at 2:31 PM, hemant <gethemant@gmail.com> wrote:

[#361932] Re: Use of STDOUT.flush after puts — hemant <gethemant@...> 2010/04/29

On Thu, Apr 29, 2010 at 10:56 PM, Robert Dober <robert.dober@gmail.com> wro=

[#361936] Re: Use of STDOUT.flush after puts — Robert Dober <robert.dober@...> 2010/04/29

On Thu, Apr 29, 2010 at 8:25 PM, hemant <gethemant@gmail.com> wrote:

[#361962] Return values of modifiers — Michel Demazure <michel@...>

This is logical, but no very useful :

22 messages 2010/04/30
[#361968] Re: Return values of modifiers — Robert Klemme <shortcutter@...> 2010/04/30

2010/4/30 Michel Demazure <michel@demazure.com>:

[#361970] Re: Return values of modifiers — Michel Demazure <michel@...> 2010/04/30

Robert Klemme wrote:

[#361976] Re: Return values of modifiers — "David A. Black" <dblack@...> 2010/04/30

Hi --

[#361978] Re: Return values of modifiers — Michel Demazure <michel@...> 2010/04/30

David A. Black wrote:

[#362010] Re: Return values of modifiers — Benoit Daloze <eregontp@...> 2010/04/30

Sure, it would be nice while/until loops return value of the last iteration,

[#361963] Switching dynamically between methods (inside modules) — "Paul A." <cyril.staff@...>

Hi,

9 messages 2010/04/30

[#361983] Inverse of stream parser — Brian Candler <b.candler@...>

I plan to parse a huge XML document (too big to fit into RAM) using a

14 messages 2010/04/30

[#361989] Cann't require UTF-8 files. — O01eg Oleg <o01eg@...>

When I require file with UTF-8 encoding I get error:

14 messages 2010/04/30
[#361997] Re: Cann't require UTF-8 files. — Caleb Clausen <vikkous@...> 2010/04/30

On 4/30/10, O01eg Oleg <o01eg@yandex.ru> wrote:

[#362008] Setting to Ruby 1.9 in Ubuntu... — Xeno Campanoli / Eskimo North and Gmail <xeno.campanoli@...>

I tried installing a bunch of ruby 1.9 stuff on my Ubuntu laptop last night, but

15 messages 2010/04/30
[#362009] Re: Setting to Ruby 1.9 in Ubuntu... — Walton Hoops <walton@...> 2010/04/30

On 4/30/2010 1:36 PM, Xeno Campanoli / Eskimo North and Gmail wrote:

Re: [QUIZ][SUMMARY] Distinct Sets (#225)

From: James Nathan <badlands_2004@...>
Date: 2010-04-12 02:20:51 UTC
List: ruby-talk #360917
Daniel,
=A0
I would like to know how to install ruby and rails on my computer.
but the trouble that I am having is that all the files are zipped up
and can use them. if you have a sloution for this email me back.
badlands_2004@yahoo.com
=A0
James=A0

--- On Thu, 4/8/10, Daniel Moore <yahivin@gmail.com> wrote:


From: Daniel Moore <yahivin@gmail.com>
Subject: [QUIZ][SUMMARY] Distinct Sets (#225)
To: "ruby-talk ML" <ruby-talk@ruby-lang.org>
Date: Thursday, April 8, 2010, 3:16 PM


Many members of the Ruby Community contributed solutions to this quiz. Some
long time veterans as well as first time contributors. Thanks everyone for
the great turnout!

`Set#divide` is an interesting method that came up during the discussion. I
was not previously familiar with it, time to learn.

> From Ruby-Doc[2]:
> Divides the set into a set of subsets according to the commonality define=
d
> by the given block.
>
> If the arity of the block is 2, elements o1 and o2 are in common if
> block.call(o1, o2) is true. Otherwise, elements o1 and o2 are in common
> if block.call(o1) =3D=3D block.call(o2).
> e.g:
>
>=A0 =A0=A0=A0require 'set'
>=A0 =A0=A0=A0numbers =3D Set[1, 3, 4, 6, 9, 10, 11]
>=A0 =A0=A0=A0set =3D numbers.divide { |i,j| (i - j).abs =3D=3D 1 }
>=A0 =A0=A0=A0p set=A0=A0=A0# =3D> #<Set: {#<Set: {1}>,
>=A0 =A0 =A0 =A0 =A0 =A0=A0=A0#=A0 =A0 =A0 =A0 =A0 =A0 #<Set: {11, 9, 10}>,
>=A0 =A0 =A0 =A0 =A0 =A0=A0=A0#=A0 =A0 =A0 =A0 =A0 =A0 #<Set: {3, 4}>,
>=A0 =A0 =A0 =A0 =A0 =A0=A0=A0#=A0 =A0 =A0 =A0 =A0 =A0 #<Set: {6}>}>

I didn't quite get it at first so I went to the console and tried some othe=
r
examples.

=A0 =A0 set =3D numbers.divide { |i,j| (i - j).abs =3D=3D 2 }
=A0 =A0 =3D> #<Set: {#<Set: {10}>, #<Set: {1, 3}>, #<Set: {6, 4}>, #<Set: {=
11,
9}>}>

Ok, so the first example gets contiguous runs (numbers that are 1 apart),
and the second example gets contiguous skip runs (runs of numbers that are =
2
apart).

Now to test out the single argument version:

=A0 =A0 set =3D numbers.divide { |i| i%2 }
=A0 =A0 =3D> #<Set: {#<Set: {11, 1, 3, 9}>, #<Set: {6, 4, 10}>}>

Dividing a set into odds and evens. A core component of this quiz is
grouping sets; this may come in handy.

brabuhr's first solution uses this method and is a good illustration of the
principle behind the problem.

=A0 =A0 require 'set'

=A0 =A0 class Set
=A0 =A0 =A0 def intersect?(other)
=A0 =A0 =A0 =A0 other.each { |o| return true if include?(o) }
=A0 =A0 =A0 =A0 false
=A0 =A0 =A0 end
=A0 =A0 end

=A0 =A0 def distinct_sets(array_of_arrays)
=A0 =A0 =A0 set_of_sets =3D array_of_arrays.map{|a|
=A0 =A0 =A0 =A0 a.to_set
=A0 =A0 =A0 }.to_set

=A0 =A0 =A0 set_of_sets.divide{|i, j|
=A0 =A0 =A0 =A0 i.intersect?(j)
=A0 =A0 =A0 }.map{|s|
=A0 =A0 =A0 =A0 s.flatten.to_a
=A0 =A0 =A0 }
=A0 =A0 end

In this solution an instance method `intersect?` is added to `Set`. This
allows us to `divide` all the sets that share an element into groups. Then
all that is left is to merge the groups of sets (`Set#flatten` takes care o=
f
that) and to present the result as an array of arrays to match how the
output was specified in the quiz.

During the quiz discussion a full set of test cases was developed. This
enabled everyone to check and verify the accuracy of their solutions. The
test suite was provided by Rob Biedenharn and uses Shoulda[1], a testing
framework that provides additional helpers, macros, and assertions to the
Test::Unit framework.

Another benefit the testing provided was the ability to focus on the speed
at which the solutions run. When you have a full test suite you can modify
code without fear of breaking things in order to optimize and squeeze out
that last bit of speed, or conversely, to clean things up to improve code
readability, knowing that you have a safety net of tests to catch any error=
s
introduced.

There were many, many more solutions to this week's quiz. The principle of
grouping and merging the sets is followed by all solutions, with varying
tradeoffs between execution speed and readability. brabuhr had two more,
Benoit Daloze had two, lith had two, Rob Biedenharn had one, and first time
correspondent Johnathon Wright had one. Please be sure to take a look insid=
e
the archived files, there are lots of good solutions in there.

Special thanks to everyone who participated in the quiz!

Distinct Sets (#225) - Solutions[3]

[1]: http://github.com/thoughtbot/shoulda
[2]: http://ruby-doc.org/core/classes/Set.html#M001626
[3]: http://rubyquiz.strd6.com/quizzes/225.tar.gz
=0A=0A=0A      

In This Thread

Prev Next