karapetyan has quit [Remote host closed the connection]
cschneid has joined #ruby
dreamthese has quit [Remote host closed the connection]
dreamthese has joined #ruby
nima_m_ has quit [Quit: nima_m_]
conta has quit [Quit: conta]
cschneid has quit [Ping timeout: 240 seconds]
karapetyan has joined #ruby
RougeR has quit [Ping timeout: 240 seconds]
cyberg has joined #ruby
amar_ has quit [Remote host closed the connection]
cschneid has joined #ruby
karapetyan has quit [Remote host closed the connection]
beanish has joined #ruby
karapetyan has joined #ruby
karapetyan has quit [Remote host closed the connection]
cschneid has quit [Ping timeout: 256 seconds]
beefjoe has quit [Remote host closed the connection]
synthroid has joined #ruby
cschneid has joined #ruby
psychicist__ has quit [Remote host closed the connection]
cschneid has quit [Ping timeout: 256 seconds]
psychicist__ has joined #ruby
cschneid has joined #ruby
<syndikate>
Date.strptime gave me this error Exception: invalid strptime format - `%F'. I can't figure what %F is. My date to parse is of the format this "14 Jul 2018"
<dminuoso>
Though I guess that is as good as it will get.
nowhereman_ has quit [Ping timeout: 260 seconds]
beanish has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
za1b1tsu has quit [Quit: WeeChat 2.1]
omth has quit [Ping timeout: 240 seconds]
zautomata has joined #ruby
roamingdog has joined #ruby
fmcgeough has joined #ruby
fmcgeough has quit [Client Quit]
cschneid has quit [Ping timeout: 260 seconds]
jamesaxl has joined #ruby
roamingdog has quit [Ping timeout: 255 seconds]
cabotto has quit [Remote host closed the connection]
<konsolebox>
syndikate: i'm unable to reproduce that error message. i only get 'invalid date'. perhaps show a code.
cabotto has joined #ruby
<syndikate>
konsolebox, I am just trying it out in irb
vovs03 has quit [Remote host closed the connection]
KeyJoo has quit [Read error: Connection reset by peer]
cschneid has joined #ruby
<apeiros>
syndikate: try a strftime with %F to see what components it is
beanish has joined #ruby
<apeiros>
I'm sure you'll quickly figure how to rewrite %F ;-)
<apeiros>
(it doesn't match 14 Jul 2018 btw.)
<syndikate>
%F - The ISO 8601 date format (%Y-%m-%d)
<syndikate>
That doesn't match what I gave
<syndikate>
Hence my argument is wrong
<apeiros>
ok, so your question is not what you wanted to ask for
anisha_ has joined #ruby
<syndikate>
Yeah, I think I got confused there with couple of issues
<apeiros>
Jul is %B
<apeiros>
I guess the other two you can figure?
cschneid has quit [Ping timeout: 240 seconds]
anisha has quit [Ping timeout: 276 seconds]
<syndikate>
Okay, I need to clarify couple of things. If not template is passed strptime uses %F
<syndikate>
That's correct, right?
cschneid has joined #ruby
Rapture has joined #ruby
<apeiros>
you can ask the docs :)
<apeiros>
Date.strptime([string='-4712-01-01'[, format='%F'[, start=Date::ITALY]]]) -> date
<apeiros>
I'd say yes, default is %F
<dminuoso>
Gah okay this is getting annoying now.
beanish has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<apeiros>
dminuoso: oooh, german error messages in json :D
<syndikate>
I was looking at the source code of that method. So, my conclusion is that I was passing wrong string format.
<apeiros>
dminuoso: .save! and rescue different exceptions? (unless I misremember)
<dminuoso>
apeiros: these errors will eventually be transported into my React application
<dminuoso>
The rails way of i18n is a mess and annoying to use
<syndikate>
I should have used this Date.strptime('7 Jul 2018', "%d %b %Y")
<dminuoso>
Besides I dont have any internationalization needs
<apeiros>
I figured. got to disconnect for a bit now, though, since I have to make a phone call :)
<apeiros>
more or less concur @ rails i18n being a mess.
<apeiros>
laters :)
<dminuoso>
o/
apeiros has quit []
<syndikate>
Now, my actual problem here is that my backed expects another format and teh frontend provides another
<syndikate>
By aperios
<syndikate>
Oh too late
<syndikate>
apeiros*
<syndikate>
Time to talk to frontenders
<dminuoso>
14:43 syndikate | Now, my actual problem here is that my backed expects another format and teh frontend provides another
<dminuoso>
Why is that a problem
<syndikate>
I have a validator send to expect a format and parsing happens with that format
<syndikate>
Set to expect*
def_jam has joined #ruby
eb0t_ has joined #ruby
<syndikate>
I have other views providing the date in the expected format
eb0t has quit [Ping timeout: 245 seconds]
eblip has quit [Ping timeout: 245 seconds]
<syndikate>
I would prefer everything to be unique
agent_white has joined #ruby
<syndikate>
And not add an extra case for a specific page
<syndikate>
Hope that makes sense dminuoso
def_jam is now known as eb0t
eb0t_ is now known as eblip
cschneid has quit [Ping timeout: 264 seconds]
nowhereman_ has joined #ruby
<dminuoso>
No.
<syndikate>
Okay, so how do you say this can be solved? I have some code in backend which expects Date.strptime('date_string', EXPECTED_FORMAT)
<syndikate>
This is being used at multiple places
<syndikate>
Hence everywhere that format is _expected_
amar_ has joined #ruby
InfinityFye has joined #ruby
InfinityFye has quit [Client Quit]
cabotto has quit [Remote host closed the connection]
<agent_white>
Mornin' folks
cabotto has joined #ruby
<dminuoso>
syndikate: I still dont understand what your problem is.
<syndikate>
Oh okay.
<dminuoso>
syndikate: You could a) force all parts to use iso8601 which will reduce headaches.
<dminuoso>
Or b) explain what your problem is.
<syndikate>
dminuoso, I am moving towards something similar to a. I will get to b.
cschneid has joined #ruby
<dminuoso>
syndikate: format is a representation issue.
dionysus69 has quit [Ping timeout: 264 seconds]
<dminuoso>
Not a processing issue.
conta has joined #ruby
jcalla has joined #ruby
karapetyan has joined #ruby
t0xik has quit [Quit: Connection closed for inactivity]
karapetyan has quit [Ping timeout: 240 seconds]
jcalla has quit [Ping timeout: 256 seconds]
cschneid has quit [Ping timeout: 240 seconds]
cabotto has quit [Remote host closed the connection]
fmcgeough has joined #ruby
jottr_ has joined #ruby
walidvb has joined #ruby
cschneid has joined #ruby
ElFerna has joined #ruby
ElFerna has quit [Client Quit]
<walidvb>
hey all, i'm having trouble with v8, libv8 and mini_racer using bundler
<walidvb>
running on Mac OS X 10.13
amar_ has quit [Ping timeout: 245 seconds]
jottr_ has quit [Ping timeout: 260 seconds]
<walidvb>
somehow it seems i cannot get the versions to match. i have installed v8 via brew(which installed 5.1), then libv8(using gem i libv8 -v 5.3.332.38.5 -- --with-system-v8), and tried installing mini_racer the same way, which seemed to do the trick
beanish has joined #ruby
<walidvb>
i have successfully run my rails app. I then added a gem, ran bundle again, and starting the app now gives me a Symbol not found error
<walidvb>
if that rings a bell to anyone, would greatly appreciate some help configuring this
<walidvb>
yeah i've been through that.. worked on it 3-4 hours, for it to finally work. sprung my server, was working fine, added a gem, added an empty class, restarted my server to get access to these, it had stopped working
<walidvb>
although i don't think running bundle would touch anything on installed gems, no?
cschneid has joined #ruby
gnufied_ has joined #ruby
<havenwood>
walidvb: it doesn't `pristine` installed gems that don't change, but dependencies will re-resolve when you add a gem.
fluxAeon has joined #ruby
<havenwood>
walidvb: Sounds like a frustrating issue. Can you revert the Gemfile.lock and confirm it still works post-reboot?
<walidvb>
very frustrating indeed ^^
<walidvb>
argh in the meantime i remove libv8, is recompiling now
<walidvb>
but i did revert and tried to run, had the same issue
<walidvb>
seems like smth to do with the wrong versions/paths being used, i would say
karapetyan has joined #ruby
<walidvb>
(which is running since 10 minutes, i think.. -.-)
conta has quit [Quit: conta]
soniya29_ has quit [Ping timeout: 276 seconds]
soniya29 has quit [Ping timeout: 276 seconds]
<walidvb>
(and bundler hasn't told me this would take time, which it usually does)
cschneid has quit [Ping timeout: 240 seconds]
nima_m has quit [Quit: Connection closed for inactivity]
karapetyan has quit [Ping timeout: 256 seconds]
kryptoz has joined #ruby
amar_ has joined #ruby
bmurt has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
crankharder has quit [Ping timeout: 240 seconds]
amar_ has quit [Ping timeout: 260 seconds]
sysvalve has quit [Ping timeout: 264 seconds]
zach_ has quit [Quit: Page closed]
karapetyan has joined #ruby
taylorzr has joined #ruby
suukim has quit [Ping timeout: 245 seconds]
<walidvb>
havenwood: it could be that i had some bundle configs when it was working, i just can't figure out exactly which
sysvalve has joined #ruby
aupadhye has quit [Ping timeout: 265 seconds]
p4p0l0 has quit [Remote host closed the connection]
<walidvb>
havenwood: still here?
kryptoz has quit [Remote host closed the connection]
<walidvb>
i'm now reinstalling everything. libv8 installs fine(--with-system-v8), but mini_racer gives me a Libv8 location not found(whether i run it with or without --with-system-v8)
<walidvb>
btw i uninstalled and reinstalled v8 (with brew uninstall v8 && brew install v8)
kryptoz has joined #ruby
amar_ has joined #ruby
taylorzr has quit [Ping timeout: 265 seconds]
nowhereman_ has quit [Ping timeout: 256 seconds]
nowhere_man has joined #ruby
amar_ has quit [Ping timeout: 256 seconds]
starseed0000 has quit [Ping timeout: 276 seconds]
Bish has quit [Ping timeout: 264 seconds]
chouhoulis has joined #ruby
biberu has quit []
starseed0000 has joined #ruby
p4p0l0 has joined #ruby
cschneid has joined #ruby
apparition47 has quit [Quit: Bye]
kryptoz has quit [Remote host closed the connection]
chouhoulis has quit [Remote host closed the connection]
chouhoulis has joined #ruby
kryptoz has joined #ruby
tdy has quit [Ping timeout: 248 seconds]
p4p0l0 has quit [Ping timeout: 245 seconds]
codymj has joined #ruby
kryptoz has quit [Remote host closed the connection]
tdy has joined #ruby
cabotto has joined #ruby
kryptoz has joined #ruby
akaiiro has joined #ruby
<darix>
walidvb: system libv8 and the libv8 gem can be tricky
<darix>
as it is really picky about which versions work
<dbrandon>
3l10s0m3ga5
<darix>
dbrandon: stop using my password please.
<walidvb>
yeah is quite tricky indeed
BloopMonsterOMG has quit [Quit: WeeChat 2.1]
<walidvb>
i ended up updating both libv8 and mini_racer, seems to have done the trick
<walidvb>
tests running fine :)
<walidvb>
don't think i require to understand more right now ;)
<walidvb>
thanks all for your help, appreciated!
chouhoulis has quit [Remote host closed the connection]
suukim has joined #ruby
shinnya has quit [Ping timeout: 264 seconds]
chouhoulis has joined #ruby
Es0teric has joined #ruby
walidvb has quit [Ping timeout: 256 seconds]
walidvb_ has joined #ruby
Es0teric has quit [Quit: Computer has gone to sleep.]
Burgestrand has quit [Quit: Closing time!]
beanish has quit [Ping timeout: 265 seconds]
andikr has quit [Remote host closed the connection]
p4p0l0 has joined #ruby
p4p0l0 has quit [Remote host closed the connection]
p4p0l0 has joined #ruby
clemens3 has quit [Ping timeout: 240 seconds]
weird_error has joined #ruby
p4p0l0 has quit [Remote host closed the connection]
p4p0l0 has joined #ruby
ellcs has quit [Remote host closed the connection]
alem0lars has joined #ruby
beefjoe has quit [Remote host closed the connection]
cagomez has joined #ruby
cagomez has quit [Read error: Connection reset by peer]
cagomez has joined #ruby
kryptoz has quit [Remote host closed the connection]
orbyt_ has joined #ruby
kryptoz has joined #ruby
akaiiro has quit [Remote host closed the connection]
Dbugger has joined #ruby
guille-moe has quit [Ping timeout: 245 seconds]
GodFather has quit [Ping timeout: 264 seconds]
walidvb_ has quit [Remote host closed the connection]
starseed0000 has quit [Ping timeout: 276 seconds]
gheegh has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
cagomez has quit [Remote host closed the connection]
cagomez has joined #ruby
cagomez has quit [Read error: Connection reset by peer]
cabotto has quit [Remote host closed the connection]
alem0lars has quit [Ping timeout: 248 seconds]
cagomez has joined #ruby
akaiiro has joined #ruby
biberu has joined #ruby
<ljarvis>
o/
orbyt_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<headius>
havenwood: hey do you have a set of benchmarks you're seeing JRuby+Graal do really well on?
<headius>
I'm going to be doing a talk at the JVM Language Summit on the perf improvements we're seeing with Graal *not* using Truffle
anjen has joined #ruby
pankaj has joined #ruby
jenrzzz has joined #ruby
<pankaj>
Is their any most preferred website used by ruby users particularly to download and use html themes for free so that to be used in their projects?
dreamthese has quit [Read error: Connection reset by peer]
soniya29__ has joined #ruby
clemens3 has joined #ruby
dreamthese has joined #ruby
alem0lars has joined #ruby
alem0lars has quit [Max SendQ exceeded]
lytol has quit [Remote host closed the connection]
alem0lars has joined #ruby
alem0lars has quit [Max SendQ exceeded]
alem0lars has joined #ruby
soniya29_ has quit [Ping timeout: 255 seconds]
soniya29 has quit [Ping timeout: 265 seconds]
<cthu|>
guys, can I create objects directly in a function call args?
<cthu|>
oh, so .class returns the actual class, not its name
<cthu|>
hell this language is soo cool
<cthu|>
feels like being a root on production
cagomez has joined #ruby
conta1 has joined #ruby
soniya29__ has quit [Remote host closed the connection]
soniya29 has quit [Remote host closed the connection]
cagomez has quit [Ping timeout: 260 seconds]
discopatrick has joined #ruby
<Eiam>
cthu|: if you cannot understand it after you've written it, it might be wrong for other reasons
<Eiam>
doing weird shit is fun and cool until you get a bug report that you've got to sort out, and who knows what the asshole that was yourself wrote two weeks ago. I hate that jerk, always screwing me over.
<Eiam>
havenwood: I assumed when name && dl_var_val match, add it to my select
<havenwood>
cthu|: Is that example ^ what you're trying to do? See if any twoquals the string or match the regexp?
<Eiam>
otherwise, discard.
<havenwood>
Eiam: Oh, I think you're right now. Haha.
<Eiam>
like how some people write if (blah) return true instead of just writing (blah)
guille-moe has quit [Ping timeout: 245 seconds]
<Eiam>
because they don't understand or like that the last statement "returns" in ruby and the evaluation of an if already "returns" its result without needing to force it
jenrzzz has joined #ruby
<Eiam>
havenwood: we will remain forever in limbo until cthu| graces us with an answer.
<havenwood>
cthu|: Amended that ^ gist with a #select example.
<Eiam>
havenwood: I like how both do the right thing either way lol
<Eiam>
like no code changes except for .any vs .select
Mqll has quit [Client Quit]
<Eiam>
havenwood: I really feel like there is a way to condense the string & regexp case into a single comparison anyway
<Eiam>
but I was tired of fiddling with it and I hate regexp anyway
<Eiam>
any string that passes == will also pass =~ , no?
<Eiam>
but many things can pass =~ and fail ==
karapetyan has joined #ruby
<havenwood>
Eiam: threequals should do the trick, right?
<havenwood>
Eiam: It just might threequals other things. ;-O
<dminuoso>
cthu|: blocks, methods and local variables are not.
<apeiros>
but most cases which aren't, are implementation details.
<apeiros>
variables are not objects, and ^
<cthu|>
aha!!
<dminuoso>
Though the first two can be reified.. so.
<cthu|>
that's it, thanks a lot, folks, love ya
<apeiros>
you can turn blocks & methods into objects, though
<elomatreb>
OK, "every value is an object" is more correct (and kind of what I meant)
<apeiros>
also any implementation could choose to have those as objects all the time.
<apeiros>
elomatreb: :D
<cthu|>
should I avoid === for regex matching?
<cthu|>
it looks too convenient to be true
* dminuoso
avoids === generally
<dminuoso>
It just doesn't have well defined semantics.
<cthu|>
so next works
<cthu|>
thanks a lot for it
<cthu|>
now I'll try to avoid next with ===
<elomatreb>
=== does all kinds of stuff depending on the left-hand side. If the LHS is a class it does instanceof checks, if it's a range it does inclusion checks, etc
<cthu|>
woooooooooow
<dminuoso>
Exactly. "Does all kinds of stuff" with no common theme is bad in my book.
<cthu|>
hooooly mooole
<cthu|>
on the left side, huh?
fredlinhares has quit [Quit: WeeChat 1.4]
<cthu|>
so the regex should be on the left
<apeiros>
it's a method
<cthu|>
every operation is a method
<elomatreb>
And like any other method you can override for your own classes, e.g. there's an IP address class in the standard library that does subnet inclusion IIRC
<dminuoso>
cthu|: Not quite.
<apeiros>
what methods do always depends on the receiver
<apeiros>
i.e. "left side"
<dminuoso>
cthu|: Ruby has keywords...
<cthu|>
dminuoso, what's not a method?
<apeiros>
`defined?` f.ex.
<dminuoso>
Anything that is not a method?
<apeiros>
`alias`
Dbugger has quit [Remote host closed the connection]
<elomatreb>
Simple assignment
<apeiros>
ternary is also an operator
<cthu|>
right
<dminuoso>
lambdas..
<cthu|>
ok, ok
<cthu|>
got it :)
<apeiros>
lambda otoh is a method :D
<dminuoso>
apeiros: what does `a = ->(){}` invoke?
<bougyman>
dminuoso: nil
<cthu|>
what is ->
<cthu|>
I know it penetrates
<apeiros>
dminuoso: does it invoke something? I actually never bothered to check
<elomatreb>
"stabby lambda" syntax
<dminuoso>
asm>> a = ->(){}
<ruby[bot]>
dminuoso: I have disassembled your code, the result is at https://eval.in/1028035
<elomatreb>
Similar to arrow functions in JS
<dminuoso>
Ah I guess it does call Kernel#lambda
<cthu|>
bleh
<cthu|>
I hate that concept in JS
<dminuoso>
It's about the one redeeming feature of the language.
<cthu|>
redeeming?
<cthu|>
more like confusing
tty has quit [Read error: Connection reset by peer]
* dminuoso
pokes elomatreb
* elomatreb
pokes back
<dminuoso>
Oh havenwood, so I want proper profunctor optics in Ruby.
<dminuoso>
Taking a deep dive into lenses currently, they are a godsend in JavaScript.
jottr_ has joined #ruby
tty has joined #ruby
<Eiam>
-> and lambda aren't the same thing
biberu has quit []
<Eiam>
swear I had some code a few months ago I wrote as lambda { blah} and later tried to convert lambda to -> and it stopped working
<Eiam>
didn't have time to dig into what was up other than to realize they clearly aren't the same
<dminuoso>
asm>> add = -> a, b { a + b }
<ruby[bot]>
dminuoso: I have disassembled your code, the result is at https://eval.in/1028038
<dminuoso>
asm>> add = lambda { |a, b| a + b }
<ruby[bot]>
dminuoso: I have disassembled your code, the result is at https://eval.in/1028039
<RougeR>
damn
<dminuoso>
Eiam: There's some freaking annoying subtle differences because Japananese reasons.
agent_wh1te has joined #ruby
<RougeR>
coming from ruby ive forgotten how weird python functions look...
<RougeR>
they just...trail off
<apeiros>
Eiam: proc and lambda are not the same thing
<apeiros>
Eiam: -> and lambda are
<havenwood>
Eiam: Did you maybe forget to change the way the args are expressed?
<apeiros>
lambda enforces arity (like methods), proc does not (like blocks)
<apeiros>
RougeR: like lonesome cowboys?
<RougeR>
return also functions differently between proc and lambda
<Eiam>
havenwood: that may have been what it was. I did something like blah = lambda {code} then later just tried to swap it and it failed
<RougeR>
apeiros: yes
<cthu|>
I think using end is awkward. I would enjoy python's way
<cthu|>
even JS's way feels better
<RougeR>
i like end and {}
redlegion has quit [Remote host closed the connection]
<cthu|>
yeah
<apeiros>
RougeR: now I have the image of lucky luke riding off in my mind.
<Eiam>
havenwood: like how each_with_object and reduce swap around their paramaters, so annoying.
<RougeR>
i just dont like having nothing
<havenwood>
Eiam: Usually it's the args, since they're different. Aye.
<cthu|>
lol
<RougeR>
cthu|: but in python it looks like you forgot to finish the function
<cthu|>
indentation is something
<dminuoso>
Eiam: dont use each_with_object and just manually zip? *shrugs*
<RougeR>
it just trails off and then the code continues
redlegion has joined #ruby
<dminuoso>
Eiam: Or in that case properly reduce?
<havenwood>
apeiros: I've seen, "Name all the differences you know between a proc and a lambda" several times in Ruby interviews. A great opportunity to bring up Tennet's correspondence principle. ;-P
<cthu|>
I hate finishing it with ends though. feels like overexplicit
<dminuoso>
Eiam: The argument order is normal for a left fold though.
jottr_ has quit [Ping timeout: 276 seconds]
<Eiam>
dminuoso: I don't use each_with_object at all because it didn't exist when I started Ruby and I'm used to reduce already. =p
<dminuoso>
havenwood: one sucks, the other doesnt.
<dminuoso>
done.
<cthu|>
defininng funcion now right now yes defining!
<RougeR>
ive never even made my own procs or lambdas outside of a learning exercise
<apeiros>
havenwood: don't tell me I'd fail because I haven't even heard of that principle?
<RougeR>
i might have some code interview soon..
<RougeR>
well
agent_white has quit [Ping timeout: 256 seconds]
<RougeR>
i have 2 interviews tommorow
<apeiros>
anyway, the difference between lambda and proc is 6
<havenwood>
apeiros: haha
schleppel has quit [Quit: Konversation terminated!]
<RougeR>
one is with a tiny startup
<Eiam>
havenwood: haha my opening Ruby question is always "Explain the difference between reduce, inject, select and each on an array"
<RougeR>
the other is a big startup
<havenwood>
apeiros: I'd summarize the principle as, "there are reasons for a different return locale."
<havenwood>
Yehuda wrote a post on it that I think has been lost to the sands of time.
<apeiros>
Eiam: I hope they fail if they don't mention that inject was there first.
<apeiros>
havenwood: "return locale" meaning where return returns to?
<Eiam>
apeiros: its there to see if they know they are the same thing
<havenwood>
apeiros: aye
<RougeR>
inject = accumulator, each = iterator, select = matcher,
<Eiam>
I've had people who clearly knew the other ones INVENT differences
<apeiros>
Eiam: I hate that part about rubys numerous aliases
<dminuoso>
inject = fold
<Eiam>
thinking there *Was* a diffference
<RougeR>
i cant remember reduce off top of head
<dminuoso>
each = traverse
<dminuoso>
select = uhh what is this.
<apeiros>
Eiam: there are some methods which *seem* to be aliases but aren't.
<RougeR>
dminuoso: iterator is a better descriptor
<apeiros>
and due to all the aliases, you never really know whether that's such a case :(
<Eiam>
its not a pass/fail question anyway, I'm just trying to get a ball rolling to discuss stuff.
<havenwood>
sticklers are saying it's "Tennent’s principle of qualification", anyhoo
<apeiros>
Eiam: anyway, to continue on my previous patter, the difference between each and reduce is of course 5
<RougeR>
oh fukin
<RougeR>
reduce and inject are the same
<RougeR>
aliases
<Eiam>
apeiros: not to be confused with the 6 for proc & lambda. got it, you are hired!
<havenwood>
"Tennent’s principles are very powerful because violations of them tend to show up in the language as flaws, irregularities, unnecessary restrictions, unexpected interactions or complications, and so on."
<apeiros>
Eiam: of course, I'm purrfect.
<Eiam>
when can you start!
<Eiam>
please refactor all my rubys
<apeiros>
I can't. dminuoso has to show me haskell first.
<apeiros>
so it retains the case-insensitiveness for the foo part
<cthu|>
wooooooow
<cthu|>
this is so cool
<havenwood>
cthu|: so do ignore case, but don't treat a newline as a . matching char, and ignore whitespace and comments
<elomatreb>
Check out the extended mode too, godsend tbh
<cthu|>
not gonna use it, but it's amazing to know!
<apeiros>
it is useful e.g. when you want to translate a BNF into a regex (think e.g. email validation)
<cthu|>
yeh right
<elomatreb>
.+@.+\..+ # done
maiz has quit [Ping timeout: 264 seconds]
<havenwood>
A too little-known Ruby Regexp delimiter is: /o
<elomatreb>
:P
<apeiros>
elomatreb: lel
<apeiros>
elomatreb: you have NO IDEA SIR, NO IDEA I TELL YOU!!!!1!elf!1!
<cthu|>
that will match .@...
<havenwood>
Perform interpolation only once! Without the /o it'll interpolate each time it's evaluated.
<cthu|>
hehe
<elomatreb>
Yeah, email matching is kind of a bad example because pretty much no matter what you do you do something wrong
<cthu|>
lol :)
<apeiros>
elomatreb: no?
<apeiros>
translate the BNF :)
<cthu|>
Beautiful Non-email Form
<elomatreb>
Then you can run into trouble with your application layer accepting email addresses, while the underlying delivery infrastructure does not
<apeiros>
at least that's what I did. granted I adjusted it a bit since I actually don't want to allow all valid email addresses (e.g. no comments in the address please, also no newlines - yes, both exist)
<elomatreb>
And depending on how good you log you can lose emails to oblivion
<apeiros>
elomatreb: no. the problem is almost always the app layer.
<apeiros>
MTAs are mostly capable of handling addresses. they usually struggle elsewhere :D
<apeiros>
(not sure about utf-8 capab, tho, but IME that's quite good by now too)
<elomatreb>
The part of the stack that actually sends the email from your server to the destination server
<dminuoso>
But in the end you care about deliverability, not conformity.
<dminuoso>
Because most mail software is not RFC 822 compliant
jenrzzz_ has joined #ruby
AJA4350 has joined #ruby
<jidar>
I doubt ... is a valid tld
<havenwood>
headius: I've spotted some where JRuby+Graal definitely fly. I'll see if I can put together a few examples tonight.
<elomatreb>
Did my bouncer swallow the emoji? It's <middle finger emoji>@, didn't want to share their email
jenrzzz has quit [Ping timeout: 245 seconds]
<headius>
havenwood: that would be great...I'm trying to show that we've got a good long future ahead of us just by leveraging Graal and making incremental improvements to JRuby
<headius>
and also to show that Graal is great with or without Truffle
<jidar>
elomatreb: oh, it generally depends on the terminal, lots of emoji don't show up
<elomatreb>
It does locally for me, but I know ZNC likes to meddle with encoding