[#387246] newbie question — sunny parker <info@2020proj.com>

i am coming from php and dont seem to quite understand how ruby works

13 messages 2011/09/01

[#387330] installing naive bayes classifier — aya abdelsalam <ayoya_91@...>

Hello

10 messages 2011/09/02

[#387344] Beginner needing help - Writing right-angle triangle program — Kane Williams <theburrick@...>

I've been going through a Haskell tutorial (Just to see what it's like)

12 messages 2011/09/03

[#387356] Which version should I download? — Vladimir Van Bauenhoffer <cluny_gisslaren@...>

Im new to programming and Im thinking of downloading and starting with

17 messages 2011/09/03

[#387392] loops problem — jack jones <shehio_22@...>

for (j = @array.length ; j > counter ; j = j-1) # counter is a variable

13 messages 2011/09/04

[#387469] posts on Unix systems programming — Eric Wong <normalperson@...>

I would like to do a series of mailing list posts on the subject of Unix

28 messages 2011/09/06

[#387530] Unexpected behavior of Ruby array — Suvankar Satpati <suvankar.17@...>

I was going through the exercises at http://rubykoans.com/ and got

11 messages 2011/09/08

[#387544] Executing the output of a look — dwight schrute <spambocks@...>

Hi,

14 messages 2011/09/08

[#387586] Creating a hash from two arrays — simon harrison <simonharrison.uk@...>

Hi. Can anyone help with this? I'd like to end with a hash like so:

15 messages 2011/09/09

[#387596] newbie ruby installation malloc issue — "mark e." <mark_f_edwards@...>

hi all -

12 messages 2011/09/09

[#387614] how to write data in binary to a file? — frank hi <yw_hi@163.com>

Hi,

11 messages 2011/09/10

[#387646] How do I make output generate a float without an excess numbers of decimal places? — Kane Williams <theburrick@...>

For example, my current code is

11 messages 2011/09/11

[#387725] Any downsides to writing paranthesises? — Vladimir Van Bauenhoffer <cluny_gisslaren@...>

Im a newbie programmer who is trying to learn Ruby after having just

18 messages 2011/09/12

[#387811] Get interpreter path — Michal Suchanek <hramrach@...>

Hello,

26 messages 2011/09/14
[#387842] Re: Get interpreter path — Phillip Gawlowski <cmdjackryan@...> 2011/09/14

On Wed, Sep 14, 2011 at 3:35 PM, Michal Suchanek <hramrach@centrum.cz> wrote:

[#387844] Re: Get interpreter path — Michal Suchanek <hramrach@...> 2011/09/14

On 14 September 2011 20:47, Phillip Gawlowski <cmdjackryan@gmail.com> wrote:

[#387814] Tough Ruby Homework — Rory Pascua <rorypascua@...>

I'm trying to take a long piece of text, find a word, and get that word

18 messages 2011/09/14

[#387853] Can I Safely Use Rubinius While Learning? — Aaron Jackson <jacksonaaronc@...>

Greetings,

18 messages 2011/09/15

[#387915] Some newbie questions — Vladimir Van Bauenhoffer <cluny_gisslaren@...>

I got some newbie questions which I would very much appreciate if

14 messages 2011/09/15

[#388003] Ruby Speed Question — Kevin Anon <oblivious.sage@...>

Wrote my first Ruby program recently for a class assignment where we had

12 messages 2011/09/18

[#388078] appending \n to each element in an array — Joe Collins <joec_49@...>

I have an array

13 messages 2011/09/20

[#388123] Turning on a special program at special time and turning off the computer at another special time — "amir e." <aef1370@...>

I decided to write a program in RUBY wherein these items have been done

11 messages 2011/09/21
[#388124] Re: Turning on a special program at special time and turning off the computer at another special time — andrew mcelroy <sophrinix@...> 2011/09/21

That sounds like a program a special program a terrorist would write. Are

[#388198] Conditional statements with multiple arguments — "Thomas B." <sinixlol@...>

Good afternoon everyone,

18 messages 2011/09/24

[#388203] Ruby 1.9.3 RC1 is out — "Yuki Sonoda (Yugui)" <yugui@...>

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

19 messages 2011/09/24
[#388208] Re: [ANN] Ruby 1.9.3 RC1 is out — Quintus <sutniuq@...> 2011/09/24

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

[#388209] Re: [ANN] Ruby 1.9.3 RC1 is out — Chris White <cwprogram@...> 2011/09/24

[#388214] Re: [ANN] Ruby 1.9.3 RC1 is out — Quintus <sutniuq@...> 2011/09/24

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

[#388216] Re: [ANN] Ruby 1.9.3 RC1 is out — Yusuke Endoh <mame@...> 2011/09/24

Hello,

[#388248] Looking for better/familiar approach to command line opts — "Perl J." <perljunkie@...>

So I guess the warning to the reader upfront is... I'm a bit of a Perl

14 messages 2011/09/25

[#388333] Get all classes from a list of files — Jeroen van Ingen <jeroeningen@...>

I have a list of ruby files. I would like to create objects from all

11 messages 2011/09/28

[#388342] Ruby Syntax @keywords ||= [ ] — Bhavesh Sharma <sharmabhavesh@...>

Sorry if this comes across as a dumb question, but what does the

11 messages 2011/09/28

[#388366] IO.readlines will not accept variable with file name Why? — Joda jenson <jodajen2@...>

I am fairly new to Ruby and I am stuck on this. Would someone have a

13 messages 2011/09/29
[#388368] Re: IO.readlines will not accept variable with file name Why? — Robert Klemme <shortcutter@...> 2011/09/29

On Thu, Sep 29, 2011 at 11:14 AM, Joda jenson <jodajen2@yahoo.com> wrote:

Re: Which version should I download?

From: Brian Candler <b.candler@...>
Date: 2011-09-06 16:39:22 UTC
List: ruby-talk #387462
Chris White wrote in post #1020283:
> Python won't save you from the complexities of encoding.

No, but the language *does* have very clearly defined semantics. It also 
makes a clear distinction between "a character" and "an encoded 
representation of that character", and it has two distinct classes for 
those things.

It is then pretty much foolproof: if you forget to decode your bytes 
into characters, or encode your characters into bytes, or try to combine 
characters with bytes, then you'll get an immediate and consistent 
runtime error.

Ruby has a hazy notion of these things, and hazy(*) rules which allow 
you sometimes to combine strings of characters and binary strings, and 
sometimes not. If your program runs successfully once, it doesn't mean 
that it's going to run successfully with different input data.

Furthermore, any library in ruby 1.9 which either accepts a String or 
returns a String needs to document its encoding-related behaviour; 
almost none of them do. In Python 3, all you have to say is whether it 
uses String or Bytes.

(*) Even data which I *explicity* tag as being BINARY is taken to be 
ASCII-8BIT, whether that is true or not.

> You have to
> remember, Ruby has its base in Japan. In Japan you roughly have the
> following encodings to deal with:
> - UTF*- EUC-JP- SJIS- ISO-2022-JP

The confusion between "encodings" and "character sets" is pretty 
endemic, and I have fallen prey to it myself many times.

Python partly dodges this issue because it supports only one character 
set - unicode - and then various encodings of it (like UTF*) and 
encodings of subsets of the character set (like ISO-8859-*)

I understand that there are various Asian character sets which are not 
proper subsets of unicode, and so can't be converted losslessly to and 
from unicode. If Python3 were to be extended to handle them, then I 
imagine there would be separate classes for EUCJPString and GB2312String 
or whatever, and methods to transcode between them (and options for what 
to do about missing characters)

And of course, Ruby 1.9 doesn't really handle ISO-2022-JP anyway, 
because it's a stateful encoding; I'm pretty sure you can't index or 
take the length or regexp-match an ISO-2022-JP string in ruby 1.9, 
without first transcoding it.

> This is just a very broad generalization. There are even more issues
> such as multiple versions of SJIS.

Absolutely. So it's vital to have a clear distinction between

      encoded sequence  <----------->  set of characters
      of bytes

which Python 3 has; whereas ruby 1.9 tries to work with the encoded 
sequence of bytes as-is, hoping you've remembered to tag the encoding 
correctly every time, and remorselessly tagging binary data as being 
text anyway.

> just remember that every language has its ups and
> downs. Python 3 for example has many external libraries, including
> Django and some of the ui toolkits, that are not supported.

That's true, and it's Django which keeps me from skipping python 2 
entirely and just going to 3.

Regards,

Brian.

-- 
Posted via http://www.ruby-forum.com/.

In This Thread

Prev Next