🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.ruby
Article #221

Re: Jak dodać własną metodę typu nazwa! do klasy?

#221
From: Rafał Komorowski
Date: Sat, 07 Oct 2006 23:25
41 lines
2357 bytes
On 2006-10-07 23:38:50 +0200, Marcin Mielżyński <lopx@gazeta.pl> said:

> Tutaj chodzi chyba spójność z Fixnumem. Pomimo że Float nie jest 
> immediate value - jest immutable.

Dzięki, wydaje mi się, że zrozumiałem :-)

> tutaj jest algorytm dekodowania typów Rubiego:
> http://www.oreillynet.com/ruby/blog/2006/01/the_ruby_value_1.html

Bardzo ciekawy artykulik. Dobrze, że coraz więcej jest bardziej 
zaawansowanych materiałów o Rubym, idziemy do przodu! :-)

> ...Najlepiej zrób kompozycje.

Co masz na myśli? "aggregation" w sensie railsowym?

A tak ogólnie, w klasach wbudowanych w Rubiego bardzo brakuje mi paru 
dość oczywistych funkcji, w tym właśnie zaokrąglania floata do zadanego 
miejsca po przecinku. Szkoda takie podstawowe rzeczy implementować już 
w interpretowanym kodzie, do tego przecież właśnie dobrze nadaje się 
kompilowane C.
Ponadto chciałbym też mieć sprintf, które generuje przecinek jako 
decimal-point i kropkę jako thousands-separator, ale to już z innej 
beczki. Z braku lepszego pomysłu mam po prostu:

  class Fixnum
    def format00
      sprintf("%d", self).gsub(/(\d)(?=(\d\d\d)+(?!\d))/, "\\1.")
    end
  end

ale serce mi się kraje, jak widzę wyrażenia regularne zastosowane do 
tak prymitywnych rzeczy. Może jednak warto nauczyć się robić wstawkę w 
C do kodu Rubiego? Nie interesowałem się tym na razie, ale widzę, że w 
"biblii" jest to szeroko opisane.



-- 
komor_newsNO@macSPAM.com
Technical Details
Message-ID: <eg9d1o$q20$1@news.task.gda.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.task.gda.pl!not-for-mail
References: <eg90si$dj4$1@news.task.gda.pl> <eg96pc$u4t$1@news.onet.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.task.gda.pl!not-for-mail
From: Rafał Komorowski <komor_newsBEZ@macSPAMU.com>
Newsgroups: pl.comp.lang.ruby
Subject: Re: Jak dodać własną metodę typu
 nazwa! do klasy?
Date: Sun, 8 Oct 2006 01:25:45 +0200
Organization: CI TASK http://www.task.gda.pl/
Lines: 42
Message-ID: <eg9d1o$q20$1@news.task.gda.pl>
References: <eg90si$dj4$1@news.task.gda.pl> <eg96pc$u4t$1@news.onet.pl>
NNTP-Posting-Host: public-gprs17295.centertel.pl
Mime-Version: 1.0
X-Trace: news.task.gda.pl 1160263547 26688 87.96.67.143 (7 Oct 2006 23:25:47 GMT)
X-Complaints-To: abuse@news.task.gda.pl
NNTP-Posting-Date: Sat, 7 Oct 2006 23:25:47 +0000 (UTC)
User-Agent: Unison/1.7.6
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit