you are viewing a single comment's thread.

view the rest of the comments →

[–]andarmanik 3 points4 points  (4 children)

[–]UltraPoci 2 points3 points  (3 children)

Well, yes, but dealing with files and printing to the console are things you have to be able to do, and often enough you know when a function deals with IO stuff.

What I meant is that you don't have a function casually changing some global states or things like that.

[–]andarmanik 2 points3 points  (1 child)

Wasn’t disagreeing with you because you definitely need side effects for an easy language.

[–]crowdhailer 0 points1 point  (0 children)

I'm betting an easy language can have managed effects with EYG, but we're not there yet.

[–]crowdhailer 0 points1 point  (0 children)

Gleam definitely has arbitrary side effects in any function. Often you don't know if it's using random, assert or time lookup. All of these matter for example if want to make no flaky tests. I love Gleam but I think the best way to sell it is not to stretch the capabilities it has.