jhass changed the topic of #crystal-lang to: The Crystal programming language | http://crystal-lang.org | Crystal 0.7.6 | Fund Crystals development: http://is.gd/X7PRtI | 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
blue_deref has joined #crystal-lang
knoopx has joined #crystal-lang
shama has quit [Quit: (╯°□°)╯︵ɐɯɐɥs]
sailorswift has joined #crystal-lang
kyrylo has joined #crystal-lang
strcmp1 has joined #crystal-lang
NeverDie has quit [Ping timeout: 244 seconds]
NeverDie has joined #crystal-lang
Cidan is now known as zz_Cidan
kyrylo has quit [Ping timeout: 250 seconds]
zz_Cidan is now known as Cidan
knoopx has quit [Remote host closed the connection]
Cidan is now known as zz_Cidan
blue_deref has quit [Quit: bbn]
strcmp1 has quit [Quit: Leaving]
NeverDie has quit [Quit: I'm off to sleep. ZZZzzz…]
nahtnam has joined #crystal-lang
eam has quit [Ping timeout: 245 seconds]
eam has joined #crystal-lang
havenwood has joined #crystal-lang
elbow has joined #crystal-lang
elbow has quit [Remote host closed the connection]
elbow has joined #crystal-lang
gour has joined #crystal-lang
ingsoc has joined #crystal-lang
havenwood has quit [Quit: Textual IRC Client: www.textualapp.com]
leafybasil has quit [Remote host closed the connection]
leafybasil has joined #crystal-lang
kyrylo has joined #crystal-lang
leafybasil has quit [Ping timeout: 246 seconds]
leafybasil has joined #crystal-lang
Ven has joined #crystal-lang
sleeper_ is now known as sleeper
<crystal-gh> [crystal] asterite pushed 2 new commits to master: http://git.io/v31eb
<crystal-gh> crystal/master 2579cb9 Ary Borenszweig: Scope Bcrypto::Base64 inside Crypto module
<crystal-gh> crystal/master 4b24bb9 Ary Borenszweig: Reimplemented `Int#>>` and `Int#<<` to check overflows. Removed `>>` and `<<` as primitives. Fixes #305
<travis-ci> manastech/crystal#4b24bb9 (master - Reimplemented `Int#>>` and `Int#<<` to check overflows. Removed `>>` and `<<` as primitives. Fixes #305): The build passed. https://travis-ci.org/manastech/crystal/builds/75578519
Ven has quit [Ping timeout: 250 seconds]
lokulin has joined #crystal-lang
lokulin has quit [Changing host]
<crystal-gh> [crystal] asterite pushed 1 new commit to master: http://git.io/v31t9
<crystal-gh> crystal/master 8848140 Ary Borenszweig: Fixed some restrictions logic regarding generic classes metaclasses. Related to #1176
<travis-ci> manastech/crystal#8848140 (master - Fixed some restrictions logic regarding generic classes metaclasses. Related to #1176): The build passed. https://travis-ci.org/manastech/crystal/builds/75582069
BlaXpirit has joined #crystal-lang
sleeper is now known as sleeper_
elbow has quit [Ping timeout: 260 seconds]
sailorswift has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
flou has joined #crystal-lang
sleeper_ is now known as sleeper
elbow has joined #crystal-lang
sailorswift has joined #crystal-lang
sailorswift has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
flou has quit [Quit: Textual IRC Client: www.textualapp.com]
ingsoc1 has joined #crystal-lang
ingsoc has quit [Ping timeout: 250 seconds]
lucasb has joined #crystal-lang
<lucasb> Thank you, developers, for the 0.7.6 and the 32bit binary
<lucasb> A small nitpick that I don't know is worth fixing is that the "removed support for trailing while/until" item in the changelog doesn't link to the FAQ entry.
sleeper is now known as sleeper_
lucasb has quit [Quit: leaving]
havenwood has joined #crystal-lang
<gour> morning
<jhass> hi
<gour> btw, what is intended market for crystal?
<gour> iow. how does it comapre with e.g. ada/modula-2/pascal or langs like nimr/rust/D..
<gour> of ocaml/haskell from FP camp?
<jhass> it's still pretty much a hobby project, I don't think there are such specific plans ;)
<gour> in terms of speed, features, type-safety, concurrency...
<gour> jhass: what are some language from which it took inspiration besides ruby?
<jhass> its syntax is mainly based on Ruby
<jhass> The concurrency model is pretty much Go
<gour> what about "Statically type-checked but without having to specify the type of variables or method arguments.", it means one can annotate one's code and give hints to type-inference engine?
<jhass> yes
<jhass> in some cases you need to
<jhass> because inference would be too slow otherwise or simply isn't smart enough (yet)
<gour> good, waht is meant with "Have compile-time evaluation and generation of code, to avoid boilerplate code.", i mean the "to avoid..." part?
<jhass> >> class Foo; getter foo; def initialize(@foo); end; end; Foo.new("bar").foo
<DeBot> jhass: # => "bar" - http://carc.in/#/r/b9c
<jhass> getter is a macro, it writes a method like def foo; @foo; end
<jhass> it's not special syntax, you can write it yourself in the language
<gour> ahh, ok
<jhass> that's the most basic usecase, the macro language has a lot of power beyond that since it (in theory) has full AST access
<gour> some languages are fond of not having 'null pointer problem', and i just skimmed over http://crystal-lang.org/2013/07/13/null-pointer-exception.html does crystal really intend to have it 'solved? ?
<gour> btw, 68 contributors and ~3k stars looks good for hobby project ;)
<jhass> well, the proper way to "solve" it is highly opinionated ;)
<jhass> you have to explicitly trigger the NPEs so to say, nil is a regular value (and type) thus if something can be nil you need to explicitly resolve that to call a method that's not available on it
<gour> jhass: well, i'm thinking about reducing possibility to reduce ways to shoot one's own foot...even Ada has some 'unsafe' options one can explore
<jhass> the ways to resolve it are to check for nil and do something else for that case or raise an exception if you didn't expect nil
<jhass> sure, crystal is completely self hosted, thus you naturally have some unsafe primitives
<jhass> like pointers
<gour> ok, clear
<jhass> but you don't need them for 80-90% of your code, especially higher level code
<jhass> those primitives only get relevant if you need to squeeze out the last bit of performance really
<gour> do you expect to be in the rang of C(++) as far as performance is considered?
<jhass> roughly, it's a GC'd language, but in reach
<jhass> https://github.com/kostya/benchmarks should give you some category
<gour> impressive for 'alpha'!!
<jhass> well, building on LLVM gives you a lot ;)
<jhass> the alpha status is mainly signaling that you still can encounter language level bugs (compiler crashes, wrongly generated code and such) and that major backwards incompatible design changes still may happen
<jhass> it's certainly usable for some hobby project or two already
<jhass> also good time to contribute to stdlib and ecosystem
<gour> i did play a bit with ruby long ago and it seems RoR was most common usage of it. does crystal wants to penetrate web market or be general and/or system programming language used for writing gui apps etc.?
<jhass> what I meant with hobby project is that there's no such focus
<jhass> it's about building a programming language, the community shall decide where it'll shine
<gour> ok
<jhass> that said, there's certainly a focus on webby stuff in the community, 5-6 projects play with how a webframework could work for example
<jhass> but we also have some GUI bindings
<gour> any plan available about what should be added to the standard lib?
<jhass> https://github.com/manastech/crystal/tree/master/src there's quite a bit stuff already, oauth client, http client/server, json, xml, yaml etc
<gour> jhass: i see you're working on possible gtk3 bindings ;)
<jhass> Crystal inherited Ruby's open class model, so extending and patching it in your own project is easy and you can later upstream your patches if you have some time
<jhass> that's what I usually do
<jhass> well, not really actively working ;)
<jhass> but accepting patches!
NeverDie has joined #crystal-lang
NeverDie has quit [Remote host closed the connection]
<jhass> I usually only push things as far as I need them, in this case I wanted a libnotify binding and have it generated via gobject introspection, so I pushed it far enough to generate that, generate bindings for gobject introspection itself and a hello world Gtk app
<gour> i see...lot of web stuff created for crystal
blue_deref has joined #crystal-lang
kyrylo_ has joined #crystal-lang
kyrylo has quit [Ping timeout: 256 seconds]
kyrylo_ is now known as kyrylo
shama has joined #crystal-lang
leafybasil has quit [Remote host closed the connection]
leafybasil has joined #crystal-lang
leafybasil has quit [Ping timeout: 260 seconds]
strcmp1 has joined #crystal-lang
<crystal-gh> [crystal] asterite pushed 3 new commits to master: http://git.io/v3DVA
<crystal-gh> crystal/master e8902f6 Ary Borenszweig: Trap SIGINT in sdl raytracer sample
<crystal-gh> crystal/master 6748e03 Ary Borenszweig: Added some missing locations to AST nodes
<crystal-gh> crystal/master e5b6455 Ary Borenszweig: Fixed wrong link in Changelog
zz_Cidan is now known as Cidan
Cidan is now known as zz_Cidan
zz_Cidan is now known as Cidan
<travis-ci> manastech/crystal#e5b6455 (master - Fixed wrong link in Changelog): The build passed. https://travis-ci.org/manastech/crystal/builds/75633399
BlaXpirit has quit [Quit: Konversation]
waj has joined #crystal-lang
waj has quit [Client Quit]
waj has joined #crystal-lang
waj has quit [Client Quit]
BlaXpirit has joined #crystal-lang
waj has joined #crystal-lang
waj has quit [Client Quit]
waj has joined #crystal-lang
waj has quit [Client Quit]
waj has joined #crystal-lang
waj_ has joined #crystal-lang
waj has quit [Ping timeout: 240 seconds]
ingsoc1 has quit [Quit: Leaving.]
elbow has quit [Remote host closed the connection]
leafybasil has joined #crystal-lang
waj has joined #crystal-lang
waj_ has quit [Ping timeout: 240 seconds]
sfcgeorge has joined #crystal-lang
havenwood has quit [Quit: Textual IRC Client: www.textualapp.com]
gour has quit [Quit: WeeChat 1.1.1]
kyrylo has quit [Remote host closed the connection]
BlaXpirit has quit [Quit: Konversation]
<crystal-gh> [crystal] PragTob opened pull request #1180: Add a simple test to ensure alias_method works (master...spec-alias-method) http://git.io/v3SlY
<crystal-gh> [crystal] PragTob opened pull request #1181: Add Array prepend and append (master...add-Array-prepend-and-append) http://git.io/v3SuP
waj has quit [Remote host closed the connection]
sfcgeorg_ has joined #crystal-lang
sfcgeorge has quit [Ping timeout: 265 seconds]
<crystal-gh> [crystal] asterite pushed 1 new commit to master: http://git.io/v3SP3
<crystal-gh> crystal/master bbf2036 Ary Borenszweig: Reimplemented `Process.run`. Now there's just `Process.run` with a block and non-block forms. Kudos to @technorama
<crystal-gh> [crystal] asterite closed pull request #984: F/process spawn (master...f/process_spawn) http://git.io/vmcyH
havenwood has joined #crystal-lang
<crystal-gh> [crystal] asterite closed pull request #379: Add support for stderr access to Process.run and refactor it (master...process_run_stderr) http://git.io/v3SXH
<travis-ci> manastech/crystal#bbf2036 (master - Reimplemented `Process.run`. Now there's just `Process.run` with a block and non-block forms. Kudos to @technorama): The build passed. https://travis-ci.org/manastech/crystal/builds/75681467
zamith has joined #crystal-lang
<crystal-gh> [crystal] asterite closed pull request #382: Refactored Process.run (master...std-process-refactor) http://git.io/btLa
zamith has quit [Client Quit]
<crystal-gh> [crystal] asterite pushed 1 new commit to master: http://git.io/v3S9m
<crystal-gh> crystal/master 7c3239e Ary Borenszweig: Removed the `alias_method` macro
<crystal-gh> [crystal] asterite closed pull request #1180: Add a simple test to ensure alias_method works (master...spec-alias-method) http://git.io/v3SlY
<crystal-gh> [crystal] asterite closed pull request #1181: Add Array prepend and append (master...add-Array-prepend-and-append) http://git.io/v3SuP
Cidan is now known as zz_Cidan
<travis-ci> manastech/crystal#7c3239e (master - Removed the `alias_method` macro): The build passed. https://travis-ci.org/manastech/crystal/builds/75684666
blue_deref has quit [Quit: bbn]
shama has quit [Quit: (╯°□°)╯︵ɐɯɐɥs]
havenwood has quit [Ping timeout: 250 seconds]