ChanServ changed the topic of #crystal-lang to: The Crystal programming language | http://crystal-lang.org | Crystal 0.24.2 | Fund Crystal's development: http://is.gd/X7PRtI | GH: https://github.com/crystal-lang/crystal | Docs: http://crystal-lang.org/docs/ | API: http://crystal-lang.org/api/ | Gitter: https://gitter.im/crystal-lang/crystal
qard has joined #crystal-lang
Yxhuvud has quit [Quit: No Ping reply in 180 seconds.]
Yxhuvud has joined #crystal-lang
qard has quit [Ping timeout: 240 seconds]
Yxhuvud has quit [Quit: No Ping reply in 180 seconds.]
Yxhuvud has joined #crystal-lang
Yxhuvud has quit [Client Quit]
Yxhuvud has joined #crystal-lang
Yxhuvud has quit [Quit: No Ping reply in 180 seconds.]
Yxhuvud has joined #crystal-lang
Yxhuvud has quit [Quit: No Ping reply in 180 seconds.]
Yxhuvud has joined #crystal-lang
Yxhuvud has quit [Quit: No Ping reply in 180 seconds.]
snsei has joined #crystal-lang
Yxhuvud has joined #crystal-lang
snsei has quit [Remote host closed the connection]
Yxhuvud has quit [Quit: No Ping reply in 180 seconds.]
Yxhuvud has joined #crystal-lang
snsei has joined #crystal-lang
<faustinoaq> I just found another language made in crystal https://github.com/runic-lang/compiler :D
snsei has quit [Ping timeout: 268 seconds]
<faustinoaq> Very Interesting, Scala for blind programmers: http://www.scala-lang.org/blog/2018/03/19/accessible-scala.html
snsei has joined #crystal-lang
snsei has quit [Remote host closed the connection]
snsei has joined #crystal-lang
snsei has quit [Remote host closed the connection]
faustinoaq has quit [Quit: IRC client terminated!]
<FromGitter> <bew> ysbaddadden is doing another crystal :p
That_Guy_Anon1 has joined #crystal-lang
<FromGitter> <girng> ok so i have another question are u ready
<FromGitter> <bew> don't ask to ask, just ask ^^
<FromGitter> <girng> i was looking over the api, and saw this: https://crystal-lang.org/api/0.24.2/WeakRef.html what is it used for, when crystal has a GC already? don't the objects already become ready to be garbage collected if they are not referenced anymore?
That_Guy_Anon has quit [Ping timeout: 240 seconds]
<FromGitter> <bew> yes they are, but here the usage is to be able to reference the object but allow it to be GC'ed. I think a usecase would be a cache or sth like that
That_Guy_Anon has joined #crystal-lang
<FromGitter> <girng> yeah
<FromGitter> <girng> i'm done with memory
<FromGitter> <girng> too confusing, I AM SO DONE
That_Guy_Anon1 has quit [Ping timeout: 265 seconds]
snsei has joined #crystal-lang
rohitpaulk has joined #crystal-lang
faustinoaq has joined #crystal-lang
That_Guy_Anon has quit [Quit: Leaving]
t0nyaway has quit [Ping timeout: 246 seconds]
moei has quit [Quit: Leaving...]
johndescs_ has joined #crystal-lang
johndescs has quit [Ping timeout: 260 seconds]
johndescs_ is now known as johndescs
t0nyaway has joined #crystal-lang
t0nyaway is now known as t0nyandre
<oprypin> girng, good choice! you really probably shouldn't use weakref. i know i haven't. but here's some description https://docs.python.org/library/weakref.html
<crystal-gh> [crystal] sdogruyol closed pull request #5933: Corrected a typo in File's documentation (master...master) https://git.io/vx50A
<crystal-gh> [crystal] sdogruyol closed pull request #5809: CHANGELOG: Add missing links to Github issues (master...patch-2) https://git.io/vxeWq
<FromGitter> <LWFlouisa> Just introduced to Crystal. Like it so far, though having problems. Some thing I can only do in Ruby.
<travis-ci> crystal-lang/crystal#7d7e4be (master - Merge pull request #5933 from Givralix/master): The build passed. https://travis-ci.org/crystal-lang/crystal/builds/365455226
<DeBot> https://github.com/crystal-lang/crystal/pull/5933 (Corrected a typo in File's documentation)
<FromGitter> <bew> welcome on board :) yeah Crystal is quite different from Ruby (for good imo)
<FromGitter> <sam0x17> often, if there is something you "can't do" in crystal, method_missing can help: https://crystal-lang.org/docs/syntax_and_semantics/macros/hooks.html
<FromGitter> <chillfox> Hi, ⏎ Is it possible to use awscr-signer (https://github.com/taylorfinnell/awscr-signer) with crest (https://github.com/mamantoha/crest) to access aws services? ⏎ Any good examples of this? ⏎ I am trying to list stuff from dynamodb and the crynamo (https://github.com/timkendall/crynamo) shard is lacking. ⏎ I would apreciate an example on how to get all entries from dynamodb under a specific partition
<FromGitter> ... key. Or just a nudge in the right direction. [https://gitter.im/crystal-lang/crystal?at=5acefcae6d7e07082be62776]
<FromGitter> <LWFlouisa> Thanks Sam!
<FromGitter> <LWFlouisa> For one of the issues, solved it with a work around.
<FromGitter> <LWFlouisa> In this case, while crystal can't run all ruby commands, the terminal can. But both langs can do system calls.
<travis-ci> crystal-lang/crystal#8ce742a (master - Merge pull request #5809 from straight-shoota/patch-2): The build passed. https://travis-ci.org/crystal-lang/crystal/builds/365456656
<DeBot> https://github.com/crystal-lang/crystal/pull/5809 (CHANGELOG: Add missing links to Github issues)
<FromGitter> <LWFlouisa> So in this case, all I had to do was instruct crystal to do a system call to have the terminal do a one line local host command. So now I can build it within crystal without having to having a ruby program dependancy.
<FromGitter> <bew> wut ^^ what are you trying to do?
<FromGitter> <LWFlouisa> Have a self-hosted webpage.
<FromGitter> <LWFlouisa> In other cases, using hashes.
<FromGitter> <bew> ok, what can't you do in Crystal
<FromGitter> <LWFlouisa> Well what I cant do is different from what others cant. I cant seem to figure out how to do something equivalent to Ruby's: code.map do |w|
<FromGitter> <LWFlouisa> So I'm having to fallback to using .tr
<FromGitter> <LWFlouisa> Really looking forward to trying this Crystal Qr Code thing.
<FromGitter> <bew> can you show some code? because `Hash#map` does exist
<FromGitter> <LWFlouisa> Ah with the number? And sure, where do you want it sent?
snsei has quit [Remote host closed the connection]
<FromGitter> <bew> https://carc.in/
<FromGitter> <bew> or https://bpaste.net/ to just show some code with Crystal highlighting without output and/or compile errors
snsei_ has joined #crystal-lang
<FromGitter> <LWFlouisa> https://carc.in/#/r/3v2p
<FromGitter> <bew> with `[]` should work
<FromGitter> <bew> not `()`
<FromGitter> <LWFlouisa> Thanks will try.
<FromGitter> <bew> also, if you store only a single character, I suggest to use a `Char` (so `'m'`) instead of a `String` '`"m"`)
<FromGitter> <bew> did you read the language reference?
<FromGitter> <LWFlouisa> Still currently reading it.
<FromGitter> <bew> 👍
<FromGitter> <LWFlouisa> I'm still used to Ruby I guess.
<FromGitter> <LWFlouisa> What is so?
<FromGitter> <bew> what do you mean?
<FromGitter> <LWFlouisa> I've kind of learned as I went reading docs as I needed the knowledge.
flaviodesousa has joined #crystal-lang
<FromGitter> <LWFlouisa> Here we go.
<FromGitter> <LWFlouisa> Now I can implement my assymetric two square now.
<FromGitter> <LWFlouisa> Anyway thanks, goodnight.
<FromGitter> <mamantoha> @chillfox hi. Nope. It seems like impossible to use awscr-signer with crest.
snsei_ has quit [Remote host closed the connection]
moei has joined #crystal-lang
<FromGitter> <chillfox> ok
<FromGitter> <sam0x17> crystal running in google cloud functions proof of concept: https://github.com/sam0x17/crystal-gcf-concept
<jokke> what's the name of the OS written in crystal again?
<FromGitter> <sdogruyol> https://github.com/UteroOS/utero
<FromGitter> <bararchy> you plan to join the team ? ;)
<FromGitter> <bararchy> there is another one without assembly I think
<FromGitter> <bararchy> oh, it's with assembly
<FromGitter> <bararchy> but still cool
rohitpaulk has quit [Ping timeout: 260 seconds]
rohitpaulk has joined #crystal-lang
rohitpaulk has quit [Ping timeout: 260 seconds]
rohitpaulk has joined #crystal-lang
snsei has joined #crystal-lang
<FromGitter> <yxhuvud> @sam0x17 Cool! So do they have crystal installed on their servers or is some additional setup necessary?
rohitpaulk has quit [Ping timeout: 265 seconds]
<FromGitter> <Sjoerrdd> Good morning
<FromGitter> <sdogruyol> morning @Sjoerrdd
<FromGitter> <Jens0512> I don't think you can make an os without some kind of asm
<FromGitter> <Jens0512> Anyways; What's the current big thing going on in Crystal?
<FromGitter> <Jens0512> Windows?
snsei has quit [Remote host closed the connection]
<FromGitter> <straight-shoota> @sdogruyol when did you become a core member?
<FromGitter> <straight-shoota> @Jens0512 sadly, big things are currently not really moving...
<FromGitter> <straight-shoota> but windows is certainly on the table, although it's been stalled for a few months
<FromGitter> <sdogruyol> @straight-shoota I've been in the team for a while, just joined the organization on GH though
ua_ has joined #crystal-lang
ua__ has quit [Ping timeout: 260 seconds]
rohitpaulk has joined #crystal-lang
<FromGitter> <Jens0512> Aw, no big things
<FromGitter> <Jens0512> That Nuumite looks more like it (Not just 4 lines of crystal)
<FromGitter> <bararchy> @Jens0512 you mean you want to see big projects made using Crystal ?
<FromGitter> <bararchy> you can take a look at https://github.com/veelenga/awesome-crystal
<FromGitter> <Jens0512> I meant the compiler really, but big projects are also cool :D, i think I know most of the big ones on github though
ua_ has quit [Ping timeout: 255 seconds]
straight-shoota has joined #crystal-lang
ua has joined #crystal-lang
<FromGitter> <straight-shoota> @sdogruyol ah that's why it felt odd
<FromGitter> <sdogruyol> yup
<FromGitter> <straight-shoota> It's nice to see some PR reviewed and approved ;)
<FromGitter> <bararchy> it's a "first day in the office" syndrom :) ⏎ let's see him next week
<FromGitter> <bararchy> hahah
<FromGitter> <bararchy> but really, nice work @sdogruyol
<FromGitter> <bararchy> btw, this is really cool https://github.com/veelenga/ameba
<FromGitter> <bararchy> I think I'll actually use that for out inhouse development
<FromGitter> <bararchy> thanks for this great tool @veelenga
DTZUZU has quit [Read error: Connection reset by peer]
<FromGitter> <saibotma> Can i use reflection with Crystal. Like getattr/setattr for Python?
<FromGitter> <straight-shoota> @saibotma Crystal hast noch runtime reflection
<FromGitter> <straight-shoota> But you can achieve some tasks with time macros
<FromGitter> <straight-shoota> compile
DTZUZU has joined #crystal-lang
<FromGitter> <bararchy> Does someone have a query for github to see how many users have atleast one crystal repo ?
<FromGitter> <bararchy> maybe @sdogruyol
<FromGitter> <bararchy> 282 users, that sounds a little low no?
That_Guy_Anon has joined #crystal-lang
<FromGitter> <mamantoha> Maybe you're right. I can't find myself :)
<FromGitter> <bararchy> do you have a crystal repo? maybe it's not counting forked repos
That_Guy_Anon has quit [Ping timeout: 264 seconds]
<FromGitter> <straight-shoota> Might be reasonable
<FromGitter> <straight-shoota> I mean there are certainly many more people using crystal, but a lot of them probably hasn't published any shard on github
<FromGitter> <straight-shoota> There are 3k repos, and while 10 repos/user on average seems too high, there are also organisations
<FromGitter> <straight-shoota> Would be a fun excercise to dig through GitHub's API to see if there are any discrepancies...
<FromGitter> <bararchy> language:javascript location:russia matches users in Russia with a majority of their repositories written in JavaScript.
<FromGitter> <bararchy> `majority`
<FromGitter> <bararchy> so this only shows users with majority or repos in Crystal
<FromGitter> <bararchy> So per their docs `language:crystal` is only users which have majority of repos written in Crystal
<FromGitter> <bararchy> maybe we can somehow filter "at least oine"
pbodev1 has joined #crystal-lang
duane has joined #crystal-lang
That_Guy_Anon has joined #crystal-lang
<FromGitter> <mamantoha> Someone can try get all Crystal repositories and get owners
<livcd> I want to get a statistic of programming languages used by location @ github :S
<livcd> ah i can just type location:
shalmezad has joined #crystal-lang
<FromGitter> <bararchy> livecd any interesting facts you found?
<FromGitter> <bararchy> where do people mostly use Crystal ?
fr3d has joined #crystal-lang
<fr3d> Hi
<FromGitter> <bararchy> hi
<livcd> nothing much
<livcd> I have triggered the abuse detector mechanism :S
fr3d has quit [Quit: leaving]
<FromGitter> <bararchy> LOL
<FromGitter> <bararchy> that's what happene when you ⏎ ⏎ ```while true; do curl github; done``` [https://gitter.im/crystal-lang/crystal?at=5acf5224270d7d3708bcf159]
rohitpaulk has quit [Ping timeout: 245 seconds]
<FromGitter> <bararchy> how do you guys measure elapsed time for something? ⏎ ⏎ I usually do time before, time after and just minus them
<RX14> Time.measure
<RX14> https://crystal-lang.org/api/master/Time.html#measure(&block):Time::Span-class-method
<RX14> I think it's on 0.24.0
<RX14> I get confused at whats in master and whats in 0.24.0
<RX14> 0.24.2*
<FromGitter> <bararchy> RX14 thanks, it's much nicer
<RX14> cool
<RX14> and it's more accurate
<RX14> and won't break on leap seconds
<RX14> because it uses monotonic time
<FromGitter> <bararchy> What does the MB on the side means? ⏎ ⏎ ```code paste, see link``` [https://gitter.im/crystal-lang/crystal?at=5acf5cac5f188ccc1559d245]
<FromGitter> <j8r> maybe the amount of computed data?
<FromGitter> <sdogruyol> memory?
<FromGitter> <bararchy> RX14 do you maybe know?
<crystal-gh> [crystal] sdogruyol closed pull request #5943: Fix HTTP::ChunkedContent#peek return empty bytes at EOF (master...jm/fix/chunked-peek-empty) https://git.io/vxNOt
That_Guy_Anon has quit [Quit: Leaving]
<FromGitter> <bararchy> memory_usage_str = " (%7.2fMB)" % {memory_usage_mb}
<FromGitter> <bararchy> make sense
<FromGitter> <bararchy> so it's mem usage of the compiler while compiling
<FromGitter> <sdogruyol> yup
<FromGitter> <sdogruyol> I thought it's pretty obvious, isn't it?
<FromGitter> <bararchy> Wasn't sure tbh, I thought it might be the binery size in mem? or maybe some file collection etc..
<FromGitter> <bararchy> yeha, I guess now i should have guessed
<FromGitter> <bararchy> I also remmber that people said programs take lots of mem to get compiled, but 219 isn't that high
<FromGitter> <sdogruyol> well, if you don't have a lot of macro / templates..it should be OK
<FromGitter> <bararchy> we also use 11 other shards in it
<FromGitter> <bararchy> 1) std lib that gets added while compiling
<FromGitter> <bararchy> so overall it's lots of lines of code
<FromGitter> <bararchy> our bin is at 1.5Mb size
<FromGitter> <bararchy> it's cool :)
<FromGitter> <sdogruyol> awesome :metal:
<FromGitter> <bararchy> so, our solution is right now 31599 lines of code alone
<crystal-gh> [crystal] sdogruyol pushed 2 new commits to master: https://git.io/vxxKo
<crystal-gh> crystal/master 89cb674 Johannes Müller: Add examples for parse(IO) to JSON, YAML...
<crystal-gh> crystal/master 4400657 Serdar Dogruyol: Merge pull request #5936 from straight-shoota/jm/docs/json-yaml-read-file...
<FromGitter> <sdogruyol> without any dependencies?
<FromGitter> <bararchy> yeha
<FromGitter> <sdogruyol> that might be the biggest Crystal codebase, after the Crystal compiler
<FromGitter> <sdogruyol> how long does it actually take to compile?
<FromGitter> <bararchy> on release ?
<FromGitter> <sdogruyol> both
<FromGitter> <bararchy> CPU: Intel Xeon CPU E3-1505M v6 @ 4GHz ⏎ ⏎ `--release` > make 25.58s user 0.87s system 44% cpu 59.552 total ⏎ `--debug` > make debug 11.73s user 1.20s system 64% cpu 20.119 total [https://gitter.im/crystal-lang/crystal?at=5acf637c109bb04332b5e194]
<FromGitter> <bararchy> @sdogruyol
<FromGitter> <sdogruyol> wow, you got some horsepower there haha
<FromGitter> <bararchy> :)
<FromGitter> <bararchy> ls
<FromGitter> <yxhuvud> 25s is a lot though.
<FromGitter> <bararchy> I think total is the actual time no?
hightower3 has joined #crystal-lang
<FromGitter> <bararchy> I wish the compiler could use multiple cores to compile, that would make it even faster
hightower2 has quit [Ping timeout: 264 seconds]
<FromGitter> <j8r> and reusable precompiled objects
duane has quit [Ping timeout: 260 seconds]
<FromGitter> <bararchy> It uses those , but only in non release mode
SuperChickeNES has quit [Quit: ZNC 1.6.1 - http://znc.in]
<FromGitter> <faustinoaq> @bararchy Did you try using `--no-debug` and `--lto=thin` flags with clang? Ref: https://github.com/crystal-lang/crystal/pull/4367 😄
<travis-ci> crystal-lang/crystal#4400657 (master - Merge pull request #5936 from straight-shoota/jm/docs/json-yaml-read-file): The build passed. https://travis-ci.org/crystal-lang/crystal/builds/365616590
<DeBot> https://github.com/crystal-lang/crystal/pull/5936 (Docs: Add examples for parse(IO) to JSON, YAML)
<FromGitter> <sam0x17> @yxhuvud no, nor should crystal be needed to run a crystal-produced binary in production -- you just compile the binary with --release --static and you can run it on virtually any linux server
wrqrb has joined #crystal-lang
bzb_hh has joined #crystal-lang
bzb_hh has quit [Client Quit]
benharri has quit [Quit: The Lounge - https://thelounge.github.io]
benharri has joined #crystal-lang
snsei has joined #crystal-lang
<livcd> 25s is not that bad is it ?
<FromGitter> <yxhuvud> ah right, you don't compile in place. good point. It may be hard to get the arch specific optimizaitons unless you know what to specify then though.
<FromGitter> <faustinoaq> > In release mode, the compilation of the compiler is reduced from ~7mins to ~2mins. ⏎ ⏎ @bararchy Try `--lto=thin` 😉 https://github.com/crystal-lang/crystal/issues/4367
snsei has quit [Remote host closed the connection]
<crystal-gh> [crystal] sdogruyol closed pull request #5908: Update documentation for NamedTupleLiteral#[] (master...patch-1) https://git.io/vxXJS
straight-shoota has quit [Quit: Quit]
<crystal-gh> [crystal] sdogruyol pushed 1 new commit to master: https://git.io/vxxHO
<crystal-gh> crystal/master 2e1fee6 r00ster91: Remove wrong "Based on " links (#5851)...
<crystal-gh> [crystal] sdogruyol closed pull request #5606: Markdown: fix handling of code fences appearing on the same line (master...code-fence) https://git.io/vN0oC
<FromGitter> <wrq> I'm having difficulty installing crystal on armhf. On Xenial, but dist.crystal-lang.org/apt crystal InRelease doesnt support the armhf arch
<FromGitter> <wrq> I think I had crystal installed on this machine before, dont really remember
<FromGitter> <j8r> yes, with the portalier repo
<FromGitter> <j8r> bu it's quite old now (0.23.1)
<FromGitter> <wrq> so if I want to run 0.24-*, what do I do?
<FromGitter> <wrq> can I use that old version's binary to build 0.24 from source?
<FromGitter> <j8r> you need to cross-compile it :-/
<FromGitter> <j8r> hum yes
<FromGitter> <j8r> you can compile the new compiler with the old one
<FromGitter> <wrq> you read my mind, thank you
<FromGitter> <j8r> Crystal is being ported to armhf, an has been ported to arm64 recently
<FromGitter> <j8r> when done, I hope we will be able to provide a static compiler for x86-64 and ARMs
<FromGitter> <wrq> I'm on ARM64
<FromGitter> <sdogruyol> wow @j8r , are you leading the effort?
<FromGitter> <bararchy> Nice
qard has joined #crystal-lang
<FromGitter> <bararchy> @faustinoaq I'll give it a try
<FromGitter> <j8r> I would like, but I haven't really the knowledges - i've opened an issue https://github.com/crystal-lang/crystal/issues/5467 . Hopefully @jirutka has made an awesome work!
<FromGitter> <j8r> But on the system side, for the CI and Docker, I can help. I'm working on an Alpine container that have all we need to make static crystal binaries :-D
<FromGitter> <wrq> hey just FYI, that portalier person's site is updated, that repo has a crystal 0.24.2 that builds on armhf
<FromGitter> <wrq> which saves me some work, which is awesome
<FromGitter> <j8r> great!!
<FromGitter> <wrq> yes, thank you btw, I appreciate your help! I did some googling before I asked the chat, but I'm glad you were around to help!
<FromGitter> <j8r> np! not easy to find, I have this link still lying on my history :-)
<FromGitter> <sam0x17> @yxhuvud the alternative is to have a dedicated cloud function that does your build and deploys another cloud function based on args
<FromGitter> <sam0x17> I'm planning on releasing something that automates this
<FromGitter> <girng> btw @oprypin you make me feel very sad in the past couple days. please be more nicer to me, i praise your education and look up to smarter people than me, thank you
<travis-ci> crystal-lang/crystal#2e1fee6 (master - Remove wrong "Based on " links (#5851)): The build passed. https://travis-ci.org/crystal-lang/crystal/builds/365648862
<DeBot> https://github.com/crystal-lang/crystal/pull/5851 (Remove wrong "Based on " links)
<travis-ci> crystal-lang/crystal#fedb6dd (master - Merge pull request #5908 from straight-shoota/patch-1): The build passed. https://travis-ci.org/crystal-lang/crystal/builds/365647981
<DeBot> https://github.com/crystal-lang/crystal/pull/5908 (Update documentation for NamedTupleLiteral#[])
<travis-ci> crystal-lang/crystal#ba77124 (master - Markdown: fix handling of code fences appearing on the same line (#5606)): The build passed. https://travis-ci.org/crystal-lang/crystal/builds/365650216
<DeBot> https://github.com/crystal-lang/crystal/pull/5606 (Markdown: fix handling of code fences appearing on the same line)
<crystal-gh> [crystal] RX14 closed pull request #5839: Update CI distribution scripts (master...feature/gc-large-config) https://git.io/vx38P
<FromGitter> <fridgerator> @girng he's very terse and rude, dont take it personally
flaviodesousa has quit [Ping timeout: 276 seconds]
<FromGitter> <girng> @fridgerator it's fine really. i understand im annoying sometimes asking a lot of redundant questions and not listening 100%. i just ask to be more tolerant towards me that's all. i like opyrpin and he has helped me a lot.
<FromGitter> <girng> i learned a lot already and appreciate it from all too.
<FromGitter> <veelenga> > btw, this is really cool https://github.com/veelenga/ameba ⏎ @bararchy it is usable, but still requires a lot of work. I need to prepare some roadmap. Maybe someone who interested would join and help
<FromGitter> <bararchy> @veelenga I'll take a look at the code and try to help out, I opened relevant issues I found
<FromGitter> <bararchy> @girng you're fine :) we love you here keep the questions coming
<FromGitter> <veelenga> @bararchy i've seen. Thx
qard has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<FromGitter> <bararchy> @veelenga it's a really good tool, I integrated it with circleCI and our release cycle it really helps my manage code style from new devs
qard has joined #crystal-lang
<FromGitter> <veelenga> @bararchy wow, great! I hope it will do much more in the future. So much can be done here...
<RX14> @bararchy compiling without --debug should be faster
<RX14> and --debug is useless unless you go in with gdb
<RX14> --debug != no flag
<FromGitter> <bararchy> I know, we use lldb for some stuff
<RX14> hmm
<FromGitter> <bararchy> I prefer puts debugging , my some prefer lldb
<RX14> I wonder what the difference is though
<RX14> between --debug and no flag
<RX14> would be useful to get times
<FromGitter> <bararchy> I'll create a list in a gist of all options :)
<FromGitter> <bararchy> I also remove the cache dir between each compile (when benchmarking not usually)
<RX14> --lto=thon likely won't get you anything except for in release mode builds
<FromGitter> <bararchy> I'll also add thin lto
<RX14> @bararchy nah you need a full matrix of
<RX14> cache, no cache
<RX14> lto
<RX14> debug options
<RX14> release options
<FromGitter> <bararchy> Sure, if it interest people I'll take the time to make it
<RX14> it'd be interesting, not sure how useful
<RX14> if you have free time it'd be fun
<RX14> and doing the same with the compiler would be interesting to see how the codebase affects it
<RX14> since the compiler and spec suites are really the only large codebases we have to compare
<FromGitter> <bararchy> We don't have many macros etc.. As we always know the ENV and external details before compiling , I guess this saves us from much longer compile times, also we don't have any `T` usages
<RX14> any large class hierarchies?
<RX14> or is it just pure maths for the large part
<RX14> also how many shard dependencies?
<travis-ci> crystal-lang/crystal#e7860df (master - Update CI distribution scripts (#5839)): The build passed. https://travis-ci.org/crystal-lang/crystal/builds/365677387
<DeBot> https://github.com/crystal-lang/crystal/pull/5839 (Update CI distribution scripts)
wrqrb has quit [Quit: Connection closed for inactivity]
<FromGitter> <bararchy> RX15
<FromGitter> <bararchy> LOL damn
<FromGitter> <bararchy> RX14 we have 12 shards , some are ours and some community , we got around 30-35k lines of code in main project .
<RX14> cool
duane has joined #crystal-lang
<FromGitter> <bararchy> We have class hierarchy and inherent , also structs and abstract classes
<FromGitter> <bararchy> I'm also kinda dead code fanatic in the sense that I won't leave any future use code or experiment in the source and we do weekly cleaning to keep the codebase to minimum
<FromGitter> <j8r> @bararchy what type of application is it?
<FromGitter> <bararchy> "Cognitive Fuzzer" we use offensive cyber tools and technologies with machine learning algorithms to automate security testing and 0day detection
<FromGitter> <j8r> sounds amazing :-D
<FromGitter> <j8r> is it open source (yet)?
<FromGitter> <bararchy> Haha no, were a private company , but we do open source many things
<FromGitter> <bararchy> github.com/NeuraLegion
<FromGitter> <j8r> and how the company has embraced crystal? someone (you?) pushed it?
<FromGitter> <j8r> I see you probaly use FANN for Machine Learning, it seems no longer maintained. Why have chosen it?
<FromGitter> <bararchy> We made our own, take a look at SHAInet @j8r
<FromGitter> <j8r> ok, I suppose you moved from FANN and build SHAInet - nice!
That_Guy_Anon has joined #crystal-lang
<FromGitter> <girng> i love CRYSTAL !
<FromGitter> <Sjoerrdd> Same here 😍
<FromGitter> <j8r> @girng and you also love @oprypin 😁
<FromGitter> <girng> ahahahaa
sz0 has joined #crystal-lang
alex`` has joined #crystal-lang
<FromGitter> <girng> "Don't worry about a memory leak, it's the job of the GC to cleanup the Character instances when they are no longer used." ⏎ ⏎ does this mean the GC re-uses old memory blocks that arn't used, and re-used that segmented data? so the memory doesn't increase infinitely, right?
<OvermindDL1> That is a big point of pooling GC's yes
alex`` is now known as alexherbo2
<FromGitter> <girng> so new classes tht get increased <DB_Chracter(MEMORYADDRESSHERE)> are basically being pooled and the GC takes care of them
<OvermindDL1> j8r: RC's can be pooling as well, this is mostly just a pooling feature
alexherbo2 is now known as alex``
<OvermindDL1> girng: Yep
<FromGitter> <girng> @OvermindDL1 but the memory addresses are all new. do they eventually go back to the old memory address block at some point? I imagine if they keep creating new memory blocks the usage will get higher and higher
<FromGitter> <girng> (when you do puts class)
<FromGitter> <girng> you can see the memory address space that is allocated
<OvermindDL1> Probably just not got to a point where the GC has run yet to let it reuse, it allocates in large Pages (if I recall right from the ol' hans-bohem collector)
<OvermindDL1> And it generally only marks and sweeps when a certain percentage of it is used
<FromGitter> <girng> i see. so when we are utilizing the db module and doing `result = db.query_one? "MYSQLQUERYHERE" as: DB_Character` ⏎ ⏎ ```code paste, see link``` ⏎ ⏎ but, when you do puts `results`, you get `#<DB_User:0x1cb1c00>`, and the `0x1cb1c00` changes each time. It's a new memory block. that is normal? [https://gitter.im/crystal-lang/crystal?at=5acfa0d17c3a01610dd6f3ed]
<FromGitter> <girng> but why does it need to create a new memory block / new address space when the mapping is all static values, doesn't make sense to me
fryguy9 has joined #crystal-lang
<FromGitter> <bararchy> @girng what is `cc` in the char page ?
<FromGitter> <girng> character class
<FromGitter> <bararchy> Oh, int8 ? :)
<FromGitter> <girng> lol
<FromGitter> <bararchy> What if you will want to make an expansion with 'necrodruidarchwarriro' and be left without unique numbers ? :)
<FromGitter> <girng> that was part my of my premature optimization of all evil...
<FromGitter> <girng> i was assigning hcaracter class to an integer, to read from a dictionary by key... to save space
<FromGitter> <girng> it's an old remnant / issue i have, im sorry for it
<FromGitter> <girng> but, crystal has made me think better of that now =]
<crystal-gh> [crystal] sdogruyol closed pull request #5935: Include type restriction on getters in JSON/mapping (master...json-type) https://git.io/vxd7G
Jenz has joined #crystal-lang
Jenz has quit [Client Quit]
Jenz has joined #crystal-lang
Jenz has left #crystal-lang [#crystal-lang]
Jenz has joined #crystal-lang
<travis-ci> crystal-lang/crystal#bdab495 (master - Include type restriction on getters in JSON/mapping (#5935)): The build passed. https://travis-ci.org/crystal-lang/crystal/builds/365753746
<DeBot> https://github.com/crystal-lang/crystal/pull/5935 (Include type restriction on getters in JSON/mapping)
<FromGitter> <girng> @sdogruyol i said in tht topic on reddit you use kemal for your hotel services, should help, thank you
qard has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
fryguy9 has quit [Quit: Leaving.]
<FromGitter> <girng> 😄 😄 😄 😄
fryguy9 has joined #crystal-lang
fryguy9 has quit [Client Quit]
alex`` has quit [Ping timeout: 255 seconds]
Jenz has quit [Quit: Lost terminal]
<FromGitter> <fridgerator> lol
qard has joined #crystal-lang
<FromGitter> <girng> *Necessary Evil* ENGAGED, full throttle ahead
<oprypin> girng, hey u can do `macro everything_mapping(a); JSON.mapping(a); DB.mapping(a); end`
<FromGitter> <girng> wat is this sorcery
<RX14> oprypin: until you need to do anything even slightly different between the two and then you have a big diff undoing your usage of the macro
<oprypin> it's still going to be a huge mess even without the macro
<FromGitter> <evandrojr> Guys when I just add crystal binary to path, I get this error trying to compile: /usr/bin/ld: cannot find -lpcre collect2: error: ld returned 1 exit status. If I install via apt it works fine. I am using Linux Mint 18 that is compatible with Ubuntu 16.4. Does any of you have a clue about it?
<FromGitter> <evandrojr> It is probably some dependency missing in Ubuntu.
<FromGitter> <girng> are macros global?
<FromGitter> <girng> ```code paste, see link``` ⏎ ⏎ do i need to make my a parameter a global value somewhere? [https://gitter.im/crystal-lang/crystal?at=5acfc8541130fe3d36cf52b7]
<FromGitter> <girng> yah reading it now :D
<FromGitter> <girng> ok wait let me try to figure this out ignore above post plz
<oprypin> that's the spirit
<FromGitter> <girng> ```code paste, see link``` ⏎ ⏎ but i am receiving `for expression must be an array, hash or tuple literal, not Var:` what i do wrong 😢 [https://gitter.im/crystal-lang/crystal?at=5acfca64270d7d3708bf6f67]
shalmezad has quit [Quit: Leaving]
pbodev1 has quit [Quit: ChatZilla 0.9.93 [Firefox 56.0/20170903140023]]
<FromGitter> <straight-shoota> `mapping` are macros. They will not evaluate `temp_data` at runtime. It needs to be a macro variable and expanded as argument.
<FromGitter> <girng> well that kinda defeats the purpose of a macro im not going to pass in my object through the method.. code will extremely messy imo
<FromGitter> <girng> ima just go back to what i had,, tyhx though i tried
That_Guy_Anon has quit [Remote host closed the connection]
<oprypin> girng, sorry. I made a mistake. and the full example would be https://carc.in/#/r/3v6o
qard has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
qard has joined #crystal-lang
qard has quit [Client Quit]
<FromGitter> <girng> @oprypin sorry had gitter closed
<FromGitter> <girng> okay cool, i'll use that for now. thanks a bunch, lol
<FromGitter> <girng> i tried man :P
<FromGitter> <bew> RX14 oprypin, no need to copy everything, you can also do that: https://carc.in/#/r/3v7d
<FromGitter> <bew> @girng ^
qard has joined #crystal-lang
qard has quit [Client Quit]
qard has joined #crystal-lang
qard has quit [Ping timeout: 260 seconds]