<erikh>
if you pass it a filename, it's as atomic as file i/o gets
<erikh>
if you pass it an IO object, you're responsible
<ryanf>
yeah, I dunno how atomic file i/o gets :)
<ryanf>
that's sort of where I'm hitting the limits of my knowledge about this
<drbrain>
typically IO is buffered in ruby
<erikh>
if I said "it depends highly on the operating system"
<drbrain>
that'll lead to corruption
<erikh>
drbrain: even with sync forced?
<drbrain>
with sync forced, no
<erikh>
yeah, check out that link
<postmodern>
sounds like a job for syslog
<ryanf>
maybe I'd be better off talking to syslog and configuring it to write a file?
<ryanf>
ah
<ryanf>
yeah
<erikh>
syslog has its own set of problems
<erikh>
but it's probably better for many things.
<drbrain>
but, I don't know what the OS will do
<zenspider>
yeah. I was about to say use syslog
<erikh>
right, there are flags you can set on open(2) like O_DIRECT which take this to another level
<erikh>
anyhow, syslog has other issues. it really depends on how much you're logging and how much you care about actually reading your logs
<erikh>
I try to use tools other than syslog unless all I care about doing for the most part is archiving it
<postmodern>
if your using Logger, syslog is a natural next step
<postmodern>
but yeah, syslog is for greppable text, not data structures
<postmodern>
an audit trail so to speak
<erikh>
it's also not for multiline output or large logs that you want perform analysis on
<drbrain>
JSON via syslog
<erikh>
yep
<erikh>
json.
<erikh>
also look at logstash when you're ready to do big-boy stuff.
<drbrain>
(sounds like a terrible idea)
<postmodern>
also not for control characters or unescaped data
<erikh>
drbrain: it's actually quite awesome if you have an active consumer
<erikh>
(like logstash)
<erikh>
beats the shit out of applying grep to a 10G log file
<ryanf>
erikh: the plan is to write json to files, stick them on s3, and maybe someday someone will want to look at them
<ryanf>
but not being corrupted would be nice
<ryanf>
I guess I'll go with syslog for now
<erikh>
yeah so
<erikh>
I'd look at logstash, heh.
<ryanf>
maybe I misunderstood what logstash was for. I thought it was for aggregating logs and searching them and stuff?
<erikh>
you just dump a per-process or per-thread file, and let the logstash agent ship it to the server, which can deliver it to 8 million different places
<erikh>
it's just a delivery and conversion system really
<ryanf>
ah
<erikh>
that's just what it's typically used for
<erikh>
like, we had it shipping to rabbitmq at my last job from all the web servers, then a user could orchestrate a "tail" of all the machines at once by reading from the queue
<ryanf>
neat
<erikh>
didn't matter if it was 2 or 50 machines
<erikh>
of course, those same logs were shipped to ES so you could search the same content
<ryanf>
I might be setting up logstash soon for dealing with actual logs, but I don't really want to deal with setting up a centralized server for this, since it's really just archival
krohrbaugh has joined #ruby-lang
robbyoconnor has joined #ruby-lang
<ryanf>
thanks for the recommendation though, definitely planning to check it out in the future
<erikh>
it's pretty killer software.
rsl has quit [Quit: Computer has gone to sleep.]
ryanlecompte has quit [Remote host closed the connection]
sent-hil has quit [Remote host closed the connection]
tdy has quit [Quit: WeeChat 0.3.9.2]
tdy has joined #ruby-lang
cardoni has joined #ruby-lang
kurko_ has joined #ruby-lang
Guest47056 has quit [Quit: Computer has gone to sleep.]
thinkdevcode has quit [Read error: No route to host]
thinkdevcode has joined #ruby-lang
afgeneralist has quit [Ping timeout: 276 seconds]
<stardiviner>
Why use "self." in a class method "def self.method_1 .." ?
<wnd>
I'm not sure if I understand the question, but that makes method_1 a static method
dr_bob has joined #ruby-lang
workmad3 has joined #ruby-lang
<stardiviner>
wnd: a static method ? I do not understand, I mean is there any difference between omit the "self." in module or class method definition or not omitted ?
<erikh>
yes
<erikh>
self. (or MyClass.) indicates a class method
<wnd>
static method can be called without creating an instance of the class
<erikh>
yep, exactly.
<stardiviner>
wnd: Oh, I see. only this difference ?
<erikh>
pretty much. it's a little stickier in modules (which you can't instance, but you can mix in to classes that you can instance)
<wnd>
apart from everything that it implies, yes, I thin that's all
<wnd>
but I'm not the right person to talk about "deeper" ruby
<stardiviner>
wnd: thanks
<wnd>
for example erikh clearly has better understanding here than me
<stardiviner>
erikh: good. It's enough to make me understand my question
dhruvasagar has joined #ruby-lang
<erikh>
it's not much more than that. we could talk about how classes and modules are just objects themselves and why this isn't really much different from a normal method on a normal object
<tockitj_>
stardiviner, there is nothing wrong - unlike other languages there is strong distinction between 'instance' and 'class' methods in ruby
<tockitj_>
you can't call class methods from an instance, or instance methods from class object
<tockitj_>
don't use 'static' method analogy for class method - it will only confuse you
<cirwin>
stardiviner: you've got the number of k's back to front
<cirwin>
def self.kkk => One.kkk
JohnBat26 has quit [Remote host closed the connection]
<cirwin>
def kk => One.new.kk
<stardiviner>
cirwin: oh, yes, switch them, now it is correct
<tockitj_>
class methods are basically singleton methods (they are defined in singleton class of the object)
<stardiviner>
I followed that a static method (without self.) can be called without class be instanced. So I call it like One.kk. (The .new method is instance a class right ?)
<tockitj_>
ruby does not have _static_ methods.
<tockitj_>
its bad analogy, as i've said
<cirwin>
stardiviner: a static (called singleton method in ruby) is one with self
<cirwin>
because "self" at that point is the class
<cirwin>
so you define a method on the class, instead of on every instance of the class
svyatov has quit [Quit: svyatov]
<stardiviner>
tockitj_: cirwin I see, :P so difficult to get it.
<tockitj_>
stardiviner, look its simple... just look into distinction..
qwerxy has joined #ruby-lang
<cirwin>
stardiviner: yeah, I found that the meaning of "self" is the most complicated thing to get my head around
<cirwin>
but once you realise that "def self.kkk" is exactly the same as "def One.kkk", it's easier to realise what's going on
<stardiviner>
cirwin: right
<tockitj_>
instance methods is an invisible list of methods that an object (which descent from Class object) has. they are just inserted into list of instance methods, after new object creation
JohnBat26 has joined #ruby-lang
<cirwin>
tockitj_: I didn't understand that :/
<tockitj_>
singleton methods are very different.. instead of implying existance of type (or better yet term is "class"), they define methods only onto them selfs
<cirwin>
oh, "invisible list of methods" => "singleton class"?
<tockitj_>
no - this is list of instance methods that class has
<tockitj_>
they can not be invoked from class object
<cirwin>
ah, ok
<cirwin>
I get you
<tockitj_>
so they are hidden until .new is called, after which they are imbued into new object
dalekurt has quit [Ping timeout: 255 seconds]
<cirwin>
heh, interesting way to tihnk about it
<tockitj_>
using 'static method' analogy from popular static languages is wrong imho
<tockitj_>
there is nothing 'static' in singleton methods
facest has joined #ruby-lang
hakunin has quit [Remote host closed the connection]
gnufied has quit [Quit: Leaving.]
hakunin has joined #ruby-lang
faces has quit [Ping timeout: 248 seconds]
guns has quit [Quit: guns]
gnufied has joined #ruby-lang
Croms has quit [Quit: Croms]
thinkdevcode has quit [Remote host closed the connection]
<yorickpeterse>
Morning
thinkdevcode has joined #ruby-lang
hakunin has quit [Ping timeout: 240 seconds]
workmad3 has quit [Ping timeout: 265 seconds]
thinkdevcode has quit [Ping timeout: 246 seconds]
Croms has joined #ruby-lang
apeiros_ has joined #ruby-lang
anjen has quit [Ping timeout: 252 seconds]
qwerxy has quit [Quit: offski]
Hakon has quit [Quit: Leaving...]
KA_ has quit [Quit: KA_]
tonni has quit [Remote host closed the connection]
dasil003 has joined #ruby-lang
sandbags2 has joined #ruby-lang
shtirlic has joined #ruby-lang
lsegal` has joined #ruby-lang
blacktulip has joined #ruby-lang
lsegal` has quit [Client Quit]
solars has joined #ruby-lang
chendo has quit [Ping timeout: 260 seconds]
charliesome has joined #ruby-lang
mytrile has joined #ruby-lang
agarcia has joined #ruby-lang
chendo_ has joined #ruby-lang
datanoise has quit [Ping timeout: 260 seconds]
KA_ has joined #ruby-lang
rue|w has joined #ruby-lang
dc5ala has joined #ruby-lang
ryanf has quit [Quit: leaving]
shtirli__ has joined #ruby-lang
shtirlic has quit [Ping timeout: 252 seconds]
ddfreyne has quit [Quit: Terminated with extreme prejudice - dircproxy 1.0.5]
ddfreyne has joined #ruby-lang
cyri_ has joined #ruby-lang
Croms has quit [Quit: Croms]
judofyr has joined #ruby-lang
sn0wb1rd_ has joined #ruby-lang
rolfb has joined #ruby-lang
judofyr has quit [Read error: Connection reset by peer]
dasil003 has quit [Quit: dasil003]
judofyr has joined #ruby-lang
stonerfish has quit [Quit: Leaving.]
judofyr has quit [Read error: Connection reset by peer]
zmack has joined #ruby-lang
judofyr has joined #ruby-lang
datanoise has joined #ruby-lang
ghanima has quit [Quit: Leaving.]
robotmay has joined #ruby-lang
jxie has quit [Quit: leaving]
sandbags2 has quit [Remote host closed the connection]
madish has joined #ruby-lang
judofyr has quit [Read error: Connection reset by peer]
dejongge has quit [Read error: Connection reset by peer]
KA_ has quit [Client Quit]
KA_ has joined #ruby-lang
jnoon has quit []
jnoon has joined #ruby-lang
MSU has joined #ruby-lang
dr_bob has quit [Quit: Leaving.]
blazes816 has joined #ruby-lang
thatdutchguy has joined #ruby-lang
madish_ has joined #ruby-lang
icooba has joined #ruby-lang
mytrile has joined #ruby-lang
madish has quit [Ping timeout: 248 seconds]
vlad_starkov has joined #ruby-lang
sush24 has joined #ruby-lang
rekky has joined #ruby-lang
ryanlecompte has joined #ruby-lang
SoAwesomeMan has joined #ruby-lang
gregmoreno has joined #ruby-lang
vlad_starkov has quit [Ping timeout: 264 seconds]
dr_bob has joined #ruby-lang
cosah has quit [Ping timeout: 246 seconds]
dr_bob has quit [Client Quit]
sush24 has quit [Quit: This computer has gone to sleep]
lcdhoffman has joined #ruby-lang
stardiviner has quit [Ping timeout: 240 seconds]
stardiviner has joined #ruby-lang
grzywacz has quit [Ping timeout: 240 seconds]
areil has quit [Remote host closed the connection]
alvaro_o has joined #ruby-lang
JohnBat26 has joined #ruby-lang
swarley has joined #ruby-lang
__butch__ has joined #ruby-lang
robbyoconnor has quit [Ping timeout: 246 seconds]
robbyoconnor has joined #ruby-lang
<matti>
:>
mytrile has quit [Remote host closed the connection]
jgomez has quit [Quit: Leaving]
jds_ has joined #ruby-lang
CoverSlide|TPFR is now known as CoverSlide
jds has quit [Ping timeout: 260 seconds]
dasil003 has quit [Ping timeout: 276 seconds]
brianpWins has joined #ruby-lang
banisterfiend has joined #ruby-lang
SoAwesomeMan has quit [Quit: Computer has gone to sleep.]
wallerdev has joined #ruby-lang
datanoise has quit [Ping timeout: 276 seconds]
afgeneralist has joined #ruby-lang
gjaldon has quit [Quit: Leaving]
Nisstyre has quit [Remote host closed the connection]
fsvehla has quit [Quit: fsvehla]
sepp2k has quit [Read error: No buffer space available]
sepp2k has joined #ruby-lang
cantonic_ has joined #ruby-lang
cantonic has quit [Ping timeout: 264 seconds]
cantonic_ is now known as cantonic
madish_ has quit [Read error: Connection reset by peer]
madish has joined #ruby-lang
JohnBat26 has quit [Read error: Operation timed out]
anjen has joined #ruby-lang
Nisstyre has joined #ruby-lang
sush24 has joined #ruby-lang
hakunin has quit [Remote host closed the connection]
qwerxy has quit [Ping timeout: 260 seconds]
qwerxy has joined #ruby-lang
anjen has quit [Quit: anjen]
workmad3 has quit [Ping timeout: 264 seconds]
cyri_ has quit [Quit: cyri_]
robbyoconnor has quit [Ping timeout: 276 seconds]
<brianpWins>
if I use a back tick to do an operation can I get any kind of return/response/exit code from that operation?
JohnBat26 has joined #ruby-lang
datanoise has joined #ruby-lang
chrismcg is now known as zz_chrismcg
justinram has joined #ruby-lang
<ttilley>
brianpWins: from an ugly as sin hidden global
<brianpWins>
hmmmm. I'll take your distaste and find another way =)
<ttilley>
brianpWins: $? contains in some versions of ruby the exit code as a numeric, but modern rubies contains a Process::Status object
<ttilley>
with pid and exit code
slainer68 has quit [Remote host closed the connection]
havenn has joined #ruby-lang
<ttilley>
of whatever was last run, so make sure you connect that immediately after the command is run...
<ttilley>
brianpWins: i'd suggest looking into the spawn set of apis though
<brianpWins>
thanks ttilley I'll check all that out
<ttilley>
pid = spawn([env,] command... [,options]); status = Process.waitpid(pid)
rsl has quit [Ping timeout: 240 seconds]
<ttilley>
just don't forget to wait on the pid or it'll become a zombie
BigO has quit [Remote host closed the connection]
<brianpWins>
I don't often require running commands with back ticks. Currently I'm debugging someone else's code. Is there a difference between running with back ticks vs using system() ? system will give me false if the cmd fails which is actually all I think I need right now. but why have two methods (system vs back ticks) ?
stardiviner has quit [Ping timeout: 240 seconds]
sush24 has quit [Quit: This computer has gone to sleep]
<pabs>
brianpWins: backticks collect the standard output of the command and return it as a string
<pabs>
e.g.
<pabs>
>> `ls`.length
<pabs>
=> 971
jxie_ has joined #ruby-lang
<brianpWins>
if that's the only (major) difference then I'm good with system. I don't need the output for anything
datanoise has quit [Ping timeout: 260 seconds]
<brianpWins>
thanks for the info
cantonic has quit [Remote host closed the connection]
cantonic has joined #ruby-lang
MaddinXx has quit [Remote host closed the connection]
jxie has quit [Ping timeout: 264 seconds]
cardoni has joined #ruby-lang
thorncp_ is now known as thorncp
<pabs>
brianpWins: as far as i know that's it
banisterfiend has quit [Ping timeout: 260 seconds]
jbwiv has joined #ruby-lang
Carnage\ has joined #ruby-lang
cantonic has quit [Quit: cantonic]
qwerxy has quit [Quit: offski]
cultureulterior_ has quit [Quit: cultureulterior_]
spike|spiegel has joined #ruby-lang
m3nd3s has quit [Remote host closed the connection]
m3nd3s has joined #ruby-lang
cardoni has quit [Quit: cardoni]
rekky has quit [Quit: rekky]
datanoise has joined #ruby-lang
KA_ has quit [Read error: Connection reset by peer]
robotmay has quit [Remote host closed the connection]
KA_ has joined #ruby-lang
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
emptyflask has quit [Remote host closed the connection]
BigO has joined #ruby-lang
lcdhoffman has quit [Quit: lcdhoffman]
lele has left #ruby-lang ["Leaving"]
vlad_starkov has joined #ruby-lang
Mon_Ouie has joined #ruby-lang
datanoise has quit [Read error: Operation timed out]
Croms has joined #ruby-lang
mistym is now known as mistym_lunch
vlad_starkov has quit [Ping timeout: 264 seconds]
rippa has joined #ruby-lang
vlad_starkov has joined #ruby-lang
leopard_me has quit [Quit: Computer has gone to sleep.]
rekky has joined #ruby-lang
lcdhoffman has joined #ruby-lang
isale-eko has joined #ruby-lang
benanne has joined #ruby-lang
mistym has joined #ruby-lang
mistym has quit [Changing host]
mistym has joined #ruby-lang
unsymbol has quit [Ping timeout: 252 seconds]
vlad_sta_ has joined #ruby-lang
vlad_starkov has quit [Read error: Connection reset by peer]
rippa has quit [Ping timeout: 264 seconds]
mwjcomputing has joined #ruby-lang
unsymbol has joined #ruby-lang
lcdhoffman has quit [Ping timeout: 240 seconds]
sullenel has joined #ruby-lang
methods has joined #ruby-lang
vlad_sta_ has quit [Read error: Connection reset by peer]
<naquad>
outoftime, i need a gem that will implement caching abstraction layer. e.g. it should have different caching backends implemented (file, memory, memcached, ...) that could be selected via configuration
<outoftime>
naquad: so the way ActiveSupport caching does?
<naquad>
outoftime, ermmm where can i read about that?
<cirwin>
I hadn't seen it shortened to ddef before
<banisterfiend>
whitequark: so you're saying const lookup is different in instance_eval vs class_evla ? (since ddef is different)
kurko_ has quit [Quit: Computer has gone to sleep.]
cyri_ has joined #ruby-lang
<whitequark>
banisterfiend: well, I do say that. I may be wrong.
<whitequark>
let's check.
<banisterfiend>
whitequark: ya just define a const on th singleton class of the module
BigO has quit [Remote host closed the connection]
diegoviola has quit [Ping timeout: 256 seconds]
<whitequark>
> @a = Object.new; class A; Con = 1; end; class B < A; @a.instance_eval { Con }; end
<whitequark>
=> 1
anachronistic has quit [Quit: anachronistic]
<whitequark>
weird
<banisterfiend>
oh wait..that can't be right, in the case of: module M; V = 10; end; M.class_eval { V } or M.instance_eval { V } it'll never be looked up, it doesnt look in self/ddef at all it's purely cref iirc
<whitequark>
> "Ruby constant lookup is rather tricky" HELL YES
<drbrain>
that dog is all "cone of shame? NO! Cone of unstoppable eating!"
vlad_starkov has quit [Ping timeout: 244 seconds]
<whitequark>
that all is strangely relevant to the cref discussion.
<whitequark>
sigh
elux has joined #ruby-lang
<elux>
hey guys..
<foucist>
brianpWins: just got back from a quick run.. anyways that's a pretty serious bike ride heh :) but pretty much biking on roads and highways? or were there good bike paths?
<elux>
when doing [1,2] | [2,3,4] .. but where the elements in the array are objects, which method is triggered to test equality of the objects in order to do the union?
<elux>
i tried overriding == but no luck..
<banisterfiend>
whitequark: if you look at the MRI code it's a bit weird, cos YARV originall had constants looked up in instance_eval/class_eval, but they then reverted it to match the 1.8 behaviour, but the 'reversion' looks like an obvious hack on the code to forcefully make it lookup consts the old way, it doesnt seem natural at all
<banisterfiend>
they have some weird kind of flag they set iirc
<foucist>
wmoxam: pretty nice, though it would be nice to encapsulate the duplicate parts of those and just send << or unshift methods to it i guess
BigO_ has joined #ruby-lang
<heftig>
elux: probably eql?
<elux>
good idea.. ill try it
<whitequark>
elux: eql? indeed. it's used to check if the objects have the same value
<whitequark>
elux: also, if you override #eql? you need to override #hash too
<whitequark>
otherwise all hell will break loose
<whitequark>
weird behavior in Hash, Array#uniq and whatnot
isale-eko_ has joined #ruby-lang
<banisterfiend>
whitequark: my internet is too shit to look that up, but there was some weird 'in_eval_context' thing they set that would change how constants were looked up, which wasnt in the 1.9.1 source
<banisterfiend>
whitequark: instance_exec > instance_eval in all cases IMO
<whitequark>
banisterfiend: there are valid cases for _eval family
<banisterfiend>
instance_eval breaks when used with lambdas since 1.9.2
xeviox has left #ruby-lang ["Leaving"]
<banisterfiend>
whitequark: ah i mean block-based instance_eval
<whitequark>
banisterfiend: btw, the cref hack is present with _exec too
<whitequark>
no it doesn't, nevermind
<whitequark>
2AM
<banisterfiend>
i can't think of a situation i'd want instance_eval over instance_exec, esp since instance_eval breaks with 0-arity lambdas (though arguably it's a bad idea to pass a 0 arity lambda to instance_eval)
<whitequark>
which indeed sets the NODE_FL_CREF_PUSHED_BY_EVAL flag
<banisterfiend>
i wish i could read this links, but im currentl on the equivalent of a bad dialup connection ;)
<whitequark>
well I've outlined the interesting parts
<whitequark>
the cref changes are seemingly not the same, but I do not understand this good enough yet to say for sure
<whitequark>
but the flag is definitely set on something
elux has quit [Quit: Bye!]
__butch__ has quit [Quit: Leaving.]
<banisterfiend>
whitequark: what are you working ON?
<banisterfiend>
on*
<whitequark>
banisterfiend: my ruby implementation
<banisterfiend>
whitequark: cool, is it a pure ruby one?
methods1 has quit [Quit: Leaving.]
<whitequark>
a metacircular optimizing one, with an aim of compiling efficient (as in C) code for embedded environments
cyri_ has joined #ruby-lang
cardoni has joined #ruby-lang
thinkdevcode has quit [Remote host closed the connection]
cyri_ has quit [Quit: cyri_]
zecoin has joined #ruby-lang
crudson has joined #ruby-lang
mjio has joined #ruby-lang
aetcore_ has joined #ruby-lang
aetcore has quit [Ping timeout: 240 seconds]
mupilot has quit [Read error: Operation timed out]
svyatov has quit [Quit: svyatov]
zecoin has quit [Read error: Connection timed out]
lenilson-dias has joined #ruby-lang
afgeneralist has quit [Ping timeout: 252 seconds]
sepp2k has quit [Remote host closed the connection]
<banisterfiend>
whitequark: cool
lenilson-dias has quit [Remote host closed the connection]
<kke>
does ruby only dup strings passed as arguments if they're modified? i benchmarked match_stuff(file_content) vs file_content[/stuff/] and only got 0.2% speed increase from the later (and the file is about 100kb)
<kke>
so passing around large blobs of data isn't that bad?
esad has joined #ruby-lang
<foucist>
does anyone know if there would be a good way to easily switch between .each & .reverse_each and .<< & .unshift .. i.e. pass in whether to use the opposite versions in a function?
<foucist>
i was trying .instance_eval("rev ? send(:reverse_each):send(:each)") but it doesn't seem to work lol
m3nd3s has joined #ruby-lang
<kke>
send(rev ? :reverse_each : :each)
<kke>
without instance eval
<foucist>
oh duh
methods has joined #ruby-lang
CaptainJet has quit []
dasil003 has joined #ruby-lang
<kke>
or you could add directional_each to Array with something like class Array { def directional_search(direction=:forward, &block) { direction.eql?(:forward) each(block) : reverse_each(block)} and then do ['a', 'b'].directional_each(:back) do |foo| ...
<banisterfiend>
burgestrand: sup burg, ltns, are you still as happy as you always used to be or is life grinding you down?
<methods>
oh wow didn't realize Matrix was built in ?
<foucist>
crankharder: lol [10, 8, 2].each_with_index.map {|x,i| x - [1,2,3][i]}
<banisterfiend>
methods: it's stdlib
<methods>
hm.. Matrix would be pretty good to subclass for a Vector class
<methods>
actually i think i do remember it
<burgestrand>
banisterfiend: always happy
<drbrain>
require Matrix gives you Vector also
<burgestrand>
banisterfiend: even when sweden is dark, cold, and bitter
<drbrain>
require 'matrix' I mean
<methods>
whoa.. i'll have to go and look at what they actually do though
<banisterfiend>
burgestrand: hehe, hey have you heard much about 'visby' ? im thinking about going there, is it worthwhile? and when is the best time to go?
<burgestrand>
banisterfiend: how are the sheep?
<foucist>
why does matrix require Matrix[[]] ? that's a little annoying
<banisterfiend>
burgestrand: i live in netherlands now :)
<burgestrand>
banisterfiend: cool :)
<burgestrand>
banisterfiend: august
<banisterfiend>
burgestrand: cool, what have you heard about visby btw? (if anything)
<banisterfiend>
burgestrand: i'm just interested in it after watching kiki's delivery service ;)
<burgestrand>
banisterfiend: medieval festival week in august :)
<burgestrand>
(and late summer)
<burgestrand>
banisterfiend: not much, it’s a city, on an island, have a few relatives that go there every year for summer holiday retreat
<burgestrand>
foucist: because it takes rows.
<burgestrand>
foucist: Matrix[row, row, row]
<banisterfiend>
burgestrand: thx
<methods>
yea at least vector class doesn't seem to have many things you'd want from a 3d vector class
<foucist>
burgestrand: i figured, but if you've only got one row you'd think it'd auto-detect that ;)
<burgestrand>
with stdlib you never know
<methods>
length, length squared, cross product, normailze, dot product, ability to do basic math operations on scalar or another vector, nice initialization techniques etc..
agile has joined #ruby-lang
mistym has joined #ruby-lang
mistym has quit [Changing host]
mistym has joined #ruby-lang
BlaXpirit has quit [Read error: Connection reset by peer]
Kingy has quit [Quit: Leaving]
<crankharder>
is there some kind of Statistics in stdlib that I'm missing?