[#392128] negative grep — Matt Lawrence <matt@...>

A bit of syntax that I have never picked up. How do I use grep to exclude

14 messages 2012/01/12
[#392129] Re: negative grep — K Clair <kclair@...> 2012/01/12

biglist !~ /bar/

[#392135] Problem with "Exception" - suddenly stopped working — Panagiotis Atmatzidis <ml@...>

Hello,

16 messages 2012/01/12
[#392144] Re: Problem with "Exception" - suddenly stopped working — "Abinoam Jr." <abinoam@...> 2012/01/12

IMHO ~PERHAPS~ the begin rescue is not working because the exception

[#392146] Re: Problem with "Exception" - suddenly stopped working — Peter Vandenabeele <peter@...> 2012/01/12

On Thu, Jan 12, 2012 at 10:04 PM, Abinoam Jr. <abinoam@gmail.com> wrote:

[#392147] Re: Problem with "Exception" - suddenly stopped working — Peter Vandenabeele <peter@...> 2012/01/12

On Thu, Jan 12, 2012 at 10:33 PM, Peter Vandenabeele <peter@vandenabeele.com

[#392154] Re: Problem with "Exception" - suddenly stopped working — Panagiotis Atmatzidis <ml@...> 2012/01/12

Hello,

[#392161] Re: Problem with "Exception" - suddenly stopped working — "Abinoam Jr." <abinoam@...> 2012/01/13

On Thu, Jan 12, 2012 at 8:45 PM, Panagiotis Atmatzidis

[#392162] Re: Problem with "Exception" - suddenly stopped working — Peter Vandenabeele <peter@...> 2012/01/13

On Fri, Jan 13, 2012 at 12:23 PM, Abinoam Jr. <abinoam@gmail.com> wrote:

[#392242] The Better Code — Intransition <transfire@...>

Which would you judge to be the better code?

15 messages 2012/01/16

[#392252] Which library to write a parser — thomas carlier <carlier.thomas@...>

Hi,

16 messages 2012/01/16

[#392262] uniq with count; better way? — Ralph Shnelvar <ralphs@...32.com>

a = [4,5,6,4,5,6,6,7]

42 messages 2012/01/16
[#392266] Re: uniq with count; better way? — Sigurd <cu9ypd@...> 2012/01/16

The first that came to my mind.

[#392268] Re: uniq with count; better way? — Adam Prescott <adam@...> 2012/01/16

On Mon, Jan 16, 2012 at 16:00, Sigurd <cu9ypd@gmail.com> wrote:

[#392277] Re: uniq with count; better way? — Magnus Holm <judofyr@...> 2012/01/16

On Mon, Jan 16, 2012 at 17:04, Adam Prescott <adam@aprescott.com> wrote:

[#392287] Re: uniq with count; better way? — "Abinoam Jr." <abinoam@...> 2012/01/17

On Mon, Jan 16, 2012 at 1:48 PM, Magnus Holm <judofyr@gmail.com> wrote:

[#392289] Re: uniq with count; better way? — "Abinoam Jr." <abinoam@...> 2012/01/17

On Mon, Jan 16, 2012 at 9:22 PM, Abinoam Jr. <abinoam@gmail.com> wrote:

[#392291] Re: uniq with count; better way? — "Abinoam Jr." <abinoam@...> 2012/01/17

On Mon, Jan 16, 2012 at 10:05 PM, Abinoam Jr. <abinoam@gmail.com> wrote:

[#392303] Re: uniq with count; better way? — Peter Vandenabeele <peter@...> 2012/01/17

On Tue, Jan 17, 2012 at 2:44 AM, Abinoam Jr. <abinoam@gmail.com> wrote:

[#392351] Re: uniq with count; better way? — Robert Klemme <shortcutter@...> 2012/01/18

On Tue, Jan 17, 2012 at 12:08 PM, Peter Vandenabeele

[#392286] Parsing log with date time entry — Christopher Graves <gravescl@...>

The log file looks like this

24 messages 2012/01/16

[#392406] Name directory with a variable — Alex Sweps <alexszepes@...>

Hello again everyone.

14 messages 2012/01/20

[#392429] Getting an Object to Push or Register "Itself" With a Hash During Initialization — Frank Guerino <frank.guerino@...4it.com>

Hi,

11 messages 2012/01/20

[#392460] Microrant on Ruy's Math Skills — Intransition <transfire@...>

So simple...

116 messages 2012/01/21
[#392464] Re: Microrant on Ruy's Math Skills — Gary Wright <gwtmp01@...> 2012/01/21

[#392469] Re: Microrant on Ruy's Math Skills — Yossef Mendelssohn <ymendel@...> 2012/01/21

On Jan 21, 2012 9:34 AM, "Gary Wright" <gwtmp01@mac.com> wrote:

[#392471] Re: Microrant on Ruy's Math Skills — Su Zhang <su.comp.lang.ruby@...> 2012/01/21

On 1/21/2012 12:08 PM, Yossef Mendelssohn wrote:

[#392499] Re: Microrant on Ruy's Math Skills — Intransition <transfire@...> 2012/01/22

So they can drop a billion transistors on a chip, have implemented 3D

[#392547] Re: Microrant on Ruy's Math Skills — Robert Klemme <shortcutter@...> 2012/01/23

On Sun, Jan 22, 2012 at 3:03 AM, Intransition <transfire@gmail.com> wrote:

[#392550] Re: Microrant on Ruy's Math Skills — Peter Vandenabeele <peter@...> 2012/01/23

On Mon, Jan 23, 2012 at 9:29 AM, Robert Klemme

[#392579] Re: Microrant on Ruy's Math Skills — Chad Perrin <code@...> 2012/01/23

On Mon, Jan 23, 2012 at 07:33:20PM +0900, Peter Vandenabeele wrote:

[#392581] Re: Microrant on Ruy's Math Skills — Steve Klabnik <steve@...> 2012/01/23

> Even that and the '1.1'.to_dec option mentioned elsewhere seem pretty

[#392585] Re: Microrant on Ruy's Math Skills — Chad Perrin <code@...> 2012/01/23

On Tue, Jan 24, 2012 at 03:14:27AM +0900, Steve Klabnik wrote:

[#392587] Re: Microrant on Ruy's Math Skills — Steve Klabnik <steve@...> 2012/01/23

No, it's not a terminology difference. That's why it won't work. You

[#392590] Re: Microrant on Ruy's Math Skills — Chad Perrin <code@...> 2012/01/23

On Tue, Jan 24, 2012 at 05:45:18AM +0900, Steve Klabnik wrote:

[#392591] Re: Microrant on Ruy's Math Skills — Ryan Davis <ryand-ruby@...> 2012/01/23

[#392618] Re: Microrant on Ruy's Math Skills — Alex Chaffee <alexch@...> 2012/01/24

"Standard is better than better." -Anon.

[#392643] Re: Microrant on Ruy's Math Skills — Gavin Sinclair <gsinclair@...> 2012/01/25

On Wed, Jan 25, 2012 at 6:05 AM, Alex Chaffee <alexch@gmail.com> wrote:

[#392673] Re: Microrant on Ruy's Math Skills — Intransition <transfire@...> 2012/01/25

I have tried this, but recently discovered the same issues arise.

[#392743] Re: Microrant on Ruy's Math Skills — Garthy D <garthy_lmkltybr@...> 2012/01/27

[#392745] Re: Microrant on Ruy's Math Skills — Josh Cheek <josh.cheek@...> 2012/01/27

On Thu, Jan 26, 2012 at 6:05 PM, Garthy D <

[#392766] Re: Microrant on Ruy's Math Skills — Adam Prescott <adam@...> 2012/01/27

On Fri, Jan 27, 2012 at 03:05, Josh Cheek <josh.cheek@gmail.com> wrote:

[#392776] Re: Microrant on Ruy's Math Skills — Chad Perrin <code@...> 2012/01/27

On Fri, Jan 27, 2012 at 11:02:52PM +0900, Adam Prescott wrote:

[#392781] Re: Microrant on Ruy's Math Skills — Gary Wright <gwtmp01@...> 2012/01/27

[#392805] Re: Microrant on Ruy's Math Skills — "Jon Lambert" <jlambert@...> 2012/01/29

On Jan 27, 2012, at 3:26 PM, Gary Wright wrote:

[#392831] Re: Microrant on Ruy's Math Skills — Gary Wright <gwtmp01@...> 2012/01/30

[#392835] Re: Microrant on Ruy's Math Skills — Chad Perrin <code@...> 2012/01/30

On Mon, Jan 30, 2012 at 10:03:04AM +0900, Gary Wright wrote:

[#392837] Re: Microrant on Ruy's Math Skills — Robert Klemme <shortcutter@...> 2012/01/30

On Mon, Jan 30, 2012 at 6:56 AM, Chad Perrin <code@apotheon.net> wrote:

[#392847] Re: Microrant on Ruy's Math Skills — Chad Perrin <code@...> 2012/01/30

On Mon, Jan 30, 2012 at 05:22:47PM +0900, Robert Klemme wrote:

[#392511] Building desktop application using Ruby and any GUI Framework — Rubyist Rohit <passionate_programmer@...>

I want to write a small desktop application on Ruby. I want the

12 messages 2012/01/22

[#392598] Web Application from Scratch - like PHP — "Gaurav C." <chande.gaurav@...>

Hi,

17 messages 2012/01/24

[#392635] A little assistance please :) — Paet Worlds II <paetilium@...>

So I'm still quite new to Ruby and so far I love it's simplicity, but I

21 messages 2012/01/25
[#392636] Re: A little assistance please :) — Hilco Wijbenga <hilco.wijbenga@...> 2012/01/25

On 24 January 2012 17:14, Paet Worlds II <paetilium@live.com> wrote:

[#392637] Re: A little assistance please :) — Paet Worlds II <paetilium@...> 2012/01/25

Hilco Wijbenga wrote in post #1042399:

[#392641] Re: A little assistance please :) — Chad Perrin <code@...> 2012/01/25

On Wed, Jan 25, 2012 at 10:41:10AM +0900, Paet Worlds II wrote:

[#392672] Re: A little assistance please :) — Dave Aronson <rubytalk2dave@...> 2012/01/25

On Tue, Jan 24, 2012 at 23:32, Chad Perrin <code@apotheon.net> wrote:

[#392711] Re: A little assistance please :) — Chad Perrin <code@...> 2012/01/26

On Thu, Jan 26, 2012 at 03:43:59AM +0900, Dave Aronson wrote:

[#392818] Help please Undefined Method error — "andres d." <andres.1996.1@...>

Hi and thank you for reading this

12 messages 2012/01/29

[#392867] Multiple assignment in conditional — Gavin Sinclair <gsinclair@...>

I find this a strange Ruby error.

28 messages 2012/01/31
[#392868] Re: Multiple assignment in conditional — Josh Cheek <josh.cheek@...> 2012/01/31

On Tue, Jan 31, 2012 at 12:46 AM, Gavin Sinclair <gsinclair@gmail.com>wrote:

[#392944] Re: Multiple assignment in conditional — Gavin Sinclair <gsinclair@...> 2012/02/01

On Tue, Jan 31, 2012 at 6:22 PM, Josh Cheek <josh.cheek@gmail.com> wrote:

[#392914] Re: Multiple assignment in conditional — Robert Klemme <shortcutter@...> 2012/01/31

On Tue, Jan 31, 2012 at 7:46 AM, Gavin Sinclair <gsinclair@gmail.com> wrote=

[#392917] PHP vs Ruby is it worth it? — Samuel Mensah <sasogeek@...>

Hi, I've been searching around for what the best language there is out

14 messages 2012/01/31

Re: Microrant on Ruy's Math Skills

From: Chad Perrin <code@...>
Date: 2012-01-30 18:29:00 UTC
List: ruby-talk #392850
On Mon, Jan 30, 2012 at 06:01:02PM +0900, Florian Gilcher wrote:
> 
> On Jan 30, 2012, at 9:32 AM, Tony Arcieri wrote:
> 
> > On Mon, Jan 30, 2012 at 12:22 AM, Robert Klemme
> > <shortcutter@googlemail.com>wrote:
> > 
> >> It seems many people use the "floating point mess" without major
> >> issues.  So it cannot be as bad as you make it sound.
> >> 
> > 
> > Floating points are a great choice for approximating continuous values and
> > thus working on things which require both high performance and
> > approximating real-world data sources. This includes things like games,
> > non-gaming related 3D applications, perceptual media including audio and
> > video codecs, and everything involved in working with perceptual media on
> > computers such as non-linear editing, speech synthesis, and speech
> > recognition.
> 
> Let me add "statistics gathering" to the list...
> 
> > People don't often do these things in Ruby. I'd say they're uncommon use
> > cases.
> 
> ... and suddenly, you have a _very_ common use case. I have no client
> where it doesn't happen.
> 
> Graphing is also not uncommon.
> 
> > 
> > Something people do quite often in Ruby: deal with money. Money isn't
> > continuous, it's discrete. A decimal type is a much better choice for
> > dealing with money than a floating point.
> 
> Yes, but a dedicated money type that encodes the currency is also a much better
> choice. Also the standard in handling monetary values is not using a decimal
> representation anyways: you just encode the smallest value as an Integer.

It's easy to focus on a single tree and ignore the forest.

Dealing with money is not the only use case -- and it becomes a lot more
complicated when you have to deal with exchange rates, completely blowing
the "just use cents" solution out of the running as a simple expedient.

Money is an example of the kind of use cases where having something a bit
more accuracy-predictable than Floats without imposing a lot of syntactic
overhead is a good idea.  It is not the *only* example.  Answering "For
example, there's dealing with money . . ." with a solution that only
works for money is missing the point of an example.  In fact, I'd say
that the biggest "use case" is probably the vast range of circumstances
wherein there is not a singular, systematic requirement for unsurprising
arithmetic; it is, instead, the everyday case of doing division in casual
cases where the entire point of a program is not the math itself, but the
math is expected to fit some definition of predictable accuracy.
Consider:

1. averaging (mean) small numbers from large samples for a rating system

2. simulating dice rolling and subsequent math for roleplaying games

3. using irb as a "desktop" calculator

4. figuring out distances for trip planning

5. percentages in myriad circumstances, such as offering comparisons of
relatively small differences between different customer groups' behaviors
as just one small part of a larger reporting program (or, for roughly the
same usage pattern, a ten year old learning to programming doing some
simplistic statistical work involving his or her friends' trends in
favorite ice cream flavors)

Note that none of these is as rigorously and pervasively dependent on
exactitude of painstakingly defined standards for accuracy of sub-1.0
positive numbers as you're likely to find in the work of computer
scientists working on their dissertations or specialized professional
fields, but they can still result in bugs based solely on the use of
floating point numbers with Ruby's Float comparison capabilities, thus
mandating either the use of much more verbose libraries with much more
finnicky syntax or the (re)invention of alternate comparison methods for
the Float class.

Then, of course, there's what may be the biggest use-case of all: people
who are not aware of the problem of the inconsistencies of decimal math
using the IEEE-standard floating point implementation because when they
look at documentation for Ruby's Float class all they see is Float#==
with no alternative comparison methods.


> 
> If money is the reason against float, its the wrong reason. It may be a tempting
> error, but it only shows that the developer in question did not read a single 
> line about handling money in software - which is another common problem, but
> not one that you can actually fix by the choice of literals.

It's not the only reason, and it's not a reason "against float", either.

It's just a single reason for offering *something* other than the very
limited options we currently have -- which seem designed on the
assumption that any case where the unadorned IEEE-standard floating point
type is an exceedingly rare edge case -- and offering it in a manner that
makes it as close to an equal "citizen" as we reasonably can.  As things
currently stand, it seems difficult to claim (with a straight face) that
math involving positive decimal numbers between 0 and 1 without
inaccuracies that are nontrivial to predict for the average coder even
rises to the level of second-class "citizen".

Realistically, I think the IEEE- standard floating point type is itself a
fairly rare edge case compared to other options like "truncation at Nth
decimal place" and "just get me close without a difference of 0.1 between
two potential inputs to a given expression resulting in the precedence of
two items being unexpectedly swapped thanks solely to unexpected rounding
mismatches between binary and decimal numbers."

-- 
Chad Perrin [ original content licensed OWL: http://owl.apotheon.org ]

In This Thread