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
<FromGitter> <bew> nvm, it's done before anything
<FromGitter> <eliasjpr> hey so I am trying to write a test for a macro inside a struct, but if I create an instance of the struct the macro method is not available, example https://carc.in/#/r/1zcc
<Papierkorb> macro's are *not* methods
<Papierkorb> eliasjpr, use a normal method.
Aytan72 has quit [Remote host closed the connection]
<FromGitter> <eliasjpr> i need a macro :)
scottj has quit [Quit: leaving]
<Papierkorb> why?
<Papierkorb> You don't.
<Papierkorb> Macros are not instance methods, as they're not called on instances.
<FromGitter> <eliasjpr> I need the macro because Im passing class name constanst to be lazy evaluated
<FromGitter> <eliasjpr> at a later time
<FromGitter> <eliasjpr> I understand that macros live at a higher level than instance methods.
<FromGitter> <bew> can you show bigger example?
<FromGitter> <eliasjpr> heading your way taking it privately
Cyrus has joined #crystal-lang
zipR4ND1 has quit [Ping timeout: 268 seconds]
Aytan72 has joined #crystal-lang
Aytan72 has quit [Ping timeout: 240 seconds]
<crystal-gh> [crystal] bcardiff closed pull request #4351: Fail the Travis check as soon as one of the jobs fails (master...patch-3) https://git.io/v9CP1
sp4rrow has joined #crystal-lang
sp4rrow has quit [Client Quit]
sp4rrow has joined #crystal-lang
rollbounce has joined #crystal-lang
Aytan72 has joined #crystal-lang
Aytan72 has quit [Ping timeout: 260 seconds]
<rollbounce> So, is there a selling point over Ruby besides performance?
<wmoxam> rollbounce: static type checking
<wmoxam> IMO Crystal is not a Ruby replacement
<FromGitter> <fridgerator> uses a fraction of the memory ruby uses
<wmoxam> to me Ruby has always been a great glue language, that it got a good web dev ecosystem was a bonus
<FromGitter> <fridgerator> the more I use static type languages the more I like them
<rollbounce> used Swift?
<rollbounce> ML in C's clothing lol
<FromGitter> <fridgerator> I havent, for the same reason I never used .net. I would prefer not to use languages you can only use on one OS
<wmoxam> Swift is multiplatform. So is .NET :D
<rollbounce> I believe F# and Swift both run on Linux
<FromGitter> <fridgerator> now they are, yes
<rollbounce> Tbh lately been looking at K
<FromGitter> <fridgerator> never heard of it
<rollbounce> kdb+
<FromGitter> <fridgerator> that looks weird as hell, lol
<rollbounce> Basically, 30-ish years ago (when all the interesting stuff in CS happened)
<rollbounce> Someone figured we could just assign a 1-ary and 2-ary (modifier and connector) function/graph-edge/method/whatever to each non-alphanumeric ASCII character
<rollbounce> And basically get the most terse-yet-comprehensible programming language ever
<rollbounce> APL, J, etc
<rollbounce> Very Lisp-like apparently
<rollbounce> Idk been reading about those and like Forth
<FromGitter> <fridgerator> thats crazy
<rollbounce> Forth is like the child of Lisp and Assembly
rollbounce has quit [Quit: Page closed]
splitty___ has quit [Read error: Connection reset by peer]
splitty_ has joined #crystal-lang
splitty_ has quit [Ping timeout: 240 seconds]
splitty_ has joined #crystal-lang
<crystal-gh> [crystal] sempervictus opened pull request #4382: Allow OAuth::Consumer to take TLS context (master...bug-4381_oauth_consumer_tls) https://git.io/v92Zq
<FromGitter> <CodelessFuture> Hi. A question: why password = Digest::MD5.hexdigest("Saknussemm73!")
<FromGitter> <CodelessFuture> it’s ok
<FromGitter> <CodelessFuture> and
<FromGitter> <CodelessFuture> p_password = Digest::MD5.hexdigest(p_password_n)
<FromGitter> <CodelessFuture> This gives compiler error?
<FromGitter> <sdogruyol> What's the error
sp4rrow_ has joined #crystal-lang
sp4rrow has quit [Ping timeout: 268 seconds]
<FromGitter> <CodelessFuture> Error in src/crystal-website.cr:39: instantiating 'Digest::MD5:Class#hexdigest((Array(String) | String))' ⏎ ⏎ p_password = Digest::MD5.hexdigest(p_password_n) ⏎ ⏎ ```slice = data.to_slice``` [https://gitter.im/crystal-lang/crystal?at=590c175cd1a7716a0a94d8a0]
<FromGitter> <sdogruyol> try `p_password_n.as(String)`
<FromGitter> <CodelessFuture> It goes
<FromGitter> <CodelessFuture> But why I have to do that? I assign
<FromGitter> <CodelessFuture> p_password_n = env.params.body["password"]
<FromGitter> <CodelessFuture> The line before….
<FromGitter> <sdogruyol> i guess you are using Kemal master
<FromGitter> <sdogruyol> there are some breaking changes about parameter parsing
sp4rrow_ has quit [Quit: The Internet needs a break and I need a cookie]
yogg-saron has joined #crystal-lang
mark_66 has joined #crystal-lang
Philpax has quit [Ping timeout: 264 seconds]
Aytan72 has joined #crystal-lang
Aytan72 has quit [Ping timeout: 240 seconds]
bjz has joined #crystal-lang
Raimondii has joined #crystal-lang
Raimondi has quit [Ping timeout: 268 seconds]
Raimondii is now known as Raimondi
zipR4ND has joined #crystal-lang
bjz has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
bjz has joined #crystal-lang
splitty__ has joined #crystal-lang
splitty___ has joined #crystal-lang
splitty_ has quit [Ping timeout: 240 seconds]
splitty__ has quit [Ping timeout: 268 seconds]
bjz has quit [Ping timeout: 240 seconds]
bjz_ has joined #crystal-lang
Aytan72 has joined #crystal-lang
Aytan72 has quit [Ping timeout: 246 seconds]
bjz_ has quit [Ping timeout: 268 seconds]
bjz has joined #crystal-lang
splitty__ has joined #crystal-lang
wuehlmau1 has joined #crystal-lang
bmcginty_ has joined #crystal-lang
splitty___ has quit [*.net *.split]
mark_66 has quit [*.net *.split]
bmcginty has quit [*.net *.split]
wuehlmaus has quit [*.net *.split]
Aytan72 has joined #crystal-lang
mark_66 has joined #crystal-lang
wuehlmau1 is now known as wuehlmaus
<FromGitter> <vivus-ignis> hi there! ⏎ ⏎ i'm having an error "in src/cluster-access/oidc.cr:8: Oidc is not a class, it's a module" when running tests. ⏎ ⏎ ---In a spec file i have--- ... [https://gitter.im/crystal-lang/crystal?at=590c7ee50dcaa48e672eeadf]
<FromGitter> <vivus-ignis> oh formatting
<FromGitter> <vivus-ignis> sorry
<FromGitter> <fridgerator> looksl ike `Oidc` is defined as a module somewhere
bjz has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<FromGitter> <vivus-ignis> ah in any other file you mean?
<FromGitter> <vivus-ignis> let me check, didn't even think of that
<FromGitter> <vivus-ignis> i have another module called Cluster::Access::Oidc::Helpers
<FromGitter> <vivus-ignis> but i think it shouldn't be a problem
<FromGitter> <bew> if it's defined before, `Oidc` is assumed to be a module..
<FromGitter> <fridgerator> `Cluster::Access::Oidc::Helpers` <--
<FromGitter> <fridgerator> is the same namespace as : ⏎ ⏎ ```module Cluster::Access ⏎ class Oidc``` [https://gitter.im/crystal-lang/crystal?at=590c80c60dcaa48e672ef314]
<FromGitter> <vivus-ignis> oidc.cr looks like this: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/crystal-lang/crystal?at=590c810f2b926f8a67256b4d]
<FromGitter> <vivus-ignis> and in helpers.cr i have just: ⏎ ⏎ ```module Cluster::Access::Oidc::Helpers``` [https://gitter.im/crystal-lang/crystal?at=590c81280a783b6c0a69b112]
<FromGitter> <fridgerator> `module Cluster::Access::Oidc::Helpers` means `Oidc` is defined as a module
<FromGitter> <vivus-ignis> mmm, ok
<FromGitter> <vivus-ignis> thank you
<FromGitter> <fridgerator> np
<literal> failo: /W #darktable
<literal> oops
LastWhisper____ has joined #crystal-lang
bungoman_ has quit [Ping timeout: 258 seconds]
<FromGitter> <vivus-ignis> is https supported by the built-in http::client?
<FromGitter> <sdogruyol> Yeah
<FromGitter> <vivus-ignis> k, thanks
yogg-saron has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<FromGitter> <vivus-ignis> if my ```HTTP::Client.get(url) ``` just gets stuck indefinitely, is there a way I can debug what's going on?
<FromGitter> <vivus-ignis> url opens in a browser immediately
wontruefree has joined #crystal-lang
<FromGitter> <vivus-ignis> yeah finally it fails with a "Connection reset by peer"
<FromGitter> <mgarciaisaia> Does a `curl -XGET $URL` from a terminal succeed?
<FromGitter> <vivus-ignis> but works with curl and firefox
<FromGitter> <vivus-ignis> yes
LastWhisper____ has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<FromGitter> <mgarciaisaia> Have you tried different URLs so you're 100% sure it's a Crystal issue? I've just put a `HTTP::Client.get("http://example.com")` in my Crystal Playground (`Crystal 0.22.0 (2017-04-20) LLVM 4.0.0` on OSX), and it works. Connection reset by peer seems to be an issue on the other end - it may very well be that Crystal's having some issue, sure. ⏎ If you can share the URL, that can help, too
<FromGitter> <vivus-ignis> this is what i have in terminal: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/crystal-lang/crystal?at=590c96d033e9ee771c78cb01]
<FromGitter> <vivus-ignis> i've tried with "https://google.com" -- no issues
<FromGitter> <vivus-ignis> Crystal 0.22.0 (2017-04-20) LLVM 4.0.0
<FromGitter> <mgarciaisaia> If https://google.com works, then there's something on the way you're constructing the failing URL, or something going on on the server
<FromGitter> <crisward> Is anyone noticing a slowdown in crystal build 0.22.0 with --release ?
<RX14> how much?
<RX14> what does --stats say
<RX14> compare --stats output between 2, and ensure you clean ~/.cache/crystal before each run
<FromGitter> <crisward> <RX14> will do. The difference is in a dokku deploy (heroku buildpack). I'm up to 20 minutes, pretty sure it was only taking around 5. It's not completed yet... I'll do comparsions locally and let you know.
mark_66 has quit [Remote host closed the connection]
<RX14> 5 minutes?
<RX14> that's a really long time
wontruefree has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<FromGitter> <crisward> Is it? With release that's how long it took on 0.21.1.
<FromGitter> <crisward> Up to 22mins now
LastWhisper____ has joined #crystal-lang
<FromGitter> <crisward> I'm guessing something is not quite right...
<RX14> yeah thats just wrong
<RX14> what llvm version are you using?
<RX14> i reckon 3.5.0
<FromGitter> <crisward> Whatever is in the buildpack...
<RX14> and that will be your problem
<RX14> well compiling the entire compiler spec suite in release mode takes only about 5 minutes on my system so it does seem like a long time
wontruefree has joined #crystal-lang
<RX14> well, yes it is a long time, if you're not compiling something the size of the compiler you shouldn't take more than 5 minutes
<FromGitter> <crisward> Yep 3.5
<FromGitter> <crisward> Just need to work out how to upgrade llvm in the buildpack
<crystal-gh> [crystal] mverzilli pushed 1 new commit to master: https://git.io/v9a3X
<crystal-gh> crystal/master 238e207 Dave Ungerer: Small grammar fix in description of Nil#try
<crystal-gh> [crystal] mverzilli closed pull request #4352: [RFC] Add Sysctl interface support for OSX/Linux/FreeBSD (master...feature/sysctl) https://git.io/v9CPx
bungoman has joined #crystal-lang
wontruefree has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
crystal-lang953 has joined #crystal-lang
crystal-lang953 has quit [Ping timeout: 260 seconds]
sz0 has quit [Quit: Connection closed for inactivity]
wontruefree has joined #crystal-lang
wontruefree has quit [Client Quit]
wontruefree has joined #crystal-lang
wontruefree has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
literal has quit [Read error: Connection reset by peer]
literal has joined #crystal-lang
wontruefree has joined #crystal-lang
wontruefree has quit [Client Quit]
wontruefree has joined #crystal-lang
yogg-saron has joined #crystal-lang
zipR4ND has left #crystal-lang [#crystal-lang]
zipR4ND has joined #crystal-lang
TheGillies has joined #crystal-lang
<TheGillies> Has anyone thought about making something similar to "go get" to easily install crystal binaries?
wontruefree has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
wontruefree has joined #crystal-lang
RX14 has quit [Excess Flood]
RX14 has joined #crystal-lang
<RX14> TheGillies, hopefully not :)
<RX14> tl;dr system tools (daemons, etc.) that happen to be written in crystal should be packaged by the system or distributed by the maintainers
<RX14> dev tools are different, and shards should handle them but only in a project-local manner
<TheGillies> >node gyp error what the f*** does that mean?
<TheGillies> Story of my life
<Papierkorb> I wouldn't see any issue with installing binaries to ~/.crystal/bin or similar, like `gem` does by default on Arch
<RX14> I would: there's no need
<Papierkorb> Never ever should any code be compiled as root
<Papierkorb> It's annoying to grab `icr` or whatever you use without
<RX14> Papierkorb, that would be a dev tool
<RX14> and managed by shards
<Papierkorb> but it's not useful as dependency
<RX14> so you'd add icr to your project's shards.yml and then use bin/icr
<Papierkorb> that's broken
<RX14> ...
<RX14> you might not like it but how is it broken
<Papierkorb> You may not like my solution either, so what?
<Papierkorb> The use-case of being able to easily install project-indepentend (dev-)tools is broken by not having a feature which does it in a sane fashion
<RX14> but icr is project specific in that it's specific to the version of crystal the project uses
<Papierkorb> it is not. Something like icr can be used just fine without a underlying project
<Papierkorb> Like `pry`
<Papierkorb> Perfectly useful without
<RX14> it can be but it usually isn't
<Papierkorb> You think that
<Papierkorb> Which is not the case
<RX14> why not just make it be a system package
<RX14> managed like system
<RX14> s/syatem/crystal
<Papierkorb> That's tons of work
<RX14> but it's stupid to support installing arbitrary things like node, pip, etc
<Papierkorb> Why is it stupid?
<RX14> because all of those tools are broken pieces of shit
<oprypin> nah they're pretty good
<oprypin> npm, anyway
<Papierkorb> It's sad that one can't discuss differing opinions with you
<Papierkorb> Never had issues with gem on arch at all. It's my choice to add its bin/ to my PATH or not
<RX14> ok let me list my problems then
<RX14> 1. pip breaks installing python packages all the time because packages installed by pip commandline conflict with those installed via the system package manager
<Papierkorb> that's a fail in pip in that case
<RX14> 2. npm global packages are almost impossible to version independantly per project, there isn't anything like rvm's gemsets
<Papierkorb> Global source packages are usually a bad idea, we can pass on that if it were me to decide
<RX14> 3. rvm is invasive, breaks my shell all the time, breaks my ruby all the time
<oprypin> RX14, you're talking about global installation in all cases, we dont suggest that.
<Papierkorb> rvm is awful, if you need something like that, chruby works fine
<RX14> Papierkorb, I meant commandline tools
<RX14> oprypin, yes i am talking about global installation
<RX14> that's what this conversation was about - at least I thought
<Papierkorb> user-local
<RX14> user-local is marginally better but point 2 and 3 still apply
<RX14> i very often need different versions of commandline tools per-project
<oprypin> so get specific per-project versions in addition to the main one
<RX14> and everything wants you to use npm install global
<Papierkorb> Say I wanted to use icr and in my project. I install icr for my user (why on earth would I want to install globally by default?) because I like to toy with it. I have a project where I need it, so I just add it there, and then can run the local version
<Papierkorb> No conflict
<oprypin> RX14, ok don't listen to what they want
<RX14> there are very few tools like icr
<Papierkorb> RX14: that's a fail of npm and its philosophies, not of installing stuff user locally
<RX14> icr is a problem because it has to be versioned with your `crystal` binary
<Papierkorb> Crystal is very young, there are absolutely useful applications, now and in the future, that can take advantage of it
<RX14> i agree
<Papierkorb> I was using icr as example
<RX14> Papierkorb, no user-local still doesn't mean I can have version 5 and version 6 of vbuild installed at the same time
<Papierkorb> Gem allows you to
<RX14> Papierkorb, but icr is one of the few tools which must be versioned along with the compiler
<RX14> stull like `rails` and migration tools and the like should be project-local
<RX14> because they should be versioned with the version of rails for example in the project
<Papierkorb> icr was really just an example of a useful application outside of a project. I don't use it myself, no idea about what it needs.
<RX14> but I can't seem to find any much more examples than icr
<Papierkorb> not in the future either?
<Papierkorb> Playground could happily live outside the compiler sources
<RX14> sure but if we add a tool to install stuff like icr you get the mess that I talked about
<RX14> it's an unsolved problem but i feel it must be done differently
<Papierkorb> I think I gave at least one solution to each point
<Papierkorb> Even multiple versions can be handled without too much hassle if needed, though this is not the most common use case
<Papierkorb> Gem does it by using a loader ruby script which checks for a special _version_ argument and then loads the wanted one, or else, the most recent one
<Papierkorb> I think a fair solution to a problem not many projects or users, as far I can tell, face
<Papierkorb> How does Rusts Cargo do it?
<Papierkorb> Do they have support? No support?
<RX14> I think they just allow you to install anything locally
<RX14> and then you add their dir to PATH
<Papierkorb> So like gem does when configured correctly
<RX14> (which is another PAIN point)
<RX14> (oops, didn't mean to capitalize pain)
<Papierkorb> how? doesn't it tell you which path to add?
<Papierkorb> At least gem checks if the bin/ is in PATH, and if not, warns you giving the full path to add
<RX14> Papierkorb, my fear is that as soon as you add such a tool people will abuse it instead of using https://github.com/crystal-lang/shards/pull/126
<RX14> I continue to believe the amount of executables that don't fit into either system daemons/tools or project-specific tools is maybe 1%
<RX14> and that we should promote the other 2 methods before solving the third
<RX14> #126 is pretty much exactly what I want for project-specific dependencies
<oprypin> are you forgetting that a project with 100 dependencies, of which 3 is in official repos, may be hard to install using distro tools
<RX14> just run shards install and everything I need is in bin
<oprypin> the project being a system daemon/tool
<RX14> oprypin, crystal isn't a dynamic language. Distro maintainers hardly package every single go library
<RX14> they just let go get the things itself
<RX14> and package the binary
<RX14> same with crystal, no need to package all the deps
<Papierkorb> An interesting other option would be, though I don't know yet if I like it or not, would be having a tool which could package the project into a tar.gz or deb or tar.xz or whatever one needs
<RX14> yeah that would be great
<Papierkorb> Creating and maintaining packages is hard
<RX14> (thats why we have package maintainers)
<Papierkorb> Too hard to expect people to actually do it, hence the reason for being able to install stuff through shard
<RX14> I don't think it's too hard to git clone, make, make install
<Papierkorb> I wouldn't want a Makefile (or whatever) which installs stuff somewhere it feels like without any package manager overseeing it
<Papierkorb> it's not the same
<RX14> i agree
<RX14> so i'd package it
<RX14> I don't really see packaging as a hard thing but thats just because I use archlinux I guess
<Papierkorb> it is insanely hard, as every distro does its own thing
<RX14> you probably would need a special tool for dpkg based distros
<Papierkorb> Which is one of the reasons why shit like snaps are coming up now
<Papierkorb> and even arch does its own thing
<RX14> yeah but arch does it right :)
<Papierkorb> to some extend, and fails for others
<Papierkorb> I'm not even sure if package creation can be automated in general. However, it could make crystal more liked by sysadmins.
<RX14> As I said, i'd much rather expend the effort in creating a tool which manages creating system packages than creating an entirely new package manager, when I already probably have more than 10 on my system
<RX14> I'm a sysadmin and all these language-specific package managers piss me off to no end
<RX14> it's half the reason why I use docker in the first place
<RX14> so at the very least all these package managers have a seperate container to break things in
vikaton has joined #crystal-lang
wontruefree has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
wontruefree has joined #crystal-lang
LastWhisper____ has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
zipR4ND1 has joined #crystal-lang
zipR4ND has quit [Ping timeout: 240 seconds]
Raimondii has joined #crystal-lang
Raimondi has quit [Ping timeout: 268 seconds]
Raimondii is now known as Raimondi
yogg-saron has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
wontruefree has quit [Quit: Is gone... Just plain old gone]
wontruefree has joined #crystal-lang
<FromGitter> <schoening> Lang
wontruefree has quit [Ping timeout: 268 seconds]
bjz has joined #crystal-lang
<FromGitter> <jwoertink> When I build some C lib somewhere on my computer, and then I want to bind that C lib. can I just put `@[Link("libwhatever")]`? Or do I need to pass the path to where the `.a` file is?
<RX14> unless it's in a standard library location you need the full path
<FromGitter> <jwoertink> Is it the full path to where that .a file is?
<RX14> yes
<FromGitter> <jwoertink> :thumbsup:
<FromGitter> <jwoertink> Ok, next question then, if my lib requires you to download and build this `.a`, it's possible that it could be anywhere on your machine. What's the safest way to handle that?
<FromGitter> <jwoertink> telling the user to add the path to their `PATH` env, and then pulling from that?
vikaton has quit [Quit: Connection closed for inactivity]
<RX14> what?
<RX14> how would this library get installed?
<RX14> do you build it as part of your shard?
<RX14> package manager?
<FromGitter> <jwoertink> you clone the repo from github, and then run that library's make and such
<RX14> if you use sudo make install it'll be in a standard library path
<RX14> and you can link it without the full path
<FromGitter> <jwoertink> in this case it's built by running `cmake` and then `make` which leaves the `.a` file in the root of that source
<FromGitter> <jwoertink> so for me, the path is `/Users/jeremywoertink/Development/h2o/libh2o.a`
<RX14> maybe run the install target
<RX14> or what about installing it as a system package?
<FromGitter> <jwoertink> h2o doesn't have a brew package, and when you install it normally, you get an executable which isn't what I want
<FromGitter> <jwoertink> according to their docs, you have to build it separately if you just want the lib
<RX14> well
<RX14> you have 2 choices: make the user install it and put it in a standard library path like /usr/lib
<RX14> or you can have a little script in your shard that does that automatically
<RX14> and provide the full path
<FromGitter> <jwoertink> ah. So if I went the route of the script, I'd have the user run some custom install script which would handle all that and put it where I needed it, or just have them do it. Now, if it's in `/usr/lib` like `/usr/lib/libh2o.a`, then I can just do the `@[Link("libh2o")]`?
<RX14> just "h2o" but yes
<RX14> although i'd recommend the script
<FromGitter> <jwoertink> nice!
<FromGitter> <jwoertink> I feel like I just gained a +1 to crystal learning :D
<FromGitter> <jwoertink> Thanks for the help!
<RX14> shards can run a script for you
<FromGitter> <jwoertink> and I'm sure after a night of cinco de drinko I'll have forgotten all that :p
<RX14> on install
<RX14> so thats really the way you want to do it
<FromGitter> <jwoertink> right, the postinstall would handle that?
<RX14> a small script that does a git checkout and then a cmake, etc
<FromGitter> <jwoertink> makes sense. I like that.
<FromGitter> <jwoertink> ok, last thing on this (probably)... What's the syntax for specifying the path? `@[Link("/path/to/thing.a")]`?
<FromGitter> <schoening> Is there a word for when scripts are executed every request (php, .net) vs running continious (Node.js, Crystal, etc) ?
<FromGitter> <jwoertink> interpreted
<FromGitter> <schoening> Im not sure thats right. Ruby is interpreted. But isnt ruby "running" ? (I havent actually used ruby..)
<FromGitter> <jwoertink> What do you mean by running?
<FromGitter> <jwoertink> ruby is for sure running when you run a ruby file
<FromGitter> <jwoertink> maybe you're looking for "dynamic"?
<FromGitter> <schoening> Nah. Yeah its a bad phrasing sorry.. I mean that php for example is a script that get executed every time there is a request to it. Which can be very inefficient when you have a large app that has to be executed each request. Crystal on the other hand just creates all the class instances etc once and then "listens" for requests which is more efficient. Im looking for a term for that difference :p
zipR4ND1 has quit [Ping timeout: 240 seconds]
<FromGitter> <schoening> php script "runs" and then "stops". An app build with crystal would keep "running" thats why I used that word. Sorry :p
sp4rrow has joined #crystal-lang
<FromGitter> <schoening> "stateless" maybe.. but that has a whole lot of other meaning to it. Guess there isnt a real word for it
<FromGitter> <jwoertink> hmmm...
<FromGitter> <jwoertink> yeah, I'm not sure
<FromGitter> <jwoertink> I'm asking some others too, but we're not sure on an "official" term
<FromGitter> <schoening> But did I end up explaining what I mean?
<RX14> request-oriented language?
<RX14> also TIL of cinco de mayo
<Papierkorb> maybe look into the CGI docs for a word
<FromGitter> <jwoertink> Happy Drinko de Mayo! :D