<hmans>
I keep hearing/reading that one of the big topics left to tackle for 1.0 is "concurrency". Is there any more detailed information available anywhere? ie. what is missing re concurrency, what are the plans, etc.?
<hmans>
wuehlmaus: I'm aware of the guide -- are you saying that it represents the goal for concurrency, and some of the features described are still missing?
<wuehlmaus>
parallelism is missing
<FromGitter>
<yxhuvud> @hmans concurrency works, but parallelism doesn't. Like, at all. Do Thread.new and you'll find a segfault very very soon.
<hmans>
Ah, I see
<FromGitter>
<yxhuvud> (at least if you allocate in your thread)
<FromGitter>
<bararchy> hmans the issue is so big and discussed everywhere so much times that it feels wierd to even thinking about opening another issue about it. ⏎ Crystal is single threaded, there is a need to make it multi-threaded
<FromGitter>
<bararchy> this is the issue with parallelism
<FromGitter>
<bararchy> as long as you avoid `Thread.new` you will not see this issue giving you problems
<FromGitter>
<bararchy> unless you want working on multi-core, then you see the issue is that you can only use single core
<hmans>
bararchy, I get that. I was just wondering if there was a roadmap (in terms of a formulated strategy, not a timeline) to tackle this.
<FromGitter>
<bararchy> nope
<hmans>
I understand there isn't
<FromGitter>
<bararchy> or, better put, I don't know about anything like it, and it seems most core-devs don't know about such plan also
<FromGitter>
<straight-shoota> I don't think anyone's been working on that for quite a while
<hmans>
Is there any idea what could be done about it (beyond waving a magic stick to free the entire core team of their other commitments)?
<FromGitter>
<bararchy> so... I guess unless @waj is keeping a plan in hes drawer then no plan :)
<FromGitter>
<straight-shoota> But honestly, I don't think parallelism is really that important right now.
<FromGitter>
<bararchy> hmans well, someone with the combined knowledge of programming experiance and intimate crystal compiler understanding can come along and save us
<FromGitter>
<bararchy> which won't really happen, so unless Manas directly tell waj (I think hes the only person who can even start working on that) to begin work, then no multi-threading
<FromGitter>
<bararchy> @straight-shoota this is a bad assumption, in Data-sciense we need it, in SHAInet we need it, in game-dev there is a need for it
<FromGitter>
<bararchy> Right now there is no way to do very basic things without IPC
<hmans>
What are the chances that this would result in something resembling an entire reimplementation?
<FromGitter>
<bararchy> hmans I guess very very low
<hmans>
Well, that's a silver lining...
<FromGitter>
<bararchy> the only part that will need changing is the GC and Fibers
<FromGitter>
<bararchy> I think
<FromGitter>
<bararchy> also it seems that parts of the std lib are not Thread safe
<FromGitter>
<bararchy> but this can be solved with locks etc..
rohitpaulk has joined #crystal-lang
<hmans>
Is the community at large at least agreeing that parallelism should be happening?
<FromGitter>
<straight-shoota> @bararchy yes, for certain applications its pretty substantial
<FromGitter>
<straight-shoota> But for the large bulk of crystal programs it probably won't make much of a difference.
<FromGitter>
<bararchy> HTTP::Server will become amazing, without the need to spind multiple processes and reuse_port
<FromGitter>
<straight-shoota> And parallelism can easily be added some time. The language is prepared for that. So there won't be a big disturbance when it arrives, humans
<hmans>
humans ;-)
<FromGitter>
<straight-shoota> Autocorrect xD
<hmans>
Figured that much. Still made me chuckle, MISTER SPACE ALIEN
<FromGitter>
<straight-shoota> Http server is a use case that really doesn't need in process parallelism
<FromGitter>
<straight-shoota> Its easy to spin up a few processes and you don't need to communicate between them
<FromGitter>
<straight-shoota> you'll typically use a database, message queue etc. for that anyway.
<FromGitter>
<straight-shoota> And not relying on everything being in a single process makes the application easily scalable beyond one node.
rohitpaulk has quit [Ping timeout: 264 seconds]
rohitpaulk has joined #crystal-lang
sz0 has quit [Quit: Connection closed for inactivity]
rohitpaulk has quit [Ping timeout: 264 seconds]
rohitpaulk has joined #crystal-lang
<hmans>
I'm not agreeing with that logic. Making use of available CPU resources without having to resort to IPC is _very_ desirable. Maybe not for random CRUD web apps, but those are served well by Rails and the likes.
<FromGitter>
<bararchy> @straight-shoota boils down to "I can't have my window draw NPC sprites while my main char is moving"
<FromGitter>
<bararchy> hahah
<hmans>
Beyond just plain Thread.new support, I'm seeing statements about allowing the scheduler to distribute fibers across a thread pool (to automatically balance them over available cores.) It's hard to argue against the usefulness of that.
<FromGitter>
<bararchy> hmans the idea is never to expose Thread to the user, instead do Go like concurecy (Fiber, Channel) and allow the Scheduler to spread the Fibers across avilable cores
<FromGitter>
... happening (ie. my player is moving), so to make it work I tried spawn and loop with sleep, but it seems to not work and they wont move at all
<FromGitter>
<straight-shoota> looks like you're generally mixing rendering with mutation of game state
<FromGitter>
<straight-shoota> Just think about this perspective: such a simple game (I figure) should certainly run on a single-core computer.
<FromGitter>
<straight-shoota> like every game at least until like 10 years ago
<FromGitter>
<bararchy> this is true, but when the whole world will be populated with off-map NPC (around 50k-100k) and I need to run evolutionart algorithms on each NPC, this might be a little different
<FromGitter>
<straight-shoota> even many modern games don't depend on multiple cores
<FromGitter>
<straight-shoota> that depends on the performance on the implementation ;) This kind of thing might require large processing power, but not necessarily parallelism.
<FromGitter>
<straight-shoota> Running these algorithms in parallel can help provide the processing power, but a faster single core would do as well
<FromGitter>
<straight-shoota> parallelism is not the key issue here
linuksz has quit [Quit: WeeChat 2.1]
<FromGitter>
<yxhuvud> @straight-shoota did you see the comment by the creator of 0mq as well? http://250bpm.com/blog:124
<FromGitter>
<straight-shoota> not yet
<FromGitter>
<straight-shoota> this addresses essentially the questions I have thought about since reading the original article
<FromGitter>
<straight-shoota> the different kinds of concurrency patterns
<FromGitter>
<yxhuvud> yeah, and I guess the end result is quite similar to at least some of the stuff supervisors do in erlang/elixir
thews has quit [Read error: Connection reset by peer]
thews has joined #crystal-lang
thews has joined #crystal-lang
thews has quit [Changing host]
DTZUZO has joined #crystal-lang
<FromGitter>
<straight-shoota> yeah, but those are IMHO a higher-level construct
hightower3 has quit [Remote host closed the connection]
rohitpaulk has quit [Ping timeout: 265 seconds]
rohitpaulk has joined #crystal-lang
duane has joined #crystal-lang
<crystal-gh>
[crystal] asterite closed pull request #6044: Let `p` use inspect, `pp` just pretty print values, and introduce `p!` and `pp!` which also show the expression to print (master...feature/p-pp-bang) https://git.io/vpEhO
<RX14>
damn, @asterite beeat me to merging that PR by seconds
<crystal-gh>
[crystal] asterite pushed 1 new commit to master: https://git.io/vpzI2
<hmans>
I want to commit myself to Crystal and contribute somehow, but I'm having a hard time gauging what would be a good place to start (for someone like me who's definitely _not_ a compiler person.)
<FromGitter>
<vladfaust> Hi! Could this work somehow? `Hash(Symbol, Int32 | String).cast({:a => 1}) # => can't cast Hash(Symbol, Int32) to Hash(Symbol, Int32 | String)` - I need a hash to be "bigger" type
<FromGitter>
<straight-shoota> hmans, stdlib needs much love, too
<FromGitter>
<bararchy> hmans from what field of programming are you coming ?
<FromGitter>
<vladfaust> @straight-shoota noted, but my case isn't that simple, as always. BTW, `alias MyHash = Hash(String, String | MyHash); h = MyHash.new` - isn't that supposed to be working?
<FromGitter>
<vladfaust> `h = {} of String => MyHash` this works though
<FromGitter>
<straight-shoota> what do you mean with " not that simple"?
<hmans>
straight-shoot, I'd love to hack on the stdlib, yes!
<FromGitter>
<straight-shoota> you can apply that to Hashes of any type
<FromGitter>
<straight-shoota> even recurse if you need nested hashes
<hmans>
bararchy, I've been writing software for 30 years or so (I'm 41), but sadly I've never really dived deep enough to do low-level compilery stuff.
<hmans>
Maybe some details on what I'm currently building with Crystal:
<hmans>
For the past few years, I've been diving into Indieweb stuff (WebMention, Microformats2, the likes). A while ago I built sort of a decentralized social network/blog type thing on top of these Indieweb protocols. I'm doing an iteration on it using Crystal right now
<hmans>
Why am I using Crystal? Because it allows me to build a single executable with all asstes baked in, requiring minimal resources when running (cranky.hmans.io is running off a $1 VM on hyper.sh)
<hmans>
I use SQlite for data storage and it's _perfect_. One less dependency, and since Crankypants is designed to be single-user, you're probably never ever going to scale beyond a single computer (and even if you do, SQLite will take you much farther than one would expect)
<hmans>
Thanks to the combination of Crystal and SQLite, this thing pretty much has static site-like performance, but with dynamic views. It's beautiful :)
<hmans>
Some more context:
<hmans>
Cranky is serving both a server-rendered HTML version of a blog as well as a client-side Vue app (talking to a JSON API) for managing your site, following other users, interacting with their posts, etc.
<hmans>
Why server-rendered? Because machine-readability is important for Indieweb protocols
<hmans>
(The previous version was a Rails app -- it was pretty much "done", but asking users to set up a Rails app was just too much. I believe this is one of the biggest problems with projects like Diaspora or Mastodon, but that's another story)
<crystal-gh>
crystal/master 248a260 Ary Borenszweig: Parser: fixed quoted heredoc followed by call
<FromGitter>
<vladfaust> Does Hash support deep merging?
<FromGitter>
<vladfaust> hmans, thanks for hyper.sh
<hmans>
vladfaust: hyper.sh is great, I can recommend it.
<hmans>
It's also the only place that I've found that lets me put a tiny tiny tiny Crystal app (like crankypants) online for under $4 (which seems to be the commonly accepted minimum price for on-demand VMs)
<hmans>
But my research continues...
<hmans>
(Not counting free options like the AWS Free Tier, obviously)
<FromGitter>
<vladfaust> @straight-shoota thanks for your help, but seems like my issue is merging two complex hashes, latest of which is "lesser" type
<FromGitter>
<hmans> Oh, Gitter is nice. It's been a while since I last tried it...
<FromGitter>
<bararchy> yeha it is :)
<Vexatos>
What is this gitter you speak of
<FromGitter>
<bararchy> gitter.im :)
<FromGitter>
<bararchy> the parsed text is so much better
<FromGitter>
<hmans> I like how Gitter does @-completion of names even when they use the IRC bot. (At the same time, my IRC client won't, of course, tab-complete nicks from the Gitter bridge)
<FromGitter>
<bararchy> Yeha, and 1 month ago I thought 0.25.1 will be huge
<FromGitter>
<bararchy> also more then 1 breaking changes
<FromGitter>
<hmans> I should probably take a closer look at the Next milestone to get my body and soul ready, huh
That_Guy_Anon has joined #crystal-lang
<FromGitter>
<hmans> I apologize if this question is a bit weird, but... is BountySource trustworthy?
<FromGitter>
<j8r> What is the Crystal equivalent of `syscall.Statfs` in Go?
<FromGitter>
<hmans> I've been trying to set up a $10/month donation, and it's been giving me error messages. Today I see that it's listing three separate $10/month donations for me, and they charged my Paypal for $30.
<FromGitter>
<bararchy> @hmans I pay them via paypal for Crystal backing
<FromGitter>
<hmans> (I don't mind giving $30, but cancelling with an error message while still charging money is a bit dodgy, isn't it)
<FromGitter>
<bararchy> @hmans Common error in other websites, frontend sent cache error while backend digested the info
<FromGitter>
<hmans> Also, on some days, their menu (when clicking my avatar image) displays completely different options from other days, none of which work
<FromGitter>
<bararchy> The service and web they use is pretty shitty, that's true
<FromGitter>
<bararchy> it's not intuative and very clanky
<FromGitter>
<hmans> Giving some money feels like the most immediate way to help this project, but having to go through a platform that actively *tries* to erode my trust in it is not great
<FromGitter>
<hmans> "The developer who solves the issue will receive the full bounty amount in their Bountysource account. These funds can be used to create more bounties, donate to teams, or pledge fundraisers. If a developer wishes to cash out their balance there will be a 10% fee."
<FromGitter>
<hmans> Bountysource keep 10%??!
<FromGitter>
<girng> doesn't MANAS have a direct way to donate
sz0 has joined #crystal-lang
<FromGitter>
<hmans> To be fair, OpenCollective also appears to keep 10%. TIL
<Vexatos>
As far as I can tell, the issue is that the current core developers of crystal are all independent people
<Vexatos>
there is not one place to give money to
<RX14>
the bountysource gives money to manas right now
<RX14>
and the money is spent on developer time which is allocated to specific issues
<crystal-gh>
[crystal] esse opened pull request #6052: Raise syntax error when using out as an arg (master...out_syntax_error) https://git.io/vpz8p
<RX14>
and people at manas work on those issues
<RX14>
although I think that's changed recently
<RX14>
and now @bcardiff will be working on crystal full-time as soon as he comes back from vacation
<RX14>
i'm not sure if there's much funds left for other people at manas to work on crystal too
<FromGitter>
<bararchy> Basically AFAIK people like RX14 won't get any even though they in core dev, you donate to manas not core dev
<RX14>
I'll also be doing a fundraiser of my own very soon to finish windows support
<FromGitter>
<girng> 10% seems a lot
<FromGitter>
<girng> that's ridiculous amount
<RX14>
i don't know if that's a bountysource number or a bountysource salt number
<FromGitter>
<bararchy> RX14 let me know when you set it up
<Vexatos>
3% to 6% is what sane websites tend to do from what I gathered
<RX14>
yeah i've been a bit lasy on that but it should be ready soon
<RX14>
just need to do a bit more work on propaganda :P
<FromGitter>
<asterite> why not individual patreon accounts? why put money on "Crystal" if individual contributors actually due the work?
<Vexatos>
@hmans you might want to look into patreon or liberapay accounts of core devs instead
<Vexatos>
or anything similar
<FromGitter>
<hmans> Vexatos, do the core devs already have Patreons set up?
<FromGitter>
<hmans> @RX14 - what country are you in?
<RX14>
i'll probably set up a pateron+liberapay too since i'm a starving student :P
<RX14>
@hmans UK
<Vexatos>
RX14, don't you already have a liberapay account
<RX14>
its not set up
<FromGitter>
<hmans> Oh, the GBP sign was sort of a hint. Duh
<FromGitter>
<hmans> I'd be happy to eventually put more into Crystal than $25/month, but the overall situation to me is very confusing (esp. with regard to who will end up the with money, and what purpose will they use it for)
<RX14>
yeah
<RX14>
thats one thing I wanted to solve with my indiegogo compaign: clear goals
<RX14>
a set amount for a set amount of time with a set goal
<RX14>
i.e. £1670 for 3 months full-time working specifically on windows support
<FromGitter>
<bararchy> RX14 any stretch goals ? ;)
<RX14>
not eating soup :P
<FromGitter>
<bararchy> Do I get a shirt with your nick if I put 25$ ?
<RX14>
if people are super generous, a standing desk
<FromGitter>
<bararchy> :):)
shalmezad has joined #crystal-lang
<Vexatos>
@bararchy the heart-warming feeling of giving RX14 food
<FromGitter>
<bararchy> Hahha
<RX14>
@bararchy i might do consulting if people want at higher donation levels
<FromGitter>
<hmans> @RX14 Where in the UK are you located?
<RX14>
bristol
<FromGitter>
<bararchy> Food = sleepy , less food = more work
<RX14>
hmm
<RX14>
not sure I agree
<FromGitter>
<bararchy> He's a student , he lives on leftovers and beer
<FromGitter>
<bararchy> Hahahah
<RX14>
i wish
<FromGitter>
<j8r> Bountysource is already nice: people pays to have issues resolved
<RX14>
yeah that's great for open source work on the side but it doesn't really seem to be to be designed to live on
<FromGitter>
<codenoid> no, i won't use thinkpad, dell is da best <3 , my boss, ex boss, always tell me to use dell
<RX14>
wrong :P
<FromGitter>
<bararchy> Thinkpad > Dell
<Vexatos>
I have a thinkpad too >_<
<RX14>
second hand thinkpads are the best second hand laptops
<RX14>
since all the components are replacable easilly
<RX14>
and they're pretty upgradable
<FromGitter>
<codenoid> btw, @bararchy some israeli just made presentation about call and sms interception
<Vexatos>
I have a second-hand thinkpad :P
<FromGitter>
<hmans> @RX14 - are you capable of wrapping up Crystal's parallelism support, and how much money do you need? :b
<FromGitter>
<codenoid> remotely-
<RX14>
@hmans unfortunately I don't think I am
<FromGitter>
<codenoid> lol
<FromGitter>
<codenoid> ok, i'm gonna to eat piano
<FromGitter>
<codenoid> see ya
<RX14>
eat a piano?
<RX14>
doesn't sound healthy
<FromGitter>
<girng> healthier than giving away 10% to bounty source
<FromGitter>
<bararchy> Sounds pretty musical though :)
<FromGitter>
<hmans> I'm hoping those 10% already cover the fees they will need to pay towards Stripe, Paypal et al
<FromGitter>
<hmans> (And I'm assuming they do.)
<FromGitter>
<j8r> question on `crystal docs` & Travis: I would like to gen docs, but not to versionize them in a `/docs` directory, but put them in another branch like `gh-pages`
<FromGitter>
<j8r> @bararchy instead of hand written docs, I'm working to migrate to `crystal docs`. The `Documentation` section becomes huge!
<FromGitter>
<bararchy> @j8r we should maybe just have some basic README example while using a link to devdoc etc.. For documents
<Vexatos>
@hmans as I said, patreon and liberapay take 3% each, so those might be a better option if/once the devs have it set up :P
<FromGitter>
<Blacksmoke16> i would have thought it would be under `Included Modules`?
<FromGitter>
<girng> i read the docs and have the cookbook, db, and API bookmarked. However, it's called INFORMATION OVERLOAD
<FromGitter>
<girng> your mind can't remember all that stuff
<FromGitter>
<girng> but if you do it through real world examples, it does
<oprypin>
you're right
<FromGitter>
<girng> for example, the & is now engrained in my head. and i'llprob use the shit out of it now lol
<FromGitter>
<Blacksmoke16> or Enumerable is included in array because its included in Indexable which is included in Array
<FromGitter>
<Blacksmoke16> that would make sense
<FromGitter>
<j8r> yes
<FromGitter>
<bew> @girng you could also read the docs, make yourself real world example out of them (or ask for some), and remember from them (and build a blog with them for others :P)
<FromGitter>
<j8r> since I know devdocs.io, most of the time I have what I've searched for @girng :-) ⏎ Of course you won't have the perfect code like the `&.` and `.any?`
<FromGitter>
<silentworks> Everyone learns differently, not everyone can read the docs and learn
<FromGitter>
<j8r> also searching direcly on crystal-lang/crystal helps
<FromGitter>
<silentworks> I use the docs mainly for reference
<FromGitter>
<Blacksmoke16> looking at the specs can also help
<FromGitter>
<girng> well, you're not wrong @bew =] i just want to get this game server done ASAP and just go to gitter whenever i found something odd
<FromGitter>
<silentworks> If I can't find something I ask in here how to do it, just like @girng is doing now
<FromGitter>
<girng> trust me it may seem like im not learning but i am.i love your help ^^
<wuehlmaus>
10
<FromGitter>
<girng> & is really enticing me now. because i have a lot of that code that be converted into 1 line
<FromGitter>
<j8r> you could done them in one line even without `&.`
<FromGitter>
<stern0> @j8r what about a function type
<FromGitter>
<stern0> for example when passing a function as argument to another function
shalmezad has quit [Quit: Leaving]
<FromGitter>
<j8r> @stern0 I recommend you to start coding, you will see how Crystal is great :-)
<FromGitter>
<j8r> Often you don't have to specify types
<FromGitter>
<stern0> @j8r 👍
<Vexatos>
Do methods have a type themselves one could use to specify them?
<FromGitter>
<j8r> Methods returns types, but aren't a type themsleves. A type is basically a Class(or Struct/Enum).
<Vexatos>
so you can not further specify what kind of method you pass to another method?
<FromGitter>
<j8r> You don't pass method to methods. There are blocks, but this is another story
<FromGitter>
<j8r> If you want "to restrict to some methods" in arguments, regroup them in a Class
rohitpaulk has joined #crystal-lang
<FromGitter>
<j8r> I see you sometimes here. Do you code in Crystal @Vexatos ?
<Vexatos>
Nope
<Vexatos>
I have been dragged into this and am moderately interested in the language.
<Vexatos>
(read: I haven't found a project to try it on yet)
<FromGitter>
<j8r> You can contribute to projects, there are plenty
<Vexatos>
None that I care about :P
<FromGitter>
<j8r> On my side I use Crystal a bit like Go is used - primilarly devops/system oriented
<FromGitter>
<j8r> On what do you care? Web, system, data?
<Vexatos>
Scientific computing, mostly
<Vexatos>
Not that I own any fancy hardware myself, I am just a student
<FromGitter>
<j8r> Oh ok, in math I guess?
<Vexatos>
Chemistry.
<FromGitter>
<j8r> Why not in Computer Science?
<Vexatos>
Because chemistry is better? :P
<FromGitter>
<j8r> It's quite cool I agree. I also like Physics 😄
<Vexatos>
I can integrate computer science into chemistry, and still keep it (especially programming) as a hobby. On the contrary, studying computer science would not have allowed me to do chemistry as a hobby, I'd have had to drop that passion of mine
Nathanaelle has quit [Ping timeout: 264 seconds]
<Vexatos>
So studying chemistry definitely was the best option
<Vexatos>
chemistry is 50% physics, anyway
Nathanaelle has joined #crystal-lang
<FromGitter>
<j8r> In your school you use programming in courses?
<Vexatos>
Only in theoretical/quantum chemistry
<Vexatos>
What I do is mostly side projects that have nothing to do with courses
<FromGitter>
<j8r> Some labs?
<Vexatos>
As a student I don't have time to actually work at a lab :I
<Vexatos>
It's just me and just for fun.
<FromGitter>
<j8r> You do chemistry with no laboratory manipulation?
<Vexatos>
that is what theoretical chemistry is about.
<Vexatos>
It's called that for a reason
<FromGitter>
<j8r> Too bad that's the best part :-D
<Vexatos>
lab work? I do plenty of that in my courses
<FromGitter>
<j8r> Yes
<FromGitter>
<stern0> @FromIRC @j8r I actually meant taking function as function arguments
<Vexatos>
roughly half of my time is spent in a laboratory
<Vexatos>
But those courses have nothing to do with what I do when I am bored :P
Nathanaelle has quit [Ping timeout: 264 seconds]
<Vexatos>
well, courses are over for now, I am going to start my thesis soon, anyway
<Vexatos>
That one will be mostly lab work, heh
<FromGitter>
<j8r> You want to becone a laboragory tech at the end?
<Vexatos>
lab technician is a completely different thing
<Vexatos>
at least in my country, you do not study it at a university, you do an apprenticeship
<Vexatos>
you learn very different things
<FromGitter>
<j8r> This is right globally, we learn the most useful skills when working
<FromGitter>
<j8r> Thanks to my learns outside schools, I was able to have a pretty good job in IT at 20. Let's F**K the school system :-D
<Vexatos>
I really like the school system in my country
<FromGitter>
<j8r> Thanks to Crystal and the community, I was proposed to work as a Ruby dev (but refused)
<Vexatos>
I get paid for studying :P
<Vexatos>
Even if not much
<FromGitter>
<j8r> I've done this when 19-20
<FromGitter>
<j8r> What's you age?
<FromGitter>
<j8r> Du wohnst in Deutschland, recht?
<txdv>
rechter gehts nicht
<Vexatos>
"rechts" is the term for right as in the direction, for "correct", you'd use "richtig"
<Vexatos>
but yes, I do
<FromGitter>
<j8r> Haha I will waken all Deuscher here
<FromGitter>
<j8r> Aprenticeship is also here in France
<FromGitter>
<j8r> But the school system is NOT optimized, really not.
<FromGitter>
<j8r> The best school is the Life's School
<FromGitter>
<j8r> And crystal-lang/crystal on Gitter :-D
DTZUZU has quit [Quit: WeeChat 1.9]
DTZUZU has joined #crystal-lang
greengriminal has quit [Quit: This computer has gone to sleep]
<oprypin>
you mean #crystal-lang on Freenode ;p
<FromGitter>
<jwoertink> So I've been thinking about the issue with ICR where some of the major limitations of it is how everything has to be re-evaluated.
<FromGitter>
<jwoertink> Just taking `Time.now` as the only example, I've been trying to think of a solution on how that could possibly work
<FromGitter>
<jwoertink> I'm not familiar with clojure at all, but from what I understand is, that is a compiled language, and using their repl, it works how you'd expect
<FromGitter>
<jwoertink> Has anyone dug around with other compiled language repls to get ideas on how we could make this work?
<FromGitter>
<rezam90> Hi everyone. Do you know of any game server written in crystal?
<FromGitter>
<rezam90> Lightwight and simple based on components and distributed
<FromGitter>
<j8r> @girng is working on a game with Godot, and the server in Crystal
<FromGitter>
<j8r> @rezam90 you'll need to make one from scratch
<FromGitter>
<j8r> The place to find Crystal projects is searching on GitHub and http://crystalshards.xyz/
<FromGitter>
<omerxx> @jwoertink I know, that's only an HTTP requests signer. Not a full sdk ⏎ @j8r I did, and couldn't find what I was looking for, that's why I'm asking
<FromGitter>
<j8r> @omerxx if you did so, Im afraid to tell you that you'll very likely have do make one ;-)
<FromGitter>
<j8r> Most of us Open Source projects like that
oz` has joined #crystal-lang
oz has quit [*.net *.split]
oz` is now known as oz
rohitpaulk has quit [Ping timeout: 276 seconds]
<FromGitter>
<stern0> I know crystal can't do multi-threading, so are fibers just for asynchrony or do they spin other threads like goroutines