snsei_ has quit [Remote host closed the connection]
HakanD____ has joined #crystal-lang
HakanD____ has quit [Ping timeout: 260 seconds]
soveran has joined #crystal-lang
soveran has joined #crystal-lang
soveran has quit [Changing host]
soveran has quit [Ping timeout: 252 seconds]
snsei has joined #crystal-lang
snsei has quit [Ping timeout: 245 seconds]
HakanD____ has joined #crystal-lang
HakanD____ has quit [Ping timeout: 252 seconds]
coderobe has quit [Remote host closed the connection]
coderobe has joined #crystal-lang
Philpax has joined #crystal-lang
onethirtyfive has joined #crystal-lang
eizua has joined #crystal-lang
soveran has joined #crystal-lang
soveran has quit [Ping timeout: 260 seconds]
onethirtyfive has quit [Remote host closed the connection]
snsei has joined #crystal-lang
snsei has quit [Ping timeout: 245 seconds]
kulelu88 has quit [Quit: Leaving]
HakanD____ has joined #crystal-lang
HakanD____ has quit [Ping timeout: 252 seconds]
<A124>
So.. I have not been there around much, but love to see stuff going. Thinking about what to pick for processing stuff and data. Golang, crystal at this stage, or something else? Speed is concern, so it shall be compiled or bytecode. One think I am curious about... how and where would Crystal fit in this: https://talks.golang.org/2014/gocon-tokyo.slide
<A124>
And a we all know, as much as some of us love Ruby, we hate it at the same time for performance.
<FromGitter>
<johnjansen> im using it in an ETL and it changes my development cycle its so quick
<FromGitter>
<johnjansen> where previously i would do test runs for small slices of data, now i can do huge chunks very quickly
<FromGitter>
<johnjansen> although the lack of some of my frequently used gems slows me down ocassionally
<A124>
Thank you for feedback.
<FromGitter>
<johnjansen> The gem space will fill in over time, and the language is a pleasure to use
<A124>
I drifted from Ruby as I tend to need performance to reduce hardware requirements. Thanks to another project I did bump into go. Not as fast as C but you can do stuff without pulling hair after you get in with the ways how to code.
<A124>
I did think about nim also. But seems it is behind in the game. And go is getting better in performance, while crystal is getting pretty darn usable.
<FromGitter>
<johnjansen> I get immense satisfaction from Crystal, and find it no more burdensome typing things when required. ⏎ In fact i wish Ruby had been typed like this from the beginning … Crystal is elegant fast and predictable.
<A124>
I would like to see tcp concurrency benchmarks, but do not posses the time to do so in all three languages. A good example would be HTTP(S) fetch given list of links).
<A124>
Go was behind C in handling that and in fact an application now is bottlenecked on bad code to handle application specific stuff plus networking. We found that it spawns many go routine threads and context switching of the CPU does consume a lot.
<A124>
Which was improved in 1.7. Plus there was the kernel CPU scheduler bug made finaly big voice in beginning of this year. So it is getting overall better.
johnjansen has joined #crystal-lang
johnjansen has quit [Client Quit]
snsei has joined #crystal-lang
HakanD____ has joined #crystal-lang
HakanD____ has quit [Ping timeout: 250 seconds]
soveran has joined #crystal-lang
soveran has quit [Ping timeout: 265 seconds]
dhk has quit [Quit: Leaving]
pawnbox has joined #crystal-lang
pawnbox has quit [Remote host closed the connection]
pawnbox has joined #crystal-lang
snsei has quit [Remote host closed the connection]
soveran has joined #crystal-lang
soveran has joined #crystal-lang
soveran has quit [Changing host]
HakanD____ has joined #crystal-lang
pawnbox has quit [Remote host closed the connection]
<Yxhuvud>
@johnjansen: you can probably put back all but the first character of the match and try again and iterate until you don't find more matches, but the performance of that would be awful.
HakanD____ has quit [Ping timeout: 260 seconds]
pawnbox has joined #crystal-lang
<Yxhuvud>
(it would take rindex with regexp to O(n²) (assuming linear implementation of regexps, which is a big assumption)
bjz has joined #crystal-lang
<crystal-gh>
[crystal] Lukc opened pull request #3430: Adds an “if” method to Bool. (master...master) https://git.io/vPPsS
A124 has quit [Ping timeout: 260 seconds]
bjz has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
Philpax has quit [Ping timeout: 252 seconds]
HakanD____ has joined #crystal-lang
pawnbox has quit [Remote host closed the connection]
pawnbox has joined #crystal-lang
A124 has joined #crystal-lang
bjz has joined #crystal-lang
bjz has quit [Client Quit]
bjz has joined #crystal-lang
ryanf has quit [Ping timeout: 268 seconds]
ryanf has joined #crystal-lang
pawnbox has quit [Remote host closed the connection]
pawnbox has joined #crystal-lang
jokke has quit [Quit: WeeChat 1.5]
pawnbox has quit [Remote host closed the connection]
pawnbox has joined #crystal-lang
snsei has joined #crystal-lang
mark_66 has joined #crystal-lang
jokke has joined #crystal-lang
snsei has quit [Ping timeout: 260 seconds]
Philpax has joined #crystal-lang
snsei has joined #crystal-lang
<jokke>
hello
snsei has quit [Ping timeout: 252 seconds]
<jokke>
there's @type.methods but is there a macro method to get _all_ methods (own, included and inherited)
<BlaXpirit>
jokke, no
<jokke>
why not?
<BlaXpirit>
i dunno, it's probably hard
<BlaXpirit>
it's possible that the macro stage happens before this is even known
<jokke>
it's possible to get the parent class and included modules, right?
<jokke>
so this would just be a recursion
<BlaXpirit>
i think currently the known information is only what's directly written in the syntax
<BlaXpirit>
semantic probably goes after macros
<jokke>
mh ok, would've thought it's compiled in two stages
<jokke>
or as many stages as there are macro expansions
<jokke>
but i guess that would slow thing down quite a bit :D
<jokke>
*things
<BlaXpirit>
jokke, parent class and included modules are known, yeah, one could use those to get previous methods but then you'd kinda be reimplementing half of the semantic stage
<FromGitter>
<sdogruyol> it literally eats memory lol
<FromGitter>
<raydf> Nice @johnjansen, last time i used was around 2014.
<RX14>
@sdogruyol more like it's constant memory
<FromGitter>
<johnjansen> Scala > Java ⏎ cant ever make myself go to Java
<RX14>
java 8's very usable in all honesty
<FromGitter>
<sdogruyol> @RX14 well yeah after getting JITted and warm :P
<FromGitter>
<sdogruyol> i didnt say it is not but
<FromGitter>
<sdogruyol> i cant stand it :P
<FromGitter>
<johnjansen> haha +1
<RX14>
well i'm talking more like if you set the memory parameters exactly right the memory usage is really quite good
<RX14>
ok
<RX14>
not good but ok
<FromGitter>
<sdogruyol> yeah i agree
<FromGitter>
<sdogruyol> it's OK
<RX14>
i would have no issue using java for any project, especially if I was allowed java 8
<RX14>
it's a solid language with solid tooling
<RX14>
and i respect it for that
<FromGitter>
<sdogruyol> same here
<Yxhuvud>
well, unless you have a lot of very long lived (but not immortal) objects. that is eventually really harshh for the GC.
ponga has quit [Quit: Connection closed for inactivity]
<FromGitter>
<sdogruyol> @RX14 the truth is that most of the Java code that's written and in production right now is utter crap
<Yxhuvud>
because suddenly you get a pause for 1sec/GB heap when the full compaction hits
<RX14>
@sdogruyol that may be true
<RX14>
i wouldn't want a legacy java codebase
<FromGitter>
<sdogruyol> that's really hard to find :P
<RX14>
but if you're sensible with java it can work really well
<RX14>
i think java gets an unneccesary reputation for being bad, while it's only fault is being plaugued by enterprise programmers who *don't really care* and just use the latest (anti)pattern they've learnt
<Yxhuvud>
it has certainly improved a lot over the years
<FromGitter>
<raydf> kotlin also is an amazing language for the jvm.
<RX14>
yeah nowadays I would probably use either kotlin or groovy
<RX14>
probably kotlin
<FromGitter>
<sdogruyol> Crystal is amazing too :D
<RX14>
oh yeah i forgot about that one
<FromGitter>
<raydf> :)
<Papierkorb>
I have an issue with a fiber which does #read on a TCPSocket, and then shoves that into a channel. Sometimes, it ends up consuming 100% CPU time in LibC.read - Will have to write a smaller example tomorrow to see if I can reproduce
<rkeene>
That is a huge URL.
<FromGitter>
<johnjansen> yeah sorry about that ...
trapped has joined #crystal-lang
pawnbox has joined #crystal-lang
trapped has quit [Read error: Connection reset by peer]
<Papierkorb>
johnjansen, I preferred String#length in ruby (and C++/Qt for that matter), but I don't like tons of aliases, so with that, what's wrong with String#size ?
<FromGitter>
<johnjansen> nothing, but tell that to the tons of Ruby code that needs only a minor change to work as is ;-)
<FromGitter>
<johnjansen> it was just a question ;-)
Ven_ has quit [Client Quit]
<Papierkorb>
Well, despite me liking String#length, but because of the generic-algorithm and general consistency I don't like the RFC ^^;
<FromGitter>
<johnjansen> im ok with whatever honestly
<Papierkorb>
yeah it's not a show-stopper eitherway
<FromGitter>
<johnjansen> my only thought is that moving from language to language is often hard, this time its easy … although pesky little things like this can get irritating and i dont want the `why wouldnt they have added it, its like one line dude` comments to detract from the wonderful language
pawnbox has quit [Remote host closed the connection]
bjz has joined #crystal-lang
HakanD____ has joined #crystal-lang
HakanD____ has quit [Quit: Be back later ...]
HakanD____ has joined #crystal-lang
HakanD____ has quit [Ping timeout: 252 seconds]
trapped has quit [Read error: Connection reset by peer]
bjz_ has joined #crystal-lang
Crizkov has joined #crystal-lang
bjz has quit [Ping timeout: 252 seconds]
<Crizkov>
Hi Crystal community! Someone knows How execute SDL crystal samples on Linux?
<Crizkov>
I got this error `undefined reference to `SDL_main'`
<Crizkov>
But SDL is already installed
soveran has quit [Remote host closed the connection]
<Crizkov>
:-)
<BlaXpirit>
Crizkov, what version of SDL
<BlaXpirit>
Crizkov, eh i'm getting the same
<Crizkov>
BlaXpirit: `sdl 1.2.15` on Manjaro
<Crizkov>
BlaXpirit: I commented `fun main` on `samples/sdl/sdl/lib_sdl.cr` and the sdl samples work well
<BlaXpirit>
hm good find. strange that this is done at all
<Crizkov>
BlaXpirit: BTW, the SDL examples looks pretty good!
<BlaXpirit>
Crizkov, heh i've never seen them. too bad they don't have many moving parts
bjz_ has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]