asterite changed the topic of #crystal-lang to: #crystal-lang The Crystal programming language | http://crystal-lang.org | Crystal 0.6.1 | Paste > 3 lines of text to https://gist.github.com | GH: https://github.com/manastech/crystal - Docs: http://crystal-lang.org/docs/ - API: http://crystal-lang.org/api/ - Logs: http://irclog.whitequark.org/crystal-lang
<havenwood> The Ruby extension in Crystal proof of concept got me wanting to embed MRuby in a Crystal Ruby extension. Ruby in your Crystal in your Ruby if you will.
<jhass> logo could get tricky
sadin has joined #crystal-lang
<havenwood> Having fun playing with it anyways. Here's a stab at "Hello, world!": https://gist.github.com/havenwood/afc514180e9aa18caaf2
<havenwood> I have no clue what I'm doing. Just stabbing at it until it seemingly works. >.> Was curious for any feedback! ;)
<jhass> neat
<havenwood> I was just stoked it worked!
<jhass> I know that feeling
<jhass> we got a csfml binding now: https://github.com/BlaXpirit/crsfml
<havenwood> \o/
sadin has quit [Ping timeout: 256 seconds]
<Flaise> Stupid question: what's csfml?
<jhass> the c api to SFML
<a5i> is Crystal was available for windows
<a5i> would that lib work for it?
<jhass> likely, probably some minor adjustments but its a crossplatform lib after all
havenwood has quit [Ping timeout: 240 seconds]
havenwood has joined #crystal-lang
ismaelga has quit [Remote host closed the connection]
<a5i> ah ok
<a5i> well I really want windows version now :P
<jhass> dunno, I don't need windows for anything
<a5i> I do since thats the OS I have atm
<a5i> jhass, do u remember who made lwan C library ?
<a5i> the really fast http lib
<jhass> no, I suck at remembering names
<a5i> o
havenn has joined #crystal-lang
havenwood has quit [Ping timeout: 264 seconds]
havenn has quit [Ping timeout: 264 seconds]
havenwood has joined #crystal-lang
<Flaise> jhass: Oh, that. I knew about SFML but I didn't realize there was a separate name for the C version.
<Flaise> Used it before. It's not amazing but it's ok for simple projects, at least. Never made anything complex with it.
<a5i> >> #hi
<DeBot> a5i: nil
<a5i> >> #a5i's stuff
<DeBot> a5i: nil
<a5i> jhass, it was sadin :P
havenn has joined #crystal-lang
havenwood has quit [Ping timeout: 248 seconds]
havenwood has joined #crystal-lang
havenn has quit [Ping timeout: 240 seconds]
leafybasil has quit [Remote host closed the connection]
shama has quit [Remote host closed the connection]
shama has joined #crystal-lang
JBat has joined #crystal-lang
havenwood has quit [Remote host closed the connection]
BlaXpirit has joined #crystal-lang
JBat has quit [Quit: Computer has gone to sleep.]
sandelius has joined #crystal-lang
Flaise has quit [Quit: Leaving.]
DerisiveLogic has joined #crystal-lang
sandelius has quit [Quit: Textual IRC Client: www.textualapp.com]
a5i has quit [Quit: Connection closed for inactivity]
canhtak has joined #crystal-lang
barosl__ has quit [Quit: Leaving]
canhtak has quit [Quit: canhtak]
shama has quit [Remote host closed the connection]
canhtak has joined #crystal-lang
DerisiveLogic has quit [Ping timeout: 245 seconds]
waterlink has joined #crystal-lang
Ven has joined #crystal-lang
sadin has joined #crystal-lang
sadin has quit [Client Quit]
waterlink has quit [Ping timeout: 264 seconds]
shama has joined #crystal-lang
shama has quit [Ping timeout: 245 seconds]
Ven has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Ven has joined #crystal-lang
<BlaXpirit> how to handle out-arguments in object wrapper?
<BlaXpirit> I used to do CSFML.window_poll_event(window, out event)
<BlaXpirit> how to wrap it?
canhtak has quit [Quit: canhtak]
<jhass> def poll_event; CSFML.window_poll_event(@this, out event); Event.new(event); end; I guess?
<BlaXpirit> jhass, oh but it also returns bool
<BlaXpirit> i'd really like to keep the out-semantics
Ven has joined #crystal-lang
<jhass> what does the bool mean?
<BlaXpirit> while CSFML.render_window_poll_event(window, out event) != 0: deal with event
<jhass> ah
<jhass> okay, give me a minute
<jhass> BlaXpirit: http://paste.mrzyx.de/pxixnpbcy I'd suggest to do it like this
<BlaXpirit> :|
<jhass> if the caller wants to stop earlier he just calls break
<jhass> and you could add a convenience method that just return a single one
<BlaXpirit> this is just one case
<BlaXpirit> here's more: intersects(rect1, rect2, out intersection): bool
<BlaXpirit> well yeah, that's actually obvious
<BlaXpirit> just that it requires manual intervention
<jhass> that one I'd wrap as returning the intersection or nil if there's none
<BlaXpirit> yes, yes
canhtak has joined #crystal-lang
ponga has joined #crystal-lang
ponga has quit [Remote host closed the connection]
Ven has quit [Read error: Connection reset by peer]
Ven has joined #crystal-lang
JBat has joined #crystal-lang
Ven has quit [Ping timeout: 264 seconds]
<BlaXpirit> https://github.com/BlaXpirit/crsfml/blob/master/examples/simple.cr crashes the compiler :( please help diagnose
<jhass> I can confirm, are you on llvm 3.6 or 3.5?
<BlaXpirit> i dont know
<BlaXpirit> 3.5.1 apparently
<jhass> okay, you may want to compile a compiler with bin/crystal build --debug src/compiler/crystal.cr -o debug_crystal and then valgrind (or gdb/lldb) debug_crystal build simple.cr and open an issue with the trace
ponga has joined #crystal-lang
<BlaXpirit> also: Error while requiring "prelude": can't find file 'prelude'
<jhass> that's when doing what exactly?
<BlaXpirit> when just running that debug_crystal
<BlaXpirit> instead of crystal, as normal
<jhass> ah, mh, weird that it didn't happen for me
<jhass> CRYSTAL_PATH="/path/to/crystal/src:libs" debug_crystal # try invoking it like that
ponga has quit [Ping timeout: 264 seconds]
<jhass> btw small style note: you can should just omit empty parens ()
<jhass> so it recurses endlessly somehwere
canhtak has quit [Quit: canhtak]
ponga has joined #crystal-lang
canhtak has joined #crystal-lang
canhtak has quit [Quit: canhtak]
canhtak has joined #crystal-lang
Ven has joined #crystal-lang
canhtak has quit [Quit: canhtak]
a5i has joined #crystal-lang
canhtak has joined #crystal-lang
DerisiveLogic has joined #crystal-lang
<a5i> >> "Hello World".to_a
<DeBot> a5i: Error in line 3: undefined method 'to_a' for String (did you mean 'to_i'?)
<a5i> >> "Hello World".split(" ")
<DeBot> a5i: ["Hello", "World"]
canhtak has quit [Quit: canhtak]
DerisiveLogic has quit [Ping timeout: 272 seconds]
canhtak has joined #crystal-lang
shama has joined #crystal-lang
ponga has quit [Quit: Leaving...]
shama has quit [Ping timeout: 245 seconds]
Ven has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ismaelga has joined #crystal-lang
Ven has joined #crystal-lang
canhtak has quit [Quit: canhtak]
Ven has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ponga has joined #crystal-lang
canhtak has joined #crystal-lang
Ven has joined #crystal-lang
DeBot has quit [Ping timeout: 272 seconds]
canhtak has quit [Quit: canhtak]
ismaelga has quit [Remote host closed the connection]
havenwood has joined #crystal-lang
canhtak has joined #crystal-lang
canhtak has quit [Client Quit]
JBat has quit [Ping timeout: 240 seconds]
ismaelga has joined #crystal-lang
JBat has joined #crystal-lang
Flaise has joined #crystal-lang
havenwood has quit []
havenwood has joined #crystal-lang
canhtak has joined #crystal-lang
canhtak has quit [Client Quit]
canhtak has joined #crystal-lang
asterite has joined #crystal-lang
canhtak has quit [Quit: canhtak]
canhtak has joined #crystal-lang
canhtak has quit [Client Quit]
Ven has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
shama has joined #crystal-lang
shama has quit [Ping timeout: 245 seconds]
Ven has joined #crystal-lang
DerisiveLogic has joined #crystal-lang
Ven has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
DerisiveLogic has quit [Ping timeout: 272 seconds]
shama has joined #crystal-lang
DerisiveLogic has joined #crystal-lang
<BlaXpirit> as i understand it, strings are converted to UTF-8 when passing to PCRE
<BlaXpirit> why not use the UTF-32 option?
<asterite> Strings in crystal are UTF-8
<BlaXpirit> oh really
<BlaXpirit> i thought i saw somewhere explicitly saying they're utf-32
<asterite> Yes. Right now this is not checked when you create a string for bytes, but we could eventually do that (it does raise if you iterate or index the string and it's not valid utf-8)
<BlaXpirit> oh it's Char, and String doc is empty
<BlaXpirit> ok so how is this handled in standard library?
<BlaXpirit> chars returns an array of chars
<BlaXpirit> is there a lazy/iterator?
<BlaXpirit> wait what. char actually contains UTF-8? that seems really weird
<asterite> Char is just four bytes like an Int32, representing a codepoint
<BlaXpirit> waait a second
<asterite> Right now there's no lazy iterator for chars... well, you can do "hello".each_char { ... }, but that's not a real iterator
<BlaXpirit> UTF-8 is not just a codepoint
<asterite> However, in the "iterator' branch there is one. I just need to check with waj if he agrees with that, and we'll merge it to master :)
<asterite> Or maybe code unit, I mix them
<BlaXpirit> so can you tell me, what is actually stored in Char?
<BlaXpirit> one codepoint encoded to UTF-8 or just one codepoint as integer
<asterite> For example
<asterite> >> 'a'
<asterite> DeBot: 'a'
<asterite> >> 'a'.ord
<asterite> DeBot: 97
<asterite> (assuming DeBot is alive)
<asterite> A char is just a number but treated as another type. I think other languages call it Rune
<BlaXpirit> ord('я').to_bytes(4, 'little') == b'O\x04\x00\x00'
<BlaXpirit> 'я'.encode('utf-8') == b'\xd1\x8f'
<BlaXpirit> 'я'.encode('utf-32-le') == b'O\x04\x00\x00'
<asterite> You can try this in crystal: puts 'я'.bytes
<BlaXpirit> this is Python code demonstrating that one could say that UTF-32 is the same thing as codepoints
<BlaXpirit> but definitely not UTF-8. this looks like a mistake in http://crystal-lang.org/docs/builtin_types/char.html
<BlaXpirit> >> puts 'я'.bytes
<BlaXpirit> >> 'я'.bytes
<asterite> DeBot is sleeping :(
<asterite> Oh, the docs there say "A char literal is enclosed with single quotes and contains a character encoded in UTF-8"
<asterite> It's talking about a char literal, not the char type
<BlaXpirit> oh right, i didnt notice that you impersonated it :p
<Flaise> That confused me too xD
<asterite> Hahaha
<BlaXpirit> oh yeah, that is true, it's actually correct, asterite
<asterite> Really? :-)
<BlaXpirit> still confusing as heck
<asterite> I plan to remove that documentation about types from there and just leave it in the types
<asterite> so it's easier to maintain
<asterite> I think the docs there are clearer: https://github.com/manastech/crystal/blob/master/src/char.cr
<BlaXpirit> sure
<BlaXpirit> 'я'.bytes gives UTF-8... not what i expected, but i don't know what else it would be
<asterite> Right now the standard library assumes UTF-8 everywhere, we still need to add support for other encodings
<BlaXpirit> it's fine
<asterite> Maybe we can have Char#to_bytes(encoding) or something
<BlaXpirit> of course that would be best
<BlaXpirit> are there bytestrings of some sort?
<BlaXpirit> ah, maybe to manipulate bytes you gotta do String.to_bytes
<BlaXpirit> gotta see how pcre result gets translated to position in string
<asterite> csfml uses UTF-32?
<BlaXpirit> yes
<BlaXpirit> it's not really that, it just accepts codepoints
<BlaXpirit> to not deal with encodings
<asterite> interesting
<BlaXpirit> but it also has UTF-X support, which is not part of CSFML
<BlaXpirit> and by X i mean 8,16,32
DeBot has joined #crystal-lang
<BlaXpirit> asterite, so have you seen that compiler crash dump i sent?
<BlaXpirit> i'm completely stumped
<asterite> Not yet. I don't know what happenes, but from yesterday to today there were many new issues in github
<BlaXpirit> ok
<asterite> and now I've got some work to do (in erlang, yay!)
<BlaXpirit> o.o
<asterite> But I'll definitely look at it later. It appears to be a stack overflow in the semantic phase
<asterite> I don't know, we'll first have to find the limitations of the current one
<BlaXpirit> what do u mean, "limitations"
<BlaXpirit> it can only match.....
<BlaXpirit> of course that's a huge limitation
<jhass> uh
<jhass> there's scan
<jhass> there's \A & \z
<jhass> I think you can get the pos of a match, at least that should be easy to expose
<jhass> split takes a regex too
<jhass> there's sub & gsub
<BlaXpirit> ooh
<jhass> there's Regex.escape & Regex.union
<jhass> anything else you need?
<BlaXpirit> well see, i have no idea where all that stuff is
<asterite> It's mostly in String and Regex, but not everything is documented yet :(
<asterite> Do you know this? http://crystal-lang.org/api/
<BlaXpirit> yes
<BlaXpirit> it is not really usable
<jhass> >> "foo"[/f(o)o/, 1]
<asterite> Another think you can do is look at Ruby docs for String and Regex... most of it is the same in crystal
<DeBot> jhass: "o"
<jhass> >> "foo"[/oo/] = "aa"
<DeBot> jhass: Error in line 3: undefined method '[]=' for String
<jhass> heh
<jhass> >> "foo".sub /oo/, "aa"
<DeBot> jhass: Error in line 3: undefined method 'sub' for String (did you mean 'gsub'?)
<jhass> :D
<asterite> Oh, DeBot is back :)
<jhass> okay, we still gotta expose some things
<asterite> No sub yet, but it should be easy to do :)
<jhass> yeah and String#[]=(Regex, String) should delegate to it
<BlaXpirit> "foo".split /o/
<BlaXpirit> >> "foo".split /o/
<DeBot> BlaXpirit: ["f", ""]
<ponga> is there downloadable irb equivalent of crystal
<asterite> Mmm.. I don't think we'll have []= as strings are immutable
<jhass> oh, right
<jhass> forgot about that
<jhass> >> "foo\nbar".match(/\Abar\z/)
<DeBot> jhass: nil
BlaXpirit_ has joined #crystal-lang
<asterite> >> "foo\nbar".match(/\Abar\z/m)
<DeBot> asterite: nil
<asterite> >> "foo\nbar".match(/\Abar\Z/m)
<DeBot> asterite: nil
<jhass> that's working right
<asterite> Ah, ok :)
<BlaXpirit_> >> "word word".split /\b/
<DeBot> BlaXpirit_: Sorry, that took too long.
<BlaXpirit_> yyup, typical error
<jhass> >> "1\n\2\3\n4".scan /\d+/
<DeBot> jhass: [#<MatchData:0x994BFE0 @regex=/\d+/, @code=Pointer(Void)@9948F78, @string="1\n\u{2}\u{3}\n4", @pos=0, @ovector=Pointer(Int32)@994AFC0, @length=0>, #<MatchData:0x994BFC0 @regex=/\d+/, @code=Pointer(Void)@9948F78, @string="1\n\u{2}\u{3}\n4", @pos=1, @ovector=Pointer(Int32)@994AF88, @length=0>]
<jhass> >> "1\n\2\3\n4".scan /\d+/, &.[0]
<DeBot> jhass: "1\n\u{2}\u{3}\n4"
<BlaXpirit_> i'm sorry to say, but i have some tests that will screw this regex implementation :|
<jhass> it's libpcre
<BlaXpirit_> >> "word word".split /\b/
<DeBot> BlaXpirit_: Sorry, that took too long.
BlaXpirit has quit [Ping timeout: 252 seconds]
<BlaXpirit_> this is not correct
<ponga> im still stoned staring at regex
<ponga> i should practise more
<asterite> We can always change the regex implementation, the important thing is to build the api that we want
<jhass> yeah, it hangs for some reason
<BlaXpirit_> the reason is it advances by length of the match
<BlaXpirit_> which is 0
<BlaXpirit_> >> "abc".split //
<DeBot> BlaXpirit_: Sorry, that took too long.
<Flaise> >> 'я'.bytes
<DeBot> Flaise: [209, 143]
<Flaise> 'я'.encode('utf-8')
<Flaise> >> 'я'.encode('utf-8')
<DeBot> Flaise: Syntax error in eval:3: unterminated char literal
<Flaise> >> 'я'.encode("utf-8")
<DeBot> Flaise: Error in line 3: undefined method 'encode' for Char
<jhass> BlaXpirit_: actually looks like it's fixed in head
<BlaXpirit_> nope
<jhass> well, kinda, it doesn't split correctly but it doesn't hang
<BlaXpirit_> you did echo | crystal eval didnt u?
<jhass> nope
<BlaXpirit_> if u put it properly in a file, it hangs
<jhass> huh
<Flaise> >> "я".encode("utf-8")
<DeBot> Flaise: Error in line 3: undefined method 'encode' for String
<BlaXpirit_> Flaise, quit trying, it was Python code
<asterite> Yeah, it's not working well. I think there was another case where it hanged, and I fixed that
<asterite> but apparently the semantic is not well in those cases. Needs a couple more specs and a fix ;-)
ponga has quit [Remote host closed the connection]
asterite has quit [Quit: Page closed]
<BlaXpirit_> oh, i accidentally used last release
<BlaXpirit_> now it's wrong in a different way, indeed
ponga has joined #crystal-lang
a5i has quit [Quit: Connection closed for inactivity]
ismaelga has quit [Remote host closed the connection]
a5i has joined #crystal-lang
BlaXpirit_ has quit [Quit: Quit Konversation]
BlaXpirit has joined #crystal-lang
ponga has quit [Quit: Leaving...]
rpag has joined #crystal-lang
rpag has quit [Remote host closed the connection]
JBat has quit [Quit: Computer has gone to sleep.]
havenwood has quit [Ping timeout: 276 seconds]
colorados has quit [Ping timeout: 246 seconds]
DerisiveLogic has quit [Ping timeout: 264 seconds]
colorados has joined #crystal-lang
rpag has joined #crystal-lang
canhtak has joined #crystal-lang
bcardiff has joined #crystal-lang
ismaelga has joined #crystal-lang
DerisiveLogic has joined #crystal-lang
DerisiveLogic has quit [Ping timeout: 250 seconds]
ponga has joined #crystal-lang
asterite has joined #crystal-lang
<asterite> BlaXpirit: are you there?
<jhass> asterite: mh, I forgot, did I ask you already if you know what font this is? http://crystal-lang.org/images/crystal_logo.png
<asterite> I'll ask the designer, but right now he's offline
ponga has quit [Remote host closed the connection]
<BlaXpirit> asterite, hi
<asterite> BlaXpirit: I found your bug: https://github.com/manastech/crystal/issues/553
canhtak has quit [Ping timeout: 276 seconds]
<BlaXpirit> asterite, so u should do something to the other issue
canhtak has joined #crystal-lang
<asterite> As a workaround you can do: `x2 = x ? pointerof(x) : nil` and continue using x2
<asterite> What other issue?
<BlaXpirit> i mean other github issue https://github.com/manastech/crystal/issues/551
canhtak has quit [Client Quit]
<asterite> Oh! I forgot you put it in github, sorry. I'll relate them both
ismaelga has quit []
<BlaXpirit> welp, i can't take address of it anyway
<BlaXpirit> copying seems to work
<BlaXpirit> ok, thanks. i can proceed now
<asterite> BlaXpirit: seems someone is interested in your bindings ;-)
<BlaXpirit> argument 'window' of 'CSFML#window_get_settings' must be CSFML::Window, not CSFML::Window?
<jhass> Foo? is short for Foo|Nil
<asterite> Oh, I guess nil should pass there
<BlaXpirit> there are 2 problems here
<asterite> Instead of nil you can try doing Pointer(...).null. I think Window.null should work, let me try
<BlaXpirit> nil should indeed pass there, and also it can actually never be nill
<BlaXpirit> although maybe it assumes the function can return a null pointer
<BlaXpirit> I always assign @this in every initialize
<BlaXpirit> and then use it here, and it says it's "CSFML::Window?"
<asterite> I can't try it because with the old compiler it crashes, and with the new one it says the error about the recursive pointerof
<BlaXpirit> ok, I updated it if you wanna try
<asterite> Oh, I found it
<asterite> You are doing `if settings` but should be `if psettings`
<asterite> The first one is invoking the "settings" method
<asterite> and that uses @this, which at that point wasn't initialized, so the compiler assumes it's nil
<asterite> Also by the trace, you can see that the compiler tried to type the "settings" method from "new"
<BlaXpirit> daaamn that's stupid, sorry
<asterite> (but, of course, we are always trying to make errors more obvious and friendly)
<asterite> Nah, it's a subtle error
<crystal-gh> [crystal] asterite pushed 3 new commits to master: http://git.io/vvQQc
<crystal-gh> crystal/master d619010 Ary Borenszweig: Fixed #548: is_a?(A | B) didn't work well when both A and B extended another class
<crystal-gh> crystal/master 0d8c3d4 Ary Borenszweig: Fixed #551, fixed #553: detect recursive pointeof expansion
<crystal-gh> crystal/master 0af4359 Ary Borenszweig: Support LLVM 3.6, and search for `llvm36` in homebrew to use in the path instead of `llvm`
asterite has quit [Quit: Page closed]
<travis-ci> manastech/crystal#2245 (master - 0d8c3d4 : Ary Borenszweig): The build has errored.
ponga has joined #crystal-lang
ponga has quit [Ping timeout: 250 seconds]
canhtak has joined #crystal-lang
canhtak has quit [Ping timeout: 264 seconds]
havenwood has joined #crystal-lang
DerisiveLogic has joined #crystal-lang
wandere_ has joined #crystal-lang
wandere_ is now known as wanderer_
wanderer_ has left #crystal-lang [#crystal-lang]
wanderer_ has joined #crystal-lang
ponga has joined #crystal-lang
havenwood has quit []
ponga has quit [Ping timeout: 264 seconds]
wanderer_ has quit [Quit: Page closed]
<a5i> >> "<title> hello </title>\n<title> world </title>".scan(/<title>(.*?)<\/title>/)
<DeBot> a5i: [#<MatchData:0x973DFE0 @regex=/<title>(.*?)<\/title>/, @code=Pointer(Void)@973BF70, @string="<title> hello </title>\n<title> world </title>", @pos=0, @ovector=Pointer(Int32)@973BF08, @length=1>, #<MatchData:0x973DFC0 @regex=/<title>(.*?)<\/title>/, @code=Pointer(Void)@973BF70, @string="<title> hello </title>\n<title> world </title>", @pos=22, @ovec ...
<crystal-gh> [crystal] asterite pushed 1 new commit to master: http://git.io/vv7Zv
<crystal-gh> crystal/master d7c311c Ary Borenszweig: Fixed several cases of `String#split(Regex)`, and also improved MatchData#to_s and #inspect
<a5i> >> "<title> hello </title>\n<title> world </title>".scan(/<title>(.*?)<\/title>/).to_s
<DeBot> a5i: "[#<MatchData:0x8378FE0 @regex=/<title>(.*?)<\\/title>/, @code=Pointer(Void)@8376F70, @string=\"<title> hello </title>\\n<title> world </title>\", @pos=0, @ovector=Pointer(Int32)@8376F08, @length=1>, #<MatchData:0x8378FC0 @regex=/<title>(.*?)<\\/title>/, @code=Pointer(Void)@8376F70, @string=\"<title> hello </title>\\n<title> world </title>\", @pos= ...
<a5i> uhhh
<a5i> Is that just some weird coincidence ?!
asterite has joined #crystal-lang
<a5i> >> puts "<title> hello </title>\n<title> world </title>".scan(/<title>(.*?)<\/title>/)
<DeBot> a5i: [#<MatchData:0x9C17FE0 @regex=/<title>(.*?)<\/title>/, @code=Pointer(Void)@9C15F70, @string="<title> hello </title>\n<title> world </title>", @pos=0, @ovector=Pointer(Int32)@9C15F08, @length=1>, #<MatchData:0x9C17FC0 @regex=/<title>(.*?)<\/title>/, @code=Pointer(Void)@9C15F70, @string="<title> hello </title>\n<title> world </title>", @pos=22, @ovec ...
<a5i> asterite: ^ :[
<asterite> Yes, I just improved that
<a5i> omg
<asterite> There was a discussion about regex previously in the day, I decided to tackle the problems :)
<a5i> it is a coincidence !
<asterite> But you'll have to wait for the next release for that to appear nicely... or compile yourself a compiler ;-)
<a5i> I did that, then right after the spit output crystal-gh popped up
<a5i> I can't do the latter
<a5i> how long do I have to wait :(
<asterite> Maybe a week or two, we'll see
<asterite> Gotta go...
asterite has quit [Client Quit]