apeiros changed the topic of #ruby-lang to: Nick registration required to talk || Ruby 2.0.0-p247: http://ruby-lang.org (Ruby 1.9.3-p448) || Paste >3 lines of text on http://gist.github.com
r0bby_ has quit [Excess Flood]
cads has quit [Ping timeout: 245 seconds]
dus7 has quit [Ping timeout: 245 seconds]
r0bby_ has joined #ruby-lang
RiaKoobCam_ has joined #ruby-lang
RiaKoobCam has joined #ruby-lang
RiaKoobCam_ has left #ruby-lang [#ruby-lang]
RiaKoobCam has left #ruby-lang [#ruby-lang]
havenn is now known as havenwood
<zenspider>
rawr
Technodrome has quit [Read error: Connection reset by peer]
VTLob has quit [Quit: VTLob]
vlad_starkov has joined #ruby-lang
atmosx has quit [Quit: Lost in trance]
symm- has quit [Read error: Operation timed out]
thepumpkin has joined #ruby-lang
micalexander has joined #ruby-lang
Andrevan has joined #ruby-lang
CoreData has quit [Ping timeout: 245 seconds]
thepumpkin has quit [Ping timeout: 272 seconds]
CoreData has joined #ruby-lang
jackhammer2022 has joined #ruby-lang
nathanstitt has joined #ruby-lang
fuhgeddaboudit has joined #ruby-lang
sepp2k has quit [Quit: Leaving.]
jiuweigui has quit [Quit: iQuit!]
sulo has joined #ruby-lang
vlad_starkov has quit [Read error: Connection reset by peer]
sulo has quit [Ping timeout: 246 seconds]
ecnalyr has joined #ruby-lang
ecnalyr has quit [Ping timeout: 245 seconds]
elia has quit [Quit: Computer has gone to sleep.]
marr has quit []
iliketurtles has quit [Quit: zzzzz…..]
Jeticus has quit []
havenwood has quit [Remote host closed the connection]
havenwood has joined #ruby-lang
CaptainJet has joined #ruby-lang
Thanatermesis has joined #ruby-lang
lun__ has joined #ruby-lang
havenwood has quit [Ping timeout: 245 seconds]
lun__ has quit [Ping timeout: 272 seconds]
kurko_ has quit [Ping timeout: 240 seconds]
vlad_starkov has joined #ruby-lang
kurko_ has joined #ruby-lang
marcdel has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
mistym_ has joined #ruby-lang
CoreData has quit [Quit: CoreData]
CoreData has joined #ruby-lang
mistym has quit [Ping timeout: 245 seconds]
CoreData has quit [Client Quit]
CoreData has joined #ruby-lang
mdedetrich has joined #ruby-lang
mrphs has quit [Quit: Page closed]
kurko_ has quit [Ping timeout: 260 seconds]
sulo has joined #ruby-lang
kurko_ has joined #ruby-lang
vlad_starkov has quit [Read error: Connection reset by peer]
nignaztic has quit [Read error: Connection reset by peer]
sulo has quit [Ping timeout: 240 seconds]
jonahR has quit [Quit: jonahR]
ruby-lang690 has joined #ruby-lang
ecnalyr has joined #ruby-lang
nazty has joined #ruby-lang
bf4 has joined #ruby-lang
mistym has joined #ruby-lang
mistym_ has quit [Ping timeout: 240 seconds]
ecnalyr has quit [Ping timeout: 245 seconds]
ruby-lang690 has quit [Ping timeout: 250 seconds]
|jemc| has joined #ruby-lang
jackhammer2022 has quit [Quit: Computer has gone to sleep.]
natevick has joined #ruby-lang
flip_digits has joined #ruby-lang
<flip_digits>
why does the << operator turn a hash into an array?
<ryanf>
also assert_equal hash[:one].object_id, hash[:two].object_id
<flip_digits>
ok, I don't quite understand what's going on
<flip_digits>
I see now
<ryanf>
there's only one array. you want Hash.new { |h, k| h[k] = [] }
<ryanf>
to force it to make a new array every time
<flip_digits>
ryanf: that cleared it up!
<flip_digits>
thanks
<ryanf>
no problem
<micalexander>
ljarvis: I asked earlier about being able to target cross platform home directories. Is there away to do this with recycle bins trash etc?
<micalexander>
Is there a way to move an item to the trash cross platform?
vlad_starkov has joined #ruby-lang
heftig has quit [Ping timeout: 245 seconds]
heftig_ has joined #ruby-lang
RickHull has joined #ruby-lang
thepumpkin has joined #ruby-lang
arBmind has quit [Ping timeout: 272 seconds]
arBmind has joined #ruby-lang
imperator has joined #ruby-lang
jaimef has quit [Excess Flood]
thepumpkin has quit [Ping timeout: 248 seconds]
mistym has quit [Remote host closed the connection]
mistym has joined #ruby-lang
jaimef has joined #ruby-lang
cnivolle has quit [Remote host closed the connection]
earthquake has quit [Quit: earthquake]
earthquake has joined #ruby-lang
sulo has joined #ruby-lang
sevvie has joined #ruby-lang
brianpWins has joined #ruby-lang
vlad_starkov has quit [Read error: Connection reset by peer]
bantic has quit [Quit: bantic]
nisstyre has quit [Quit: Leaving]
sulo has quit [Ping timeout: 272 seconds]
ecnalyr has joined #ruby-lang
coca_rails has joined #ruby-lang
ecnalyr has quit [Ping timeout: 245 seconds]
flip_digits has quit []
coca_rails has quit []
dwknoxy has joined #ruby-lang
jackhammer2022 has joined #ruby-lang
lun__ has joined #ruby-lang
lun__ has quit [Ping timeout: 245 seconds]
mistym has quit [Remote host closed the connection]
mistym has joined #ruby-lang
jithu has joined #ruby-lang
earthquake has quit [Quit: earthquake]
vlad_starkov has joined #ruby-lang
sevvie has quit [Ping timeout: 240 seconds]
mrpot4to_ has joined #ruby-lang
jithu has quit [Client Quit]
Barrin6 has joined #ruby-lang
guns has joined #ruby-lang
<Barrin6>
how much html and css do you need to know before learning ROR?
vlad_starkov has quit [Ping timeout: 272 seconds]
<micalexander>
Barrin6: it would help if you knew it like the back of your hand
<Barrin6>
cool cool
<Barrin6>
thanks
<Barrin6>
I need to make a bunch of websites then
<Barrin6>
because practice makes perfect :p
<micalexander>
couldn't hurt
sevvie has joined #ruby-lang
sevvie_ has joined #ruby-lang
<Barrin6>
I should start offering people free websites
<Barrin6>
to have practice and create my own portfolio
<micalexander>
Barrin6: however before you start ror, id suggest getting very familiar with ruby if you already haven't
sevvie has quit [Disconnected by services]
sevvie_ has left #ruby-lang [#ruby-lang]
<Barrin6>
yea for sure
<Barrin6>
that's the first step
<Barrin6>
I'm doing both html/css and ruby
<Barrin6>
but I don't think I would even touch ROR until like next year
<micalexander>
Well good luck with that
<Barrin6>
plus I'm planning on taking a C++ class at a junior college starting january
<Barrin6>
just to mix it up
<micalexander>
now your just crazy
bf4 has quit [Ping timeout: 272 seconds]
yfeldblum has joined #ruby-lang
ecnalyr has joined #ruby-lang
<Barrin6>
it will be hard
<Barrin6>
I have to give up a few things
<Barrin6>
like going to the gym
<Barrin6>
drinking on the weekends
<micalexander>
trust me I dont have a swimmer body
<micalexander>
I taught my self html and css in a lil lest then a year and php and js in 6 month
<micalexander>
it was tough, and that was with no working and being at it nonstop all day
<micalexander>
repetition is key.
<Barrin6>
that's awesome
<Barrin6>
I'm working 40 hours a week though
<micalexander>
and thats why I said good luck
<micalexander>
lol
<Barrin6>
what made you take up doing that?
<micalexander>
html and css is a good foundation if you wanna go web
<micalexander>
ruby is a great general purpose programming language
<micalexander>
I was always into computers and all
sulo has joined #ruby-lang
<Barrin6>
same here but I never took it up in college, I don't know why
<Barrin6>
but now here I am, trying to make up for lost time
<micalexander>
I didnt think being a tech made enough money, on top of that everybody that new I was into computers thought I new how to build websites by default
<micalexander>
try telling them there is a difference!
<micalexander>
same thing I was doing trying to make up for lost time
<micalexander>
best decision I evermade
<Barrin6>
that's awesome
<micalexander>
landed a pretty good job in the field about a year and a half after I started
<Barrin6>
what were you doing before and what was your first job? and how'd you get it?
<micalexander>
ruby is the next thing Im in the middle of trying to conquer
sulo has quit [Ping timeout: 240 seconds]
<Barrin6>
yea ruby is my first programming language
<Barrin6>
it seems fun so far
<micalexander>
I had my own business as a computer tech, and my first job is the one I have now that I started in jan of 2013
<micalexander>
Im a developer there, pretty much building wordpress sites and maintaing clients sites
<micalexander>
but I end up doing all kinda other stuff
dwknoxy has quit [Quit: Computer has gone to sleep.]
<micalexander>
writing all kinda scripts to automate difficult and random tasks
bf4 has joined #ruby-lang
<Barrin6>
that's awesome
<micalexander>
how long have u been rubing it up?
<Barrin6>
just only 2 months? I started using code academy
<Barrin6>
finished that then did some problems on projecteuler
<Barrin6>
which really HELPED alot
<micalexander>
projectular
<Barrin6>
I used it at work to automate an email
<Barrin6>
which was really a huge achievement for me
jithu has joined #ruby-lang
<Barrin6>
I currently work as a helpdesk dispatcher but I have a lot of downtime
<Barrin6>
which works out great
<micalexander>
interesting
<micalexander>
do you have any experience with html or css?
<Barrin6>
I have played around with html in the past so I'm blowing through the courses pretty easily on teamtreehouse and codeacademy
<Barrin6>
but not much
<Barrin6>
I remember making a wordpress website too
<micalexander>
ha, oh how I hate to love wordpress
<micalexander>
I wrote a wordpress automation script in bash, for my first ruby venture Im writing that script in ruby
<micalexander>
so thats what Im currently undergoing
<micalexander>
That being said does anyone have any best practices in dealing with upgrading client configs etc from app version to version
imperator has quit [Ping timeout: 240 seconds]
netShadow has joined #ruby-lang
kurko_ has quit [Quit: Computer has gone to sleep.]
banisterfiend has quit [Quit: Computer has gone to sleep.]
dwknoxy has joined #ruby-lang
Oak has joined #ruby-lang
charlespeach has quit [Quit: charlespeach]
dwknoxy has quit [Client Quit]
jithu has quit [Quit: Mother, did it need to be so high?]
<Barrin6>
sorry out of my realm
<micalexander>
can I get some good suggestions on upgrading user generated files from app version to version
<micalexander>
Its a room question, dont everyone chime in at onve
vlad_starkov has quit [Read error: Connection reset by peer]
sulo has quit [Ping timeout: 272 seconds]
tomzx_mac has quit [Ping timeout: 260 seconds]
bf4 has quit [Ping timeout: 248 seconds]
Tearan has joined #ruby-lang
Barrin6 has quit [Ping timeout: 245 seconds]
lun__ has joined #ruby-lang
aaronroyer has left #ruby-lang [#ruby-lang]
achru has joined #ruby-lang
Barrin6 has joined #ruby-lang
Tearan has quit [Ping timeout: 272 seconds]
shinnya has quit [Ping timeout: 246 seconds]
vlad_starkov has joined #ruby-lang
lupine has quit [Ping timeout: 245 seconds]
CaptainJet has quit []
charliesome has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
Tearan has joined #ruby-lang
r0bby_ is now known as robbyoconnor
zerokarmaleft has left #ruby-lang [#ruby-lang]
vlad_starkov has quit [Ping timeout: 260 seconds]
yhsgw has joined #ruby-lang
Barrin6 has quit [Quit: HydraIRC -> http://www.hydrairc.com <- *I* use it, so it must be good!]
stardiviner has joined #ruby-lang
sulo has joined #ruby-lang
marcdel has joined #ruby-lang
sulo has quit [Ping timeout: 260 seconds]
amerine has quit [Quit: Computer has gone to sleep.]
amerine has joined #ruby-lang
hahuang65 has joined #ruby-lang
Cakey has joined #ruby-lang
marcdel has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
wallerdev has quit [Quit: wallerdev]
Muz has quit [Ping timeout: 245 seconds]
Muz has joined #ruby-lang
hahuang61 has joined #ruby-lang
vlad_starkov has joined #ruby-lang
hahuang65 has quit [Ping timeout: 245 seconds]
vlad_starkov has quit [Read error: Connection reset by peer]
yhsgw has left #ruby-lang [#ruby-lang]
thepumpkin has joined #ruby-lang
jerrytgarcia has quit [Quit: WeeChat 0.4.2]
charlespeach has joined #ruby-lang
charlespeach has quit [Client Quit]
thepumpkin has quit [Ping timeout: 272 seconds]
jerrytgarcia has joined #ruby-lang
mucker has quit [Read error: Connection reset by peer]
ryez has joined #ruby-lang
Oak has quit [Ping timeout: 272 seconds]
Oak has joined #ruby-lang
lun__ has quit [Read error: Connection reset by peer]
sulo has joined #ruby-lang
nisstyre has joined #ruby-lang
lun__ has joined #ruby-lang
sulo has quit [Ping timeout: 241 seconds]
apeiros has quit [Remote host closed the connection]
apeiros has joined #ruby-lang
mucker has joined #ruby-lang
apeiros has quit [Ping timeout: 245 seconds]
h_kon has joined #ruby-lang
WeirdThall has joined #ruby-lang
Oak has quit [Ping timeout: 240 seconds]
|jemc| has quit [Ping timeout: 245 seconds]
stardiviner has quit [Ping timeout: 248 seconds]
charliesome has joined #ruby-lang
vlad_starkov has joined #ruby-lang
vlad_starkov has quit [Read error: Connection reset by peer]
DaveGomez has joined #ruby-lang
stardiviner has joined #ruby-lang
<DaveGomez>
Good night, my rspec tests are not working with autotest but I don't have any idea why is that. Everytime I run autotest I got "No tests matched spec/oracle_of_bacon_spec.rb" message, it doesn't matter if I run it inside the spec folder either, can anyone help me with this, I'm kind of new in Ruby development BTW. Thank you!
dingus_khan has quit [Read error: Connection reset by peer]
charliesome has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
Oak has joined #ruby-lang
dingus_khan has joined #ruby-lang
dagobah has joined #ruby-lang
nofxx1 has joined #ruby-lang
nofxx has quit [Ping timeout: 240 seconds]
hhatch has joined #ruby-lang
diegoviola has joined #ruby-lang
shinnya has joined #ruby-lang
mdedetrich has quit [Quit: Computer has gone to sleep.]
<maloik>
oh shit, second pic... pretty clear what path it took
x0f has quit [Ping timeout: 245 seconds]
ItSANg___ has quit [Ping timeout: 265 seconds]
sulo has quit [Ping timeout: 245 seconds]
<yorickpeterse>
yeah this weather here gets weirder every year
banisterfiend has joined #ruby-lang
<yorickpeterse>
I remember ~5 years ago or so that we had actual summers
<yorickpeterse>
now it's 2 weeks of a tiny bit of sun and then rain again
apeiros_ has joined #ruby-lang
<maloik>
to be fair, you're probably too young to make the distinction :)
<maloik>
I bet your grandparents will remember the actually weird summers
<maloik>
as in, super nice or super bad weather
ikrima has quit [Read error: Connection reset by peer]
<yorickpeterse>
They actually remarked the same
<maloik>
really?
<yorickpeterse>
though my mother lives in Denmark so their weather is even worse
dingus_k_ has joined #ruby-lang
<yorickpeterse>
"Oh yeah we had 1km of snow today"
<maloik>
banisterfiend: btw, you pinged this weekend?
apeiros has quit [Ping timeout: 245 seconds]
<maloik>
lol :D
<maloik>
I want snow :(
<maloik>
well, and mountains
skade has joined #ruby-lang
vondruch has quit [Ping timeout: 260 seconds]
<yorickpeterse>
I'd rather have snow than rain to be honest
<yorickpeterse>
at least snow can be thrown properly at people
<maloik>
so can rain, you just need a bucket
<maloik>
and people generally dont smile when that happens
<yorickpeterse>
neither do they when you throw a proper ice ball at somebody's car because they just graced you
mrpot4to_ has quit [Read error: Connection reset by peer]
ItSANgo has joined #ruby-lang
MrPot4to has joined #ruby-lang
ikrima has joined #ruby-lang
<yorickpeterse>
mind you I do dislike the teens throwing ice balls at people for no good reason
<yorickpeterse>
Though usually hitting the brakes is enough to make them run like babies
MrZYX|off is now known as MrZYX
<yorickpeterse>
(ignoring that babies can't run)
<WeirdThall>
Guys, can I get some assistance with my bot, please? I need it to check for every message sent in an IRC channel so that I can randomly 'tip' any user that types a message of longer than 'x' words/characters...I know how to check for a specific word but not for any word...how do I go about that?
<maloik>
which part do you need help with ?
<maloik>
getting the bot running, or the check for message length ?
<WeirdThall>
checking for any message
<WeirdThall>
i have th ebot already, just altering it :)
<maloik>
which bot isi t ?
<WeirdThall>
bitbot
<yorickpeterse>
WeirdThall: what IRC framework are you using?
<WeirdThall>
like I said I can do the specific word in reactions but i am stumped with ANY words/messages
MichD is now known as michd
<dominikh>
in terms of Cinch it would either be a listener for :channel, and then checking the message's length, or a match for /^.{min,}$/ with the prefix and suffix disabled
michd is now known as MichD
<maloik>
yep that regexp should do the trick
<maloik>
if what you want is specific words you'll need to look at the word delimited, not sure what that is from the top of my head
<WeirdThall>
ok, I think I have it, thanks :)
mbj has joined #ruby-lang
benlovell has joined #ruby-lang
thepumpkin has joined #ruby-lang
DouweM has joined #ruby-lang
thepumpkin has quit [Ping timeout: 248 seconds]
vondruch has joined #ruby-lang
dingus_k_ has quit [Remote host closed the connection]
dingus_khan has joined #ruby-lang
cnivolle has joined #ruby-lang
sepp2k has joined #ruby-lang
dingus_khan has quit [Ping timeout: 246 seconds]
mbj has quit [Ping timeout: 272 seconds]
ldnunes has joined #ruby-lang
heftig has quit [Ping timeout: 245 seconds]
simoz has quit [Ping timeout: 272 seconds]
lun__ has quit [Remote host closed the connection]
<r0bgleeson>
ljarvis: there's another alternative to cs
<r0bgleeson>
i cant stand cs
GaelanAintAround has joined #ruby-lang
<r0bgleeson>
i cant remember its name but it has classes & interfaces with a syntax that isn't a mutated horrible incarnation of ruby
<ljarvis>
i dont mind it, but im not totally sold, it just beats cs
<ljarvis>
js*
<r0bgleeson>
its use of @ is strange no?
<r0bgleeson>
@foo()
<ljarvis>
yeah, i avoid that and use this instead
<r0bgleeson>
same
<ljarvis>
took me forever to work out the difference between -> and =>
<r0bgleeson>
it changes 'this', right?
banisterfiend has quit [Quit: Computer has gone to sleep.]
<ljarvis>
yeah it's just context
<workmad3>
it keeps 'this' as the outer context
<ljarvis>
yep
<workmad3>
but I think it'll only rewrite @, not 'this'
<r0bgleeson>
ok, so 'this' is the same as in the calling scope
<r0bgleeson>
it avoids a js-type of instance_eval
<r0bgleeson>
is that right?
skade has quit [Read error: Connection reset by peer]
<workmad3>
I'm not sure it works on an explicit 'this' (but it might do) but essentially, yes.. '=> @foo()' compiles down to 'var _this = this; function() {_this.foo()}'
<ljarvis>
i didn't know that either
banisterfiend has joined #ruby-lang
<ljarvis>
that actually helps a lot thanks
<workmad3>
yeah, I found the easiest way to grok CS was to look at what it compiled down to in JS :)
<ljarvis>
heh right
<ljarvis>
i hope mark bates isn't in here he will dislike
<workmad3>
because it's coffeescript? :)
<ljarvis>
heh he wrote a coffeescript book and i spoke with him at arrrrcamp about cs
<ljarvis>
maloik: also i only just got around to drinking my piraate <3
<workmad3>
well, when I'm writing coffeescript I don't think in what JS it'll output now... but it was handy to get my head around how things were working initially :)
<r0bgleeson>
workmad3: you can change 'this' in JS very easily though
<r0bgleeson>
for a function call
<workmad3>
r0bgleeson: I am aware
ikrima has joined #ruby-lang
<workmad3>
r0bgleeson: that's kinda why '=>' exists in coffeescript
<maloik>
ljarvis: "just" ? its barely noon you madman!
skade has joined #ruby-lang
<workmad3>
r0bgleeson: and 'not sure it works on an explicit this' means "I'm not sure if the coffeescript compiler will rewrite 'this' to '_this' inside an => function'
<ljarvis>
maloik: eh well, at the weekend :)
<maloik>
:D
<workmad3>
r0bgleeson: whereas I know that the CS compiler will pick up @ inside a => function and compile it to _this instead of this ;)
michael_mbp is now known as zz_michael_mbp
<r0bgleeson>
workmad3: okay sure, don't doubt you dont know, but it may be able to really change 'this' instead of relying on @ syntax only
retro|cz has joined #ruby-lang
<workmad3>
r0bgleeson: I looked at the compiled output ;)
<r0bgleeson>
ah
<workmad3>
r0bgleeson: and '=>' only controls the definition, not the caller site
<r0bgleeson>
interesting
<workmad3>
r0bgleeson: it's easy to change 'this' if you have control of the call site
<r0bgleeson>
i wish it used call/changed this
<workmad3>
r0bgleeson: less easy to change without control of that :)
skade has quit [Read error: Connection reset by peer]
<r0bgleeson>
workmad3: ah right, im thinking of jquery-type callbacks
<r0bgleeson>
where you could say, func.call(blah);
sulo has joined #ruby-lang
<workmad3>
r0bgleeson: the CS compiler could have compiled '=>' down to 'var _this = this; function(){ function(){<body}.call(_this)}' I suppose ;)
face has joined #ruby-lang
<r0bgleeson>
indeed
<workmad3>
r0bgleeson: I'd probably class that as more annoying than just relying on the closure though personally :)
<r0bgleeson>
id prefer it, i hate using @foo()
<r0bgleeson>
i just dont like cs though
sulo has quit [Ping timeout: 245 seconds]
<r0bgleeson>
workmad3: can you remember the name of the new language (compiles to JS) too but has interfaces/classes with a C-style syntax?
<r0bgleeson>
really want to find it
arBmind1 has joined #ruby-lang
<ljarvis>
not dart right?
<r0bgleeson>
nah
arBmind has quit [Ping timeout: 272 seconds]
<workmad3>
what's a 'C-style syntax' for interfaces and classes?
skade has joined #ruby-lang
<r0bgleeson>
class Foo { } ?
vlad_starkov has joined #ruby-lang
<workmad3>
C doesn't have classes and interfaces
<r0bgleeson>
i wasnt referring to the syntax of classes or interfaces
<r0bgleeson>
C-style usually refers to braces to denote blocks
<ljarvis>
typescript?
<r0bgleeson>
thats it!
<r0bgleeson>
(i think)
<workmad3>
ah, ok :)
* r0bgleeson
googles
<workmad3>
r0bgleeson: the way you wrote it seemed to indicate that the classes/interfaces were 'C-like' which confused me :)
<r0bgleeson>
their site is terrible but indeed that appears to be the language i was thinking
<r0bgleeson>
their site is more like a marketing campaign than a site for a language
skade has quit [Read error: Connection reset by peer]
<ljarvis>
better than js which is loltypes
FiXato has quit [Ping timeout: 245 seconds]
<r0bgleeson>
js usually isnt too bad if you dont try to conceptualize ideas the same you would in ruby
<ljarvis>
or any language
elia has joined #ruby-lang
<r0bgleeson>
haha
<ljarvis>
maybe except php
<workmad3>
yeah, I prefer strong types to weak types, but I'm not a fan of explicit types anymore :)
<ljarvis>
right, there should be type inference at minimum
Oak has quit [Remote host closed the connection]
tbuehlmann has quit [Ping timeout: 264 seconds]
<yorickpeterse>
actually it would be neat to have a mixture of dynamic and static typing
<yorickpeterse>
biggest gripe in static typed codez is not being able to easily create, for example, an array of mixed types
<yorickpeterse>
(without having to box/unbox values)
skade has joined #ruby-lang
<yorickpeterse>
Having method argument/retval type hinting would be neat in Ruby though
<yorickpeterse>
(on language level, not in userland)
<whitequark>
yorickpeterse: yes, better box *every single value* we have
<whitequark>
and unbox it on every single operation
<yorickpeterse>
you'd have to do that anyway in those cases
<yorickpeterse>
might as well take care of it on language level so the dev doesn't have to worry about it
<yorickpeterse>
which also rules out devs fucking up things
<whitequark>
Java does what you want
<yorickpeterse>
I'd rather eat my shoe
<r0bgleeson>
served with a side of socks?
<yorickpeterse>
nah, some ketchup
<ljarvis>
java is my sekret affair
<yorickpeterse>
as per Dutch standard I need to put ketchup on everything
* yorickpeterse
is actually working on a sekret MyFirstLanguage
* yorickpeterse
is still messing with the VM
<whitequark>
yorickpeterse: don't be ignorant
<yorickpeterse>
whitequark: pot, kettle, etc
<yorickpeterse>
Don't get me wrong, it's nice to enforce consistency in data structures but there are cases where it's a massive fucking pain that you can only have an X of Ys
MichD is now known as michd
ruby-lang534 has joined #ruby-lang
Cakey has quit [Ping timeout: 240 seconds]
skade has quit [Read error: Connection reset by peer]
banisterfiend has quit [Quit: Computer has gone to sleep.]
vlad_starkov has quit [Remote host closed the connection]
pipecloud has quit [Read error: Connection reset by peer]
pipework has joined #ruby-lang
<whitequark>
yorickpeterse: pot, kettle, etc ?
<yorickpeterse>
I might be ignorant about the benefits of "purity", but I'd say that disagreeing with what I said would be ignorant to developer happiness
<yorickpeterse>
(if that sentence makes any sense)
kurko_ has joined #ruby-lang
skade has joined #ruby-lang
<whitequark>
purity? I'm really happy when I know that I'm not going to get a NoMethodError in the middle of a request because some fucker put a nil in my array of integers.
thepumpkin has joined #ruby-lang
<yorickpeterse>
should've mentioned that at the least they should be compatible
<whitequark>
you don't get what I'm saying. the types in a dynamic language are expressed in a more *specific* way than in a static language.
<yorickpeterse>
e.g. an array of Object could have MyObject given it extends Object
<yorickpeterse>
I think D actually does that, others probs too
<whitequark>
well, that's exactly what Java does :]
<whitequark>
and pretty much every language with inheritance
<whitequark>
so. what I mean is that you could sort-of write Ruby in Java by replacing all types with Object and then casting at each call site.
skade has quit [Read error: Connection reset by peer]
<whitequark>
(which is exactly what JRuby does under the cover)
<yorickpeterse>
This gets a bit annoying though when you have a language that doesn't treat native types (e.g. ints) as objects
<whitequark>
yes, that's a known design fault.
<yorickpeterse>
e.g. I think in D string *is* a class but int is not
<whitequark>
CLR gets it right for example.
<whitequark>
or IIRC rust
<yorickpeterse>
also lol thing about D: it's parses is fucking dumb
<whitequark>
dunno why D doesn't
<yorickpeterse>
can't have a method called `goto` for example
<yorickpeterse>
basically you also can't use reserved keywords in module names (e.g. float)
<yorickpeterse>
so `module foo.bar.float;` is a parse error
<yorickpeterse>
nevertheless D is a neat language
<whitequark>
that's like, every parser out there, ever
<whitequark>
except ruby.
ruby-lang534 has quit [Ping timeout: 250 seconds]
thepumpkin has quit [Ping timeout: 272 seconds]
<yorickpeterse>
it's annoying nevertheless
<whitequark>
well duh
<yorickpeterse>
"Hm, so I have a String class. Let's call it String and the module string.d....oh nope that doesn't work"
<yorickpeterse>
(even though D has namespaces in the form of Python like imports)
<whitequark>
this requires some lexer trickery which may or may not work depending on your grammar
relix has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<whitequark>
I mean, imagine this: unsigned int foo()
<whitequark>
suppose you know the declaration should start with a type, so you parse unsigned as a keyword
VTLob has quit [Quit: VTLob]
<whitequark>
you most likely want to disambiguate the next token in *lexer*, but you cannot: not enough info at that point
<whitequark>
there exist parsers which don't need that, but they're slow and/or contrived.
<whitequark>
basically you'd need unlimited lookahead, so it's PEG or GLR. the less said about PEG the better. with GLR you'll need some devilish trickery to feed semantic info into the parser.
<whitequark>
this works for ruby solely because method names always appear after "def", "." or ":"
<whitequark>
(works relatively easily)
<yorickpeterse>
you could also solve this by not introducing types as keywords
<yorickpeterse>
e.g. Int would be a class, not some magic keyword
<whitequark>
actually, nevermind, you can do that without the lexer hack
<whitequark>
that was a silly thing to say since that's exactly how I solve it in Foundry
tbuehlmann has joined #ruby-lang
banisterfiend has joined #ruby-lang
vlad_starkov has joined #ruby-lang
<yorickpeterse>
hihi
Cakey has joined #ruby-lang
heftig has quit [Ping timeout: 248 seconds]
sreffotsirk has left #ruby-lang ["❤"]
sulo has joined #ruby-lang
madb055 has joined #ruby-lang
<yorickpeterse>
re: the dynamic thing, a very low level use case would be a VM instruction for storing a string in a register
<yorickpeterse>
since you'd need a number (of some kind) for the register and a string for the value
<yorickpeterse>
Given you want a generic instruction container
<yorickpeterse>
(the alternative is to have individual ones for each instruction)
<yorickpeterse>
which isn't bad per se, but it requires a bit more coding
Cakey has quit [Ping timeout: 248 seconds]
sulo has quit [Ping timeout: 272 seconds]
<whitequark>
wat?
cads has joined #ruby-lang
<whitequark>
I don't understand what do you want to do.
yalue has joined #ruby-lang
skade has joined #ruby-lang
<yorickpeterse>
Right, so assume you have a register VM
<yorickpeterse>
In order to, for example, store a string you'd have the following instruction
<yorickpeterse>
set_string 1, "foo"
<yorickpeterse>
depending on how you'd lay things out you *might* want variant type array
<yorickpeterse>
But like I said, it depends on what route you take
michd is now known as MichD
<yorickpeterse>
I'll probably go down the route of using separate classes for instructions since that saves trouble, not sure yet
<whitequark>
this really depends on how do you want to design your VM
<whitequark>
for example if some upper layer guarantees type safety, you can just use unsafe operations to store and load a raw pointer directly
mikecmpbll has joined #ruby-lang
<whitequark>
saving space for tags and time on boxung
<whitequark>
*boxing.
<yorickpeterse>
I was also quite surprised by how few instructions you need to get some flow control/Turing madness going
tommyblue has quit [Ping timeout: 264 seconds]
h_kon has joined #ruby-lang
<yorickpeterse>
you can do with 6 or so in a very basic
<whitequark>
one ?
<yorickpeterse>
* VM
tommyblue has joined #ruby-lang
<whitequark>
one is enough. "decrement, compare and branch if zero"
<yorickpeterse>
heh
<whitequark>
google OISC
<whitequark>
fun fact: I've seen real-world, production grade, commercial implementations of OISC.
<yorickpeterse>
either way, I was thinking of send, jump, jump_if_true, jump_if_false, set_string, set_int
<yorickpeterse>
maybe set_obj for arbitrary objects, but that depends
<whitequark>
not enough to express arbitrary computation
VTLob has joined #ruby-lang
<whitequark>
send 1, ">", 2 does what? there's no comparison instruction
<whitequark>
or anything to actually compute stuff
pothibo has joined #ruby-lang
bzalasky has quit [Remote host closed the connection]
<yorickpeterse>
it would delegate all that to objects
<yorickpeterse>
instead of doing the math stuff on VM level
<whitequark>
then that's a part of your instruction set, essentially
bzalasky has joined #ruby-lang
<yorickpeterse>
Yes, but I meant individual instruction "names" or so
<yorickpeterse>
normally VMs do for example basic arimetic on VM level
<whitequark>
the lowest you can do in terms of abstract instruction sets is lambda calculus, that's two instructions: abstraction and application
achru has quit [Remote host closed the connection]
<whitequark>
there's also a form of its serialization where any binary number corresponds to a valid program
<whitequark>
useful for genetics algorithms and stuff
achru has joined #ruby-lang
skade has quit [Read error: Connection reset by peer]
<yorickpeterse>
I'd say that writing a VM has so far been one of the hardest things, probably mostly because I'm doing it in a language that's fairly unfamiliar to me (D)
<yorickpeterse>
probably could've been done by now if I did it in Ruby and didn't give a darn about webscale
<yorickpeterse>
inb4 use node.js
bzalasky has quit [Ping timeout: 246 seconds]
achru has quit [Ping timeout: 240 seconds]
<maloik>
use go man
<maloik>
srs
<maloik>
hn says so
<whitequark>
go is probably the worst language ever for writing a vm
<whitequark>
there's still no discriminated union right?
<yorickpeterse>
I looked at Go
<yorickpeterse>
I ran
<maloik>
I was only trolling :(
<yorickpeterse>
Because fuck the error handling
<yorickpeterse>
and I don't like it how they enforce structures using GOPATH
<whitequark>
yorickpeterse: actually go's error handling makes sense but I think they're not going far enough
<yorickpeterse>
Since it doesn't play nice with my project structure
<whitequark>
kill recover()
<yorickpeterse>
whitequark: it's inspired by C, and I hate that way
<yorickpeterse>
though at least it actually returns stuff
<yorickpeterse>
opposed to herp derp 1 or 0
<yorickpeterse>
or null
<whitequark>
oh, you mean the val, err := foo() stuff
<yorickpeterse>
yes
<whitequark>
yea, that's dumb
<whitequark>
if they had discriminated unions, could do ErrorOr
<yorickpeterse>
As far as I can tell if somewhere down a call chain *one* function doesn't return the error everything else is undefined behaviour
<whitequark>
undefined behavior?
<whitequark>
go doesn't have any afaik
vlad_starkov has quit [Remote host closed the connection]
<yorickpeterse>
as in, say you have calls in the form of A -> B -> C -> D
<yorickpeterse>
D fails, returns it
<yorickpeterse>
C doesn't
<yorickpeterse>
what happens in A and B?
<yorickpeterse>
Does it enforce the return of error types?
<yorickpeterse>
does it segfault?
<yorickpeterse>
or will it break that one Friday everybody is out having beer
<whitequark>
I think such code won't typecheck
<whitequark>
since A returns (val, err) and B expects just (val)
<yorickpeterse>
Not sure, couldn't find much on it
<whitequark>
pretty sure it won't.
<yorickpeterse>
basically what I found where people asking similar questions and getting shunned
<yorickpeterse>
"IT'S THE GO WAY NNGGGGG!!111"
cnivolle has quit [Remote host closed the connection]
<whitequark>
if you had discriminated unions and ErrorOr, you could write chains
<whitequark>
but in go you're only left to do ladders of ifs
<whitequark>
which is dumb.
<yorickpeterse>
"DO NOT QUESTION THE HOLY PIKE!!!"
<yorickpeterse>
etc
* yorickpeterse
waits for a build to complete
havenwood has joined #ruby-lang
pipework has quit [Disconnected by services]
<yorickpeterse>
YAY, all lights green, time to mess up stagin
<yorickpeterse>
and my typing
sepp2k1 has joined #ruby-lang
sepp2k has quit [Ping timeout: 246 seconds]
skade has joined #ruby-lang
nertzy2 has joined #ruby-lang
ecnalyr has quit [Remote host closed the connection]
ecnalyr has joined #ruby-lang
MrZYX is now known as MrZYX|off
vlad_starkov has joined #ruby-lang
skade has quit [Ping timeout: 248 seconds]
cnivolle has joined #ruby-lang
ecnalyr has quit [Ping timeout: 245 seconds]
heftig has joined #ruby-lang
cnivolle has quit [Read error: No route to host]
cnivolle has joined #ruby-lang
<yorickpeterse>
oh dang it, of course RubyGems craps out during a release build
<yorickpeterse>
grrr
<yorickpeterse>
we need a mirror
<yorickpeterse>
drbrain: ping
priodev has quit [Ping timeout: 245 seconds]
skade has joined #ruby-lang
<joonty>
rubygems seems to be having some stability ishooes at the moment
lun__ has quit [Remote host closed the connection]
skade has quit [Read error: Connection reset by peer]
lun__ has joined #ruby-lang
<yorickpeterse>
drbrain: does RubyGems have some kind of API/service where we can automatically shoot bad HTTP responses to? Basically crowdsourced pingdom (heh)
<yorickpeterse>
I've been noticing some over the past 2 weeks and I think it would be nice to somehow actually inform rubygems.org about this
wallerdev has joined #ruby-lang
<joonty>
rubygems forum?
<yorickpeterse>
Preferably automated
fuhgeddaboudit has quit [Read error: Operation timed out]
ikrima has quit [Quit: Computer has gone to sleep.]
<Elico>
I was wondering what is this number "7.3631816000e+06" literal definition ? and what do I do with it to convert it from string to real number??
CaptainJet has joined #ruby-lang
bzalasky has joined #ruby-lang
nathanstitt has joined #ruby-lang
bzalasky has quit [Read error: Connection reset by peer]
MrZYX|off is now known as MrZYX
toertore has joined #ruby-lang
bzalasky has joined #ruby-lang
toretore has quit [Ping timeout: 245 seconds]
<Mon_Ouie>
It means 7.36… × 10⁶
<Mon_Ouie>
You can just use use #to_f to convert it to a Float
yfeldblum has quit [Ping timeout: 240 seconds]
<Elico>
yes But I want to understand it a bit just to make sure I understand how to calculate it by myself..
<Elico>
I have also numbers with e+07 and e+05 then they will be X 10^5 and X 10^7 ??
<Elico>
and another case will be e+5 ??
benlovell has joined #ruby-lang
<Elico>
Mon_Ouie: thanks!!
bzalasky has quit [Remote host closed the connection]
bzalasky has joined #ruby-lang
<Mon_Ouie>
Right, the 'e' notation is multiplication by a power of ten in many programming language and calculator notations
bantic has joined #ruby-lang
<Elico>
and w e+5 ? what would that be?
<Mon_Ouie>
multiply by the fifth power of ten, 100 000
<apeiros_>
e+5 would be the same as e+05
cnivolle_ has joined #ruby-lang
<Elico>
ho OK
<apeiros_>
and e5 usually too
<Elico>
then it's a matter of describing a float point...
<apeiros_>
it's describing the magnitude
nigerianceo has joined #ruby-lang
apeiros_ has quit [Remote host closed the connection]
<Elico>
like "2.3012127742e+06" would become 2301212.7742 which is the multiplication of the original number to 1000000
cnivolle has quit [Ping timeout: 252 seconds]
<Elico>
so it's just moving the float point from 2.X to 2XXXXXXX.Y
apeiros has joined #ruby-lang
bzalasky has quit [Ping timeout: 272 seconds]
<Elico>
in a csv it's describing a number that is longer then the column size If I understood right..
skade has quit [Read error: Connection reset by peer]
apeiros has quit [Ping timeout: 272 seconds]
avengedsixfold has joined #ruby-lang
<banisterfiend>
Mon_Ouie hav eyou leanred about euler's identity yet?
avengedsixfold has left #ruby-lang [#ruby-lang]
bzalasky has joined #ruby-lang
avengedsixfold_ has joined #ruby-lang
skade has joined #ruby-lang
mucker has quit [Remote host closed the connection]
Squarepy has quit [Ping timeout: 272 seconds]
avengedsixfold_ has quit [Client Quit]
micalexander has joined #ruby-lang
avengedsixfold_ has joined #ruby-lang
micalexander has quit [Remote host closed the connection]
micalexander has joined #ruby-lang
jithu has quit [Quit: Mother, did it need to be so high?]
bantic has quit [Quit: bantic]
mistym has joined #ruby-lang
nverba has quit [Quit: Page closed]
mucker has joined #ruby-lang
nverba has joined #ruby-lang
atmosx has joined #ruby-lang
avengedsixfold_ has quit [Ping timeout: 250 seconds]
<Mon_Ouie>
e^iπ + 1 = 0 ?
elia has joined #ruby-lang
<maloik>
Anyone know of any good freelancers/agencies that have some sort connection to the ruby / rails world? Looking to (possibly) have a conference site designed and built
Squarepy has joined #ruby-lang
skade has quit [Ping timeout: 272 seconds]
<atmosx>
maloik: #rubyonrails
nverba has left #ruby-lang [#ruby-lang]
dwknoxy has joined #ruby-lang
mistym has quit [Remote host closed the connection]
flip_digits has joined #ruby-lang
<gnufied>
maloik: check PM
diegoviola has joined #ruby-lang
Squarepy has quit [Ping timeout: 245 seconds]
imperator has joined #ruby-lang
tbuehlmann has quit [Quit: Konversation terminated!]
Cakey has joined #ruby-lang
MichD is now known as michd
sulo has joined #ruby-lang
mbj has quit [Read error: Connection reset by peer]
kfpratt has joined #ruby-lang
Cakey has quit [Ping timeout: 248 seconds]
marr has quit [Ping timeout: 248 seconds]
jithu has joined #ruby-lang
nverba has joined #ruby-lang
sulo has quit [Ping timeout: 240 seconds]
bzalasky has quit [Remote host closed the connection]
_kfpratt has joined #ruby-lang
cads has quit [Ping timeout: 245 seconds]
bzalasky has joined #ruby-lang
vlad_starkov has quit [Remote host closed the connection]
kfpratt has quit [Ping timeout: 245 seconds]
mahlon has joined #ruby-lang
michd is now known as MichD
mistym has joined #ruby-lang
skade has joined #ruby-lang
mikecmpbll has joined #ruby-lang
bzalasky has quit [Ping timeout: 272 seconds]
toertore has quit [Quit: Leaving]
vlad_starkov has joined #ruby-lang
skade has quit [Ping timeout: 265 seconds]
ecnalyr has quit [Quit: Macbook has gone to sleep. . .]
mahlon has quit [Quit: nine foot long outhouse ladle]
bantic has joined #ruby-lang
skade has joined #ruby-lang
apeiros has joined #ruby-lang
relix has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
fijimunkii has joined #ruby-lang
VTLob has quit [Read error: Operation timed out]
vsevolod has joined #ruby-lang
TheMoonMaster has quit [Excess Flood]
skade has quit [Ping timeout: 245 seconds]
TheMoonMaster has joined #ruby-lang
nverba has quit [Ping timeout: 250 seconds]
VTLob has joined #ruby-lang
thepumpkin has joined #ruby-lang
vsevolod has quit [Quit: Leaving]
vsevolod has joined #ruby-lang
vsevolod has quit [Client Quit]
vsevolod has joined #ruby-lang
Pupeno_ has joined #ruby-lang
vsorlov has joined #ruby-lang
vsevolod has quit [Client Quit]
vsorlov has quit [Client Quit]
thepumpkin has quit [Ping timeout: 240 seconds]
vsorlov has joined #ruby-lang
mahlon has joined #ruby-lang
vsorlov has quit [Client Quit]
Kabaka has quit [Remote host closed the connection]
vsorlov2 has joined #ruby-lang
vsorlov2 has quit [Client Quit]
vsorlov has joined #ruby-lang
Pupeno has quit [Ping timeout: 272 seconds]
Pupeno_ has quit [Ping timeout: 245 seconds]
brianpWins has quit [Quit: brianpWins]
MrZYX is now known as MrZYX|off
Kabaka has joined #ruby-lang
diegoviola has quit [Ping timeout: 246 seconds]
__butch__ has joined #ruby-lang
tylersmith has quit [Remote host closed the connection]
nverba has joined #ruby-lang
jsullivandigs has joined #ruby-lang
cnivolle has joined #ruby-lang
CaptainJet has quit []
cnivolle_ has quit [Ping timeout: 252 seconds]
CaptainJet has joined #ruby-lang
lun__ has quit [Remote host closed the connection]
lun__ has joined #ruby-lang
sulo has joined #ruby-lang
jonahR has quit [Quit: jonahR]
lun__ has quit [Ping timeout: 245 seconds]
jonahR has joined #ruby-lang
sulo has quit [Ping timeout: 246 seconds]
ecnalyr has joined #ruby-lang
slyphon has joined #ruby-lang
shinnya has quit [Read error: Operation timed out]
vlad_starkov has quit [Remote host closed the connection]
MrZYX|off is now known as MrZYX
skade has joined #ruby-lang
mistym has quit [Remote host closed the connection]
lfox has quit [Quit: ZZZzzz…]
symm- has quit [Ping timeout: 245 seconds]
atmosx has quit [Quit: Lost in trance]
benlovell has quit [Ping timeout: 240 seconds]
dagobah has quit [Remote host closed the connection]
CaptainJet has quit [Read error: Connection reset by peer]
CaptainJet has quit [Read error: No route to host]
CaptainJet has joined #ruby-lang
MichD is now known as michd
[spoiler] has joined #ruby-lang
pipecloud has joined #ruby-lang
saarinen has joined #ruby-lang
DouweM has quit [Ping timeout: 246 seconds]
Pupeno has joined #ruby-lang
saarinen has quit [Client Quit]
cnivolle has quit [Remote host closed the connection]
saarinen has joined #ruby-lang
dhruvasagar has quit [Ping timeout: 272 seconds]
Pupeno has quit [Read error: Operation timed out]
diegoviola has joined #ruby-lang
iliketurtles has joined #ruby-lang
tylersmith has joined #ruby-lang
|jemc| has joined #ruby-lang
dr_bob has joined #ruby-lang
tylersmith has quit [Remote host closed the connection]
CaptainJet has quit [Read error: Connection reset by peer]
CaptainJet has joined #ruby-lang
tylersmith has joined #ruby-lang
yfeldblu_ has joined #ruby-lang
earthquake has joined #ruby-lang
sulo has joined #ruby-lang
yfeldblum has quit [Ping timeout: 245 seconds]
lfox has joined #ruby-lang
sulo has quit [Ping timeout: 240 seconds]
workmad3 has quit [Ping timeout: 245 seconds]
NemesisD has joined #ruby-lang
diegoviola has quit [Ping timeout: 245 seconds]
<NemesisD>
hey guys. for some reason bundler (or gem) is looking for a gem-private_key.pem when trying to install a specific gem, that path was an old variable I had set to GEM_PRIVATE_KEy
<NemesisD>
i have since unset that variable and it still persists. what do i need to do?
<MrZYX>
hm, weird. such things shouldn't be persisted but check .bundle/config and ~/.gemrc and /etc/gemrc maybe
achru has quit [Remote host closed the connection]
toretore has joined #ruby-lang
CaptainJet has quit [Read error: No route to host]
achru has joined #ruby-lang
imperator has quit [Ping timeout: 240 seconds]
<NemesisD>
MrZYX: no .bundle in the home, both gemrcs don't reference that cert path
<MrZYX>
the .bundle directory is where you run the bundle command (it's per project)
kurko_ has quit [Ping timeout: 240 seconds]
CaptainJet has joined #ruby-lang
<NemesisD>
the gemfile references ENV['GEM_PRIVATE_KEY'], i wonder if bundler is caching the computed value of that
<MrZYX>
if it does, it'd be in the .bundle directory somewhere