jhass changed the topic of #crystal-lang to: The Crystal programming language | http://crystal-lang.org | Crystal 0.7.4 | 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 has joined #crystal-lang
blue_deref has joined #crystal-lang
ponga has quit [Quit: Connection closed for inactivity]
fowlduck has quit [Remote host closed the connection]
wonderbreadz has joined #crystal-lang
shama has quit [Quit: (╯°□°)╯︵ɐɯɐɥs]
fowlduck has joined #crystal-lang
shaundavis has joined #crystal-lang
shaundavis has quit [Client Quit]
ponga has joined #crystal-lang
havenwood has quit [Ping timeout: 256 seconds]
havenwood has joined #crystal-lang
fowlduck has quit [Remote host closed the connection]
fowlduck has joined #crystal-lang
fowlduck has quit [Remote host closed the connection]
ponga has quit []
NeverDie has quit [Quit: I'm off to sleep. ZZZzzz…]
genixefr has quit [Quit: Leaving]
mfpiccolo has joined #crystal-lang
<mfpiccolo> Hi @anyone
<mfpiccolo> Is there a HTTP client library for crystal?
<havenwood> mfpiccolo: HTTP::Client is in the stdlib.
<mfpiccolo> +1
<havenwood> mfpiccolo: See also: https://github.com/manastech/webmock.cr#readme
<mfpiccolo> Cool. Thanks.
<havenwood> mfpiccolo: You're welcome. :)
<mfpiccolo> I am thinking about building a job queueing system to get me into the language
<mfpiccolo> has anyone done any work in that area?
<havenwood> mfpiccolo: Interesting, I don't know of any. Here's a pretty good list of what's on the Githubs: https://crystalshards.herokuapp.com/
<mfpiccolo> Awesome. Never worked with RabbitMQ but I have heard good things
<mfpiccolo> I was thinking of building a simpler version of delayed_jobs using the crystal_pg
<havenwood> mfpiccolo: Something Resque-compatible in Crystal might be really nice.
<havenwood> mfpiccolo: Like sidekiq, goworker or esque.
<mfpiccolo> I just never have been a huge fan of redis
ponga has joined #crystal-lang
<mfpiccolo> Maybe I am missing something though
fowlduck has joined #crystal-lang
fowlduck has quit [Ping timeout: 248 seconds]
blue_deref has quit [Quit: bbn]
BlaXpirit has joined #crystal-lang
<mfpiccolo> I am having trouble parsing json
<mfpiccolo> response_hash = JSON::Parser.new("{\"response\":{\"domain_data\":\"somedata\"}}").parse
<mfpiccolo> response_hash["response"]
<mfpiccolo> that throws a nil error
<mfpiccolo> but it returns prints when I pp
fowlduck has joined #crystal-lang
fowlduck has quit [Ping timeout: 248 seconds]
fowlduck has joined #crystal-lang
mfpiccolo has quit [Quit: Page closed]
<crystal-gh> [crystal] jessedoyle opened pull request #981: Add Int[index] syntax. (master...int-array) http://git.io/vmmYT
fowlduck has quit [Ping timeout: 248 seconds]
havenwood has quit [Quit: Textual IRC Client: www.textualapp.com]
mfpiccolo has joined #crystal-lang
mfpiccolo has quit [Client Quit]
guilleiguaran__ has joined #crystal-lang
zamith has joined #crystal-lang
zamith has quit [Ping timeout: 256 seconds]
zamith has joined #crystal-lang
fowlduck has joined #crystal-lang
fowlduck has quit [Ping timeout: 248 seconds]
GSDoep1YKow has quit [Changing host]
GSDoep1YKow has joined #crystal-lang
GSDoep1YKow has quit [Quit: WeeChat 1.2]
dzv has joined #crystal-lang
fowlduck has joined #crystal-lang
fowlduck has quit [Ping timeout: 248 seconds]
Ven has joined #crystal-lang
zamith has quit [Read error: Connection reset by peer]
zamith has joined #crystal-lang
zamith has quit [Ping timeout: 256 seconds]
zamith has joined #crystal-lang
zamith has quit [Quit: Be back later ...]
fowlduck has joined #crystal-lang
fowlduck has quit [Ping timeout: 248 seconds]
zamith has joined #crystal-lang
epitron has quit [Ping timeout: 244 seconds]
epitron has joined #crystal-lang
zamith has quit [Quit: Be back later ...]
zamith has joined #crystal-lang
bcardiff has joined #crystal-lang
fowlduck has joined #crystal-lang
fowlduck has quit [Ping timeout: 248 seconds]
NeverDie has joined #crystal-lang
waj has joined #crystal-lang
<waj> jhass: yesterday you said that “crystal deps” is going to be deprecated, but this is not true
<waj> from the beginning we wanted to have a dep manager integrated in the language
<jhass> well, replaced by something else with the same name then ;P
<waj> it’s just that ysbaddaden had more time that us to make progress in that area ;-)
NeverDie has quit [Max SendQ exceeded]
NeverDie has joined #crystal-lang
<waj> I just wish to avoid things like this: https://github.com/golang/go/wiki/PackageManagementTools
<waj> one option is that we integrate ysbaddaden work into crystal
<BlaXpirit> but why
<BlaXpirit> decentralized is best
<BlaXpirit> i don't know any language that has dependencies manager as part of the compiler...........
<waj> yup, I’m not talking about the centralized/decentralized topic
<waj> that’s true, but try to make something in Ruby without first installing bundler nowadays
<waj> in Erlang… rebar is becoming the standard
<waj> but until those tools are the one that everybody uses, maintaining dependencies is a painful thing
<waj> now talking about centralisation, I’m against it also
<waj> although I’d like to have a place where crystal libraries can be shared, discovered, commented, rated, etc…
<jhass> so make it a hybrid
<jhass> work by git URLs but have a registry for "names" or "aliases" for them
<jhass> I believe that's ysbaddaden's plan too
<waj> well… I’m not sure about having a unique namespace
asterite has joined #crystal-lang
<asterite> BlaXpirit: julia has a built-in package manager: http://julia.readthedocs.org/en/latest/manual/packages/
<jhass> rubygems is also shipped with the Ruby tarball
<asterite> BlaXpirit: Elixir comes with hex. I think this is the correct way to do things: a language is more than just its syntax, it's all the tools that are around it
<waj> in Ruby, some obvious names for a package become unmaintained
<BlaXpirit> that's not the only controversial built-in thing
<BlaXpirit> that julia has
<jhass> waj: asterite btw how was the flight? recovered from the jetlag? :P
<waj> still working on that :P
<asterite> jhass: same old story: the first hours you think you've beat the jet lag, but later you find out that's not true :-P
<jhass> hehe
<asterite> for now I feel fine and awake, I slept like 10 hours yesterday :)
<jhass> cool, then you may want to look at http://carc.in/#/r/6vg and I can finally close that tab :P
<waj> mm… yup, you must declare it as “macro def”
<jhass> sure, just found it while browsing the submissions and not saying it should work, just maybe not crash the compiler ;)
<waj> absolutely
<waj> back to dependencies, linking to git repositories is nice, but the hard problem to solve is when there are recursive and repeated depdendencies
<waj> in bundler a solver is used to find the best match
<waj> but the real problem is that all the dependency version of each version of the packages are needed to solve the equation
<waj> and checking out each tag might be a little slow :)
<waj> so I was thinking about placing that info in a file kept in a separate orphan branch
<waj> a “crystal release” command could maintain that branch automatically
<waj> then the dependency solver only have to retrieve that file from each repository
<waj> solve the equation and then pull the source code from each tag
<waj> that’s basically something that the rubygems server is used for, but in this way we could do it in a distributed way
<jhass> the downside being that you can only pull released versions
<waj> you can still reference to HEAD version, or even tags
<waj> but if that’s the case, no recursive dependencies can be solved
<waj> the same happens with bundler
<jhass> no
<jhass> bundler resolves those by reading the gemspec
<jhass> from the specified branch/ref
<waj> yes, but dependencies from a gem linked from github are always pulled from rubygems
<waj> we can still do the same
<waj> reading the Projectfile (or the .yml if we decide to merge ysbaddaden’s work)
<jhass> git deps just wrap path deps by cloning the repo first
<waj> but bundler doesn’t read the Gemfile of pulled dependencies, does it?
<jhass> no, the gemspec
<jhass> the Gemfile is irrelevant to gems
<waj> so, that’s my point… maybe I expressed myself incorrectly
<jhass> (beyond getting the right dev env for them)
<waj> if there’s packages A and B
<waj> A -> B
<jhass> the gemspec declares dependencies
<waj> if I only add the dependency A to my project, B can only be resolved from released versions
<waj> unless I add both A and B to my project
<waj> with specific pointers to the repositories
luislavena has joined #crystal-lang
havenwood has joined #crystal-lang
NeverDie has quit [Quit: I'm off to sleep. ZZZzzz…]
Ven has quit [Read error: No route to host]
fowlduck has joined #crystal-lang
kuadrosx has joined #crystal-lang
fowlduck has quit [Ping timeout: 255 seconds]
waj has quit [Quit: waj]
thor77 is now known as Waithamaii
Waithamaii is now known as thor77
shama has joined #crystal-lang
luislavena has quit [Remote host closed the connection]
asterite_ has joined #crystal-lang
asterite has quit [Read error: Connection reset by peer]
fowlduck has joined #crystal-lang
fowlduck has quit [Ping timeout: 248 seconds]
NeverDie has joined #crystal-lang
zamith has quit [Ping timeout: 244 seconds]
luislavena has joined #crystal-lang
bcardiff has quit [Ping timeout: 240 seconds]
ponga has quit [Quit: Connection closed for inactivity]
fowlduck has joined #crystal-lang
wmoxam_ has joined #crystal-lang
havenwood has quit [*.net *.split]
ddfreyne has quit [*.net *.split]
aemadrid has quit [*.net *.split]
wmoxam has quit [*.net *.split]
emmanueloga has quit [*.net *.split]
blue_deref has joined #crystal-lang
vikaton has joined #crystal-lang
<vikaton> asterite_: how was Rust ?
<asterite_> vikaton: The talk?
thor77 has quit [Quit: This shouldn't happen...]
_jungh4ns has joined #crystal-lang
ddfreyne has joined #crystal-lang
aemadrid has joined #crystal-lang
luislavena has quit []
thor77 has joined #crystal-lang
emmanueloga has joined #crystal-lang
a| has joined #crystal-lang
a| is now known as orliesaurus
<vikaton> asterite_: no the language itself
<vikaton> Weren't u trying it out ?
nahtnam has joined #crystal-lang
<asterite_> vikaton: not sure what you mean
<nahtnam> So what is crystal? It pretty much looks like ruby to me
<nahtnam> i dont see the difference
<vikaton> nahtnam: it compiles to native code
<vikaton> Statically typed
<vikaton> asterite_: weren't you in the Rust irc a few months ago ?
<nahtnam> vikaton: Can you do that with jruby
<nahtnam> *cant
<vikaton> nahtnam: I'm not sure jruby compiles to native code,but Crystal is much faster
<vikaton> nahtnam: Crystal compiles to LLVM
<vikaton> not Java byte code
<vikaton> Which I assume jruby does
<nahtnam> Ah kk
<jhass> nahtnam: jruby compiles to a bytecode for the JVM which then interprets it, basically
<jhass> and if you actually try out crystal you'll quickly notice differences :D
<jhass> like
<nahtnam> So I want to setup an application + api that when it receives and api call, it starts up a docker server. is that possible with crystal?
<jhass> >> a = []
<DeBot> jhass: Syntax error in eval:4: for empty arrays use '[] of ElementType' - http://carc.in/#/r/74t
<jhass> sure
<jhass> but not sure you really need crystals performance for that
<nahtnam> jhass: Would it be possible in plain ruby?
<jhass> sure
<vikaton> Anything is possible !
<nahtnam> Oh lol, i didnt think it was possible in ruby...
<jhass> why not?
<nahtnam> I didnt think ruby was capable of running commands
<jhass> oO
<jhass> why not?
<nahtnam> I didnt look it up
<nahtnam> and I never did it before
<nahtnam> And also
<nahtnam> Wheneverize makes you type the cron commands instead of doing it for you
<nahtnam> and so I assumed that it couldnt
<nahtnam> Well, TIL
<nahtnam> One last question. How does crystal compare to go's performance?
<nahtnam> From some of the benchmarks I looked at, it looks like crystal is faster
<nahtnam> thats amazing
<jhass> some things are faster, some are slower
<nahtnam> According to this: https://github.com/kostya/benchmarks
<nahtnam> Most are faster
<asterite_> Go right now is faster creating lightweight processes and switching between them, but is slower executing algorithms... probably because they don't optimize like we do (that is, using LLVM optimizations :-))
<asterite_> but both Go and Crystal are fast enough for most apps you'd want to build
<nahtnam> Ill try out crystal
<nahtnam> because its syntax = ruby
<vikaton> asterite_: remember you asked by there was an unstable channel for Rust ?
<asterite_> vikaton: oh, I was able to compile the code with rust head
<vikaton> asterite_: yeah, I was wondering how your experience coding in Rust was like if you did any
<asterite_> Oh, I have no experience... we toyed with waj a bit to learn it and realized you probably need lots of annotations to write a program... or maybe we were doing something wrong
<asterite_> We definitely want to learn it, we'd like safe concurrency but right now it's hard to acheive... well, you can share by communicating, but you might choose not to follow that rule and the compiler won't prevent you from doing so
<nahtnam> I cant install crystal on ubuntu
<nahtnam> The bash script thing gets stuck
<jhass> try the manual steps?
<BlaXpirit> nahtnam, use repository
<nahtnam> BlaXpirit: Which?
<nahtnam> jhass: They manual steps run fine
<BlaXpirit> nahtnam, it's on the same page
<nahtnam> but it says cant find cystal
<nahtnam> but ill just update and check
<BlaXpirit> oh apparently "manual steps" = "repository"
<nahtnam> Unable to locate package crystal
<willl> asterite_: I wanted to play with using the sse crc32 intrinsics (llvm.x86.sse42.crc32.64.64), but got stuck at trying to figure out how to pass the equivalent of -march native since llvm is linked instead of called as a command. any ideas? At least I think it needs -march=native, but that is just a guess from reading mailing lists
<BlaXpirit> nahtnam, are you sure you apt-get updated
<vikaton> asterite_: what types of annotations? Rust has type inference, maybe I can help clear things up if you think you are doing something wrong?
<nahtnam> BlaXpirit: Just did that
<BlaXpirit> well then maybe it wasn't added properly
<BlaXpirit> this worked well for me
<asterite_> willl: where are these intrinsics documented?
<asterite_> vikaton: mostly the lifetime annotations, 'a ...
<vikaton> asterite_: those are explicit, you usually don't need to use those but I'm not sure what you were creating
<asterite_> vikaton: Like, a type that holds a reference to another type
<vikaton> &'a str is explicit version of &str
<nahtnam> BlaXpirit: Lol, now its working
<asterite_> vikaton: in any case, we just toyed with it for an hour, can't really comment on it
<vikaton> asterite_: example? You might want to pm me so this doesn't become #rust lol
<willl> asterite_: I can't find great docs for them, It'd probably be better to use xmmintrin.h but I also couldn't get that to link without flags :/ http://clang.llvm.org/doxygen/xmmintrin_8h_source.html
<nahtnam> Is this cross platform?
<nahtnam> windows + mac + linux?
<jhass> windows not really yet, very alpha and not in the core repo
<nahtnam> Kk
<asterite_> willl: I don't know, maybe those are new in 3.7? I don't know how to invoke them if they are not in the statically linked llvm
<willl> ok thanks!
<asterite_> willl: in fact, I can't find that intrinsic anywhere in google except in old threads... maybe they removed it?
strcmp1 has joined #crystal-lang
<crystal-gh> [crystal] asterite closed pull request #980: document `with ... yield` [ci skip] (gh-pages...doc-with) http://git.io/vmf5L
<willl> asterite_: maybe. This http://clang.llvm.org/doxygen/xmmintrin_8h_source.html is still there, but I can't figure out how to call that from crystal
zamith has joined #crystal-lang
<asterite_> willl: is that from clang or llvm?
<asterite_> maybe clang adds some built-ins to llvm
<willl> looks like clang http://pastie.org/10292804
asterite_ has quit [Remote host closed the connection]
flaviu has quit [Ping timeout: 250 seconds]
NeverDie has quit [Quit: I'm off to sleep. ZZZzzz…]
blue_deref has quit [Quit: bbn]
NeverDie has joined #crystal-lang
flaviu has joined #crystal-lang
BlaXpirit has quit [Quit: Konversation]
zamith has quit [Quit: Be back later ...]
zamith has joined #crystal-lang
Ven has joined #crystal-lang
zamith has quit [Ping timeout: 246 seconds]
nahtnam has quit [Quit: Connection closed for inactivity]
kuadrosx has quit [Ping timeout: 246 seconds]
fowlduck has quit [Remote host closed the connection]
fowlduck has joined #crystal-lang