ChanServ changed the topic of #crystal-lang to: The Crystal programming language | http://crystal-lang.org | Crystal 0.22.0 | Fund Crystal's development: http://is.gd/X7PRtI | Paste > 3 lines of text to https://gist.github.com | GH: https://github.com/crystal-lang/crystal | Docs: http://crystal-lang.org/docs/ | API: http://crystal-lang.org/api/ | Logs: http://irclog.whitequark.org/crystal-lang
Disrecollection has joined #crystal-lang
Disrecollection has quit [Quit: Leaving.]
A124 has quit [Ping timeout: 255 seconds]
A124 has joined #crystal-lang
rohitpaulk has joined #crystal-lang
rohitpaulk has quit [Ping timeout: 246 seconds]
rohitpaulk has joined #crystal-lang
rohitpaulk has quit [Ping timeout: 255 seconds]
rohitpaulk has joined #crystal-lang
yogg-saron has joined #crystal-lang
<FromGitter> <r3bo0t> Is there AWS SDK being ported to crystal lang yet? If no, is there a way to use aws sdk with crystal?
<FromGitter> <bararchy> @r3bo0t Can't find one at shards or awsome-crystal
<FromGitter> <bararchy> I guess you can make one, or, add it to: https://github.com/johnjansen/crystal-libraries-needed/issues
<FromGitter> <r3bo0t> yeah same. Thats why came here :)
rohitpaulk has quit [Ping timeout: 240 seconds]
<FromGitter> <bararchy> Seems like there is already a request for it
<FromGitter> <r3bo0t> yes, given aws sdk is a huge piece in itself
rohitpaulk has joined #crystal-lang
<FromGitter> <bararchy> So if you are interested in that, It would sure be great if you would collaborate on that Thread (even just telling you usecase needs, etc..)
<FromGitter> <r3bo0t> sure @bararchy, thanks.
<FromGitter> <bararchy> :)
<FromGitter> <bararchy> Happy Crystalling
<FromGitter> <skunkworker> Hi is there a compile macro way to check to make sure a property is set on an object? taking a Symbol as input and doing a check
<FromGitter> <skunkworker> I tried something like `self.responds_to?(:{{variable}})`
<FromGitter> <skunkworker> ```macro has_property?(variable) ⏎ self.responds_to?(:{{variable}}) ⏎ end``` [https://gitter.im/crystal-lang/crystal?at=5937a8eb6549436c7d23aaf0]
<FromGitter> <skunkworker> isn't working when I'm inputting a `Symbol` into `variable`
mark_66 has joined #crystal-lang
rohitpaulk has quit [Ping timeout: 255 seconds]
rohitpaulk has joined #crystal-lang
rohitpaulk has quit [Ping timeout: 268 seconds]
<FromGitter> <bew> @skunkworker use `{{variable.id}}`, you'll get `symbol` from a `:symbol` node
<FromGitter> <skunkworker> I’m still getting the variable name, not what is inside the variable
rohitpaulk has joined #crystal-lang
<FromGitter> <bew> macros won't get variables content, as variable content is a run-time information, not compile-time
txdv has quit [Ping timeout: 268 seconds]
txdv has joined #crystal-lang
rohitpaulk has quit [Ping timeout: 260 seconds]
Kug3lis has joined #crystal-lang
<oprypin> skunkworker, why make a wrapper for functionality that already exists?
yogg-saron has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<oprypin> i feel like you're expecting some magic from macros, to make this thing work in more cases than it already does, but that sure ain't happening
rohitpaulk has joined #crystal-lang
rohitpaulk has quit [Ping timeout: 255 seconds]
rohitpaulk has joined #crystal-lang
pduncan has quit [Ping timeout: 246 seconds]
pduncan has joined #crystal-lang
yogg-saron has joined #crystal-lang
pduncan has quit [Ping timeout: 255 seconds]
pduncan has joined #crystal-lang
Kug3lis has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Kug3lis has joined #crystal-lang
<FromGitter> <sdogruyol> hey everyone
<FromGitter> <akzhan> Hello :smile:
<travis-ci> crystal-lang/crystal#1f2200d (master - Fixed #4520: "Invalid memory access" in tuple members in Crystal 0.22): The build passed. https://travis-ci.org/crystal-lang/crystal/builds/240147953
<DeBot> https://github.com/crystal-lang/crystal/issues/4520 ("Invalid memory access" in tuple members in Crystal 0.22)
<FromGitter> <drosehn> Hi
rohitpaulk has quit [Ping timeout: 255 seconds]
rohitpaulk has joined #crystal-lang
rohitpaulk has quit [Ping timeout: 240 seconds]
<FromGitter> <bew> *late to the party* hi! :p
Kug3lis has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
snsei has joined #crystal-lang
<FromGitter> <molovo> Howdy
<FromGitter> <straight-shoota> hey
<FromGitter> <straight-shoota> I've been experimenting with coverage testing with kcov and it really worked like a charm, you just need to create an all_spec file to compile all specs into one binary.
<FromGitter> <akzhan> Great :)
<FromGitter> <straight-shoota> Right now kcov seems to run into an infinite loop without any error message...
<FromGitter> <straight-shoota> Did anyone notice something like this?
<FromGitter> <molovo> @straight-shoota Yeah, I remember something like that happening when I tried it - I didn’t try compiling specs into a binary though, I just passed `crystal spec` straight to kcov. Maybe that’s where I was going wrong, but I never did get to the bottom of it.
<FromGitter> <straight-shoota> Yesterday it worked fine, and it does not really be connected to code changes...
<FromGitter> <straight-shoota> Unfortunately Ubuntu xenial has a very outdated version 25 of kcov and I didn't manage to compile a newer version myself
snsei has quit [Remote host closed the connection]
snsei has joined #crystal-lang
<FromGitter> <drujensen> Question for the Core Team: Is there any plans to add Mail -> Client and Mail -> Server to the standard library?
<oprypin> drujensen, it does not need to be in standard library. should make one outside then they may consider adding it
rohitpaulk has joined #crystal-lang
yogg-saron has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
yogg-saron has joined #crystal-lang
dostoyesvky has quit [Ping timeout: 255 seconds]
dostoyesvky has joined #crystal-lang
<crystal-gh> [crystal] asterite closed pull request #4522: Fix typos in lexer (master...lexer-typos) https://git.io/vHr2P
kodo[m] has left #crystal-lang ["Kicked by @appservice-irc:matrix.org"]
<FromGitter> <drujensen> @oprypin sounds good. just checking to make sure i’m not duplicating effort
<FromGitter> <drujensen> I found a couple shards that are doing some Mail Client stuff so hopefully I can leverage them.
rohitpaulk has quit [Ping timeout: 246 seconds]
rohitpaulk has joined #crystal-lang
LastWhisper____ has joined #crystal-lang
<FromGitter> <schovi> Hello guys. I just reached some issue (or maybe misunderstanding) of macros and using `run` in them. There is simple example app with README where is short infor about problem. Can anybody give me hint what is wrong, or how to do it correctly? https://github.com/schovi/macro_run_example
<RX14> @schovi call_load_runner is a function not a macro
<RX14> so the value of "value" is set at runtime
<RX14> you can't pass normal variables to macros because they only exist at runtime
<RX14> otherwise it just passes the name of the variable
<FromGitter> <schovi> @RX14 Oh got it. I was thinking, that because I call it directly it would work.
<FromGitter> <schovi> Thanks
<RX14> think for example if you tried to call that function with ARGV[0]
<RX14> the macro is at compile time
<RX14> argv is at runtime
<RX14> it's impossible
<FromGitter> <schovi> Thank you. When you use it rarely it is so confusing! :)
<FromGitter> <drosehn> https://media.pragprog.com/newsletters/2017-06-07.html -- in the middle of this email you'll see that the June issue of PragPub Magazine includes an article on crystal, and the same author will have a second article in the next issue. I haven't picked up the issue yet, so I don't know what the article is like. But this will give some more visibility to crystal.
<FromGitter> <sdogruyol> that's cool
<FromGitter> <lucas-wade> anyone used Metascraper shard?
mark_66 has quit [Quit: Leaving.]
yogg-saron has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<FromGitter> <lucas-wade> or any other scraper lib?
yogg-saron has joined #crystal-lang
yogg-saron has quit [Client Quit]
snsei has quit [Remote host closed the connection]
<FromGitter> <fridgerator> @drosehn wow
dostoyesvky has quit [Ping timeout: 246 seconds]
dostoyesvky has joined #crystal-lang
Philpax_ has quit [Ping timeout: 255 seconds]
yogg-saron has joined #crystal-lang
yogg-saron has quit [Client Quit]
<FromGitter> <forbes_kris_twitter> anyone using OpenCV with Crystal?
<greenbigfrog> (I meant to ask ^ a while ago, fergot then though)
rohitpaulk has quit [Ping timeout: 260 seconds]
rohitpaulk has joined #crystal-lang
rohitpaulk has quit [Ping timeout: 255 seconds]
<FromGitter> <Mil0dV> Hi guys&gals! I have a very noob question: how do I reference a classless method from my spec file? I tried `methodname`, `modulename::methodname` and `modulename.methodname`, but none of those work
<FromGitter> <faultyserver> what does your code look like?
<FromGitter> <Mil0dV> ```code paste, see link``` [https://gitter.im/crystal-lang/crystal?at=593851a7167d046a7d7a715e]
<FromGitter> <johnjansen> where is `connect_to_slack` defined
<FromGitter> <Mil0dV> And the code is very basic as well: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/crystal-lang/crystal?at=593851e702c480e67220afe6]
<crystal-gh> [crystal] akiicat opened pull request #4527: fix crystal playground cannot yield with one parameter (master...master) https://git.io/vH6FM
<FromGitter> <johnjansen> `def self. connect_to_slack`
<FromGitter> <johnjansen> `Jane::connect_to_slack`
<FromGitter> <Mil0dV> > in spec/jane_spec.cr:8: undefined method 'connect_to_slack'
<FromGitter> <Mil0dV> Ah, I only changed 1 of those
<FromGitter> <Mil0dV> Did both: ⏎ ⏎ > Syntax error in spec/jane_spec.cr:8: expecting token 'CONST', no ⏎ t 'connect_to_slack' ⏎ ... [https://gitter.im/crystal-lang/crystal?at=5938527e6549436c7d26cca4]
<FromGitter> <johnjansen> did you `require [file containing Jane module]`
<FromGitter> <faultyserver> it should be `Jane.connect_to_slack`
<FromGitter> <straight-shoota> its `Jane.conect_to_slack`
<FromGitter> <johnjansen> thanks @faultyserver
<FromGitter> <faultyserver> but yeah, you need to require that file in `spec_helper.cr` or your spec file itself
<FromGitter> <johnjansen> thanks @straight-shoota … probably shouldnt reply whilst walking down the street ;-)
<FromGitter> <Mil0dV> I'm using a crystal created skeleton, so spec_helper.cr requires "../src/jane", where my jane.cr is located
<FromGitter> <Mil0dV> Changing it to Jane.connect_to_slack makes things even more interesting:
<FromGitter> <bew> what is you crystal version?
<FromGitter> <Mil0dV> `Crystal 0.21.1 (2017-03-14) LLVM 4.0.0`
<FromGitter> <bew> can you upgrade to 0.22.0 and retry?
<FromGitter> <Mil0dV> Argh - that also upgrades llvm, and that takes forever via train-WiFi
<FromGitter> <bew> llvm4 is ok, no need to upgrade iirc
<FromGitter> <Mil0dV> Ah, TIL about `brew upgrade $package --ignore-dependencies`
<FromGitter> <Mil0dV> howver, brew doesn't listen :'(
<FromGitter> <bew> argh..
<FromGitter> <Mil0dV> this is going to take forever @~80KB/s - I'm going to get another beer, Balmer peak not yet reached..
<FromGitter> <fridgerator> balmer peak is crucial
<FromGitter> <Mil0dV> meanwhile brew broke my old crystal install, so I can't even continue with the working, stupid implementation of my spec+code
Kug3lis has joined #crystal-lang
<FromGitter> <paulcsmith> Does anyone know why `typeof` doesn't work in a macro? https://gist.github.com/paulcsmith/ad68b6c1f22ac42a8bedd37a341d1ae0
Kug3lis has quit [Remote host closed the connection]
<FromGitter> <bew> You can use `{% p var.class_name %}` but it's not the same..
Kug3lis has joined #crystal-lang
<FromGitter> <bew> `typeof(var)` can't work in macros, because a macro only knows about text (AST nodes), not semantic informations (about possible types)
<FromGitter> <Mil0dV> Meanwhile, I looked at https://github.com/crystal-lang/crystal/releases/tag/0.22.0 and the only thing that *might* be relevant is the self resolution (https://github.com/crystal-lang/crystal/pull/3972) but even that seems unlikely
<FromGitter> <bew> @Mil0dV look at the line "Fixed debug information was missing in some cases "
<FromGitter> <bew> "Fixed debug information was missing in some cases (See #4166, #4202, #4254)"
<DeBot> https://github.com/crystal-lang/crystal/issues/4166 (Inlinable function call in a function with debug info must have a !dbg location) | https://github.com/crystal-lang/crystal/issues/4202 (Module validation failed: inlinable function call in a function with debug info must have a !dbg location) | https://github.com/crystal-lang/crystal/issues/4254 (Module validation failed with default debug)
<FromGitter> <akzhan> @paulcsmith https://play.crystal-lang.org/#/r/25fh
<FromGitter> <straight-shoota> @paulcsmith just don't resolve the type in macro: `puts typeof({{ var.id }}).to_s`
<FromGitter> <Mil0dV> But I only got the compiler crash once I switched to the testing syntax @faultyserver suggested
<FromGitter> <Mil0dV> Although it's interesting to see why it crashes, sure
<FromGitter> <akzhan> @paulcsmith and https://play.crystal-lang.org/#/r/25fr for example
<FromGitter> <Mil0dV> Ok weird - with 0.22 the suggested syntax works
<FromGitter> <bew> you got 0.22 working! well it was supposed to work
<FromGitter> <Mil0dV> So next question: why doesn't this spec fail when the funtion returns false? ⏎ ⏎ ```code paste, see link``` [https://gitter.im/crystal-lang/crystal?at=593862e0142826e97292b97b]
<FromGitter> <bew> You have no test:
<FromGitter> <bew> `Jane.connect_to_slack(slack_token).should be_true`
<FromGitter> <Mil0dV> Ah thanks
<FromGitter> <paulcsmith> @akzhan Thanks. That fixes that particular example, but what I really want to do is something like this, which I don't believe is possible without `typeof` in macros https://play.crystal-lang.org/#/r/25ft
<FromGitter> <paulcsmith> And it seems odd considering you can do something like this, which gets the type at compile time. I don't understand why it won't work in a macro https://play.crystal-lang.org/#/r/25fu
bew78 has joined #crystal-lang
<bew78> >> test
<DeBot> bew78: - https://carc.in/#/r/25fy
bew78 has quit [Client Quit]
<FromGitter> <akzhan> @paulcsmith I just tried unsuccessfully: https://play.crystal-lang.org/#/r/25g1 ⏎ But there is a direction
<FromGitter> <bew> I tried this https://play.crystal-lang.org/#/r/25g2 no success too
<FromGitter> <akzhan> May be look fr block.call.return_type but i have not seen return_type in AST tree yet.
<FromGitter> <paulcsmith> Yeah problem is typeof can't be used when declaring instance vars :(
<FromGitter> <paulcsmith> I'll check for the return type in the docs. Maybe there's something hidden in there :S
<FromGitter> <bew> it's close https://play.crystal-lang.org/#/r/25g6
<FromGitter> <bew> but now I get "can't use typeof here" :(
<FromGitter> <paulcsmith> Yeah compiler doesn't like typeof for defining instance vars, which makes sense since it'd need to analyze every call to get the type. Maybe that's the same reason it can't do it in macros 🤷‍♂️
<FromGitter> <bew> yeah I think that sth like that :/
<FromGitter> <bew> aaaand why not use something like `lazy` or `future` ?
<FromGitter> <akzhan> why not https://play.crystal-lang.org/#/r/25gj ?
<FromGitter> <bew> https://crystal-lang.org/api/0.22.0/toplevel.html#lazy(&block:->_)-class-method
<FromGitter> <bew> it worked only because the block was 1 line
<FromGitter> <bew> hmm right x)
<FromGitter> <bew> even, there's already `lazy` in top level for this I think
<FromGitter> <akzhan> thanks you too for the body )
<FromGitter> <paulcsmith> Oh intersting. I thought instance vars had to be defined explicitly unless it was in initialize
<FromGitter> <bew> nice one @akzhan ;)
<FromGitter> <bew> me too, I don't know this work exactly..
<FromGitter> <paulcsmith> lazy is for something else https://crystal-lang.org/api/0.22.0/toplevel.html#lazy%28%26block%3A-%3E_%29-class-method
<FromGitter> <straight-shoota> @paulcsmith unless their type can be directly inferred
<FromGitter> <paulcsmith> Yeah I didn't think it could infer that. So I guess it infers that it's nilable from that automatically
<FromGitter> <paulcsmith> I didn't know the compiler was so smart :D
<FromGitter> <paulcsmith> That makes the memoize macro useless since that's so easy
<FromGitter> <straight-shoota> :laughing:
<FromGitter> <straight-shoota> Yeah, well, but using `||=` for memoization has its probles... if `nil` is a valid return value, this value will not be memoized
<FromGitter> <paulcsmith> Hmm it can infer simple literals but fails for a lot of other stuff. So the macro may still be useful. This doesn't work for example https://play.crystal-lang.org/#/r/25gs
Disrecollection has joined #crystal-lang
<FromGitter> <bew> now, try https://play.crystal-lang.org/#/r/25gu ...
<FromGitter> <paulcsmith> Yeah inference seems to only be able to infer really simple literals otherwise you need to define it yourself
<FromGitter> <bew> like you said @straight-shoota, it works only for literals, wich infer directly it's types, but doesn't works for indirect type inferance..
<FromGitter> <straight-shoota> @akzhan I'd rather consider a special uninitialized value similar to `Iterator::Stop` instead of an additional instance var to track memoization
<FromGitter> <akzhan> You should provide type in these case, as https://play.crystal-lang.org/#/r/25h5
<FromGitter> <akzhan> better https://play.crystal-lang.org/#/r/25h8
<FromGitter> <straight-shoota> https://play.crystal-lang.org/#/r/25ha
<FromGitter> <paulcsmith> I did a version using a type declaration that I think reads nicely https://play.crystal-lang.org/#/r/25hd
<FromGitter> <paulcsmith> Cool idea @straight-shoota
<FromGitter> <akzhan> Yep!
<FromGitter> <akzhan> anyway there is crystal tool expand or something like it
<FromGitter> <straight-shoota> @paulcsmith using TypeDeclaration is also great ;)
<FromGitter> <akzhan> @paulcsmith your solution is great one :) we are the masters :)
<FromGitter> <paulcsmith> Thanks for all the ideas. That was fun to work though with you guys
<FromGitter> <bew> for the typedeclaration one you'll need the `begin ... end` to make multiline blocks work as @akzhan suggested https://play.crystal-lang.org/#/r/25hh
pleiosau1 has joined #crystal-lang
<FromGitter> <straight-shoota> Things come together... ;)
<FromGitter> <straight-shoota> I can't think of a really nice way to add method arguments...
Liothen- has joined #crystal-lang
DeBot has quit [Ping timeout: 240 seconds]
Liothen has quit [Ping timeout: 240 seconds]
pleiosaur has quit [Ping timeout: 240 seconds]
Disrecollection has quit [Ping timeout: 240 seconds]
oz has quit [Ping timeout: 240 seconds]
dom96 has quit [Ping timeout: 240 seconds]
Liothen- is now known as Liothen
<FromGitter> <paulcsmith> @bew seems to work fine for me https://play.crystal-lang.org/#/r/25hp
oz has joined #crystal-lang
Disrecollection has joined #crystal-lang
<FromGitter> <akzhan> @bew there is `yield` simply substituted
<FromGitter> <bew> nice, using `yield` puts the `begin ... end`: https://play.crystal-lang.org/#/r/25hs (with macro debug)
<FromGitter> <akzhan> thaks for the point to debug :)
dom96 has joined #crystal-lang
<FromGitter> <akzhan> I only began to understand macro language :)
<FromGitter> <bew> welcome to macro hell ;)
<crystal-gh> crystal/master bbf79fb Ary Borenszweig: Fixed #4400: Format tool removes whitespace from heredoc
<crystal-gh> crystal/master cb1061b Ary Borenszweig: Compiler: missing devirtualize in subclasses and all_subclasses macro methods
<crystal-gh> crystal/master 644b59b Ary Borenszweig: Fixed #4465: Using named arguments breaks overloading for union types
<crystal-gh> [crystal] asterite pushed 3 new commits to master: https://git.io/vHiqx
<FromGitter> <paulcsmith> I find macros in Crystal a lot easier to use and understand than in Elixir though
<FromGitter> <paulcsmith> I haven't used macros in other languages much though. So far it's pretty nice. Like ERB almost :)
<crystal-gh> [crystal] asterite pushed 1 new commit to master: https://git.io/vHiYo
<crystal-gh> crystal/master b7e9237 Ary Borenszweig: Parser: fix parsing of `do` inside `yield`. Fixes #4526
<crystal-gh> [crystal] asterite closed pull request #4527: fix crystal playground cannot yield with one parameter (master...master) https://git.io/vH6FM
<crystal-gh> [crystal] asterite pushed 1 new commit to master: https://git.io/vHi3d
<crystal-gh> crystal/master ca47207 Ary Borenszweig: Fixed #4399: `a.field=(expr)...` and `a.field = (expr)...` are parsed differently
<travis-ci> crystal-lang/crystal#bbf79fb (master - Fixed #4400: Format tool removes whitespace from heredoc): The build has errored. https://travis-ci.org/crystal-lang/crystal/builds/240556148
<crystal-gh> [crystal] Sija opened pull request #4528: Remove OSX from Travis CI (master...remove-osx-from-travis-ci) https://git.io/vHiZH
<Disrecollection> Anyone willing to help out a newb? I'm currently working on a basic web scraper with Crystagiri, but I feel my understanding of Syntax and core concepts is lacking. I've done some Ruby coding in the past, but mainly my background has been C. I'm doing this proj to learn more about Crystal, because it seems super cool.
<FromGitter> <bew> feel free to expose your problems!
<Disrecollection> Alright! I'm almost done with this draft, and then I'll shoot it on over.
<travis-ci> crystal-lang/crystal#b7e9237 (master - Parser: fix parsing of `do` inside `yield`. Fixes #4526): The build passed. https://travis-ci.org/crystal-lang/crystal/builds/240560737
<FromGitter> <elorest> is there an equivalent to `if defined?(var)` in crystal?
<FromGitter> <fridgerator> I don't think so, I know there is `responds_to?`
<Disrecollection> Wow. I forgot how HARD git was. https://github.com/Disrecollection/NarbonCrystalScraper is the repo I'm working on. I'm unsure about some of the object method syntax and mechanics.
<travis-ci> crystal-lang/crystal#ca47207 (master - Fixed #4399: `a.field=(expr)...` and `a.field = (expr)...` are parsed differently): The build has errored. https://travis-ci.org/crystal-lang/crystal/builds/240568649
<Disrecollection> Well, not hard, I'm just really bad at remembering how it works.
<FromGitter> <bew> to get to theh last element of an array, it's `my_array.last` :)
<Disrecollection> Thanks! I knew there should be something, I just didn't know what/where.
<FromGitter> <bew> I don't know about crystagiri, so I won't be able to help you with it
<FromGitter> <bew> I didn't change a lot, but you should get the idea
<Disrecollection> NP, I'm sorta figuring everything out via trial error and ref anyway. Syntax is one of my bigger issues. The gitbook didn't really say exactly how whitespace worked, etc.
<Disrecollection> Thanks for the help regardless of the crystagiri exp. tho, I really do appreciate it.
<FromGitter> <bew> the best way for you to learn the syntax, is to read ohers code
<FromGitter> <bew> others*
<Disrecollection> Any reccomendations?
<FromGitter> <bew> the compiler? :P
<Disrecollection> I think the compiler code was little too dense for me last I checked
<FromGitter> <bew> ahah
<FromGitter> <bew> you can find other awesome projects in crystal on http://crystalshards.xyz/
<FromGitter> <bew> I'm sure you'll find one that's not too dense :)
<Disrecollection> I dunno. I was really tired when I started getting into the project, so some of the stuff is just sorta fever dreams. I'll take another look at the compiler and a new look at that link, see if I can puzzle it out.
<Disrecollection> Thanks again for the help.
<FromGitter> <bew> you're welcome! (gonna sleep now, bye)
<Disrecollection> Bye