2025/01/17

Newest at the top

2025-01-17 15:52:54 +0100gentauro(~gentauro@user/gentauro) gentauro
2025-01-17 15:48:48 +0100simplystuart(~simplystu@c-75-75-152-164.hsd1.pa.comcast.net)
2025-01-17 15:47:03 +0100gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2025-01-17 15:45:22 +0100vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2025-01-17 15:43:23 +0100vanishingideal(~vanishing@user/vanishingideal) (Ping timeout: 252 seconds)
2025-01-17 15:42:22 +0100alexherbo2(~alexherbo@2a02-8440-3502-53f9-f9e8-b5fd-14d6-305d.rev.sfr.net) (Remote host closed the connection)
2025-01-17 15:39:43 +0100jespada(~jespada@2800:a4:dd:6900:c1bf:43ce:3d23:1885) jespada
2025-01-17 15:38:48 +0100alexherbo2(~alexherbo@2a02-8440-3502-53f9-f9e8-b5fd-14d6-305d.rev.sfr.net) alexherbo2
2025-01-17 15:38:09 +0100alexherbo2(~alexherbo@2a02-8440-3502-53f9-8db8-533d-25fc-39be.rev.sfr.net) (Remote host closed the connection)
2025-01-17 15:36:11 +0100caryhartline(~caryhartl@KD106184157010.ec-userreverse.dion.ne.jp) CaryHartline
2025-01-17 15:36:10 +0100 <merijn> There are some basic checks to catch the simplest cases, but in general your asking GHC to solve the (famously unsolvable) halting problem :p
2025-01-17 15:36:06 +0100jespada(~jespada@2800:a4:c4:2a00:c8e8:2028:dfd0:433b) (Ping timeout: 265 seconds)
2025-01-17 15:35:22 +0100 <merijn> chiselfuse: How do you expect GHC to know that it will never evaluate? :)
2025-01-17 15:34:27 +0100alexherbo2(~alexherbo@2a02-8440-3502-53f9-8db8-533d-25fc-39be.rev.sfr.net) alexherbo2
2025-01-17 15:34:02 +0100alexherbo2(~alexherbo@2a02-8440-3502-53f9-8169-56a8-78c5-3a5b.rev.sfr.net) (Remote host closed the connection)
2025-01-17 15:33:22 +0100Smiles(uid551636@id-551636.lymington.irccloud.com) Smiles
2025-01-17 15:33:08 +0100tnt2tnt1
2025-01-17 15:33:08 +0100tnt1(~Thunderbi@user/tnt1) (Ping timeout: 272 seconds)
2025-01-17 15:31:16 +0100tnt2(~Thunderbi@user/tnt1) tnt1
2025-01-17 15:28:44 +0100caryhartline(~caryhartl@KD106184157010.ec-userreverse.dion.ne.jp) (Read error: Connection reset by peer)
2025-01-17 15:28:15 +0100tnt2tnt1
2025-01-17 15:28:15 +0100tnt1(~Thunderbi@user/tnt1) (Ping timeout: 246 seconds)
2025-01-17 15:28:02 +0100caryhartline(~caryhartl@KD106184157010.ec-userreverse.dion.ne.jp) CaryHartline
2025-01-17 15:27:50 +0100tnt2(~Thunderbi@user/tnt1) tnt1
2025-01-17 15:25:43 +0100 <tomsmeding> in the interpreter (ghci), that probably doesn't work
2025-01-17 15:25:33 +0100 <tomsmeding> in principle, it would loop forever, but the runtime is sometimes smart enough to detect that and throw a <<loop>> exception instead
2025-01-17 15:25:17 +0100 <tomsmeding> if you compile your haskell program, it will probably print "<<loop>>" instead of looping forever for something like this :)
2025-01-17 15:24:49 +0100 <chiselfuse> tomsmeding: if it doesn't do nothing then it does something? are you referring to the possibility that this definition does something in terms of side effects which is why it loops forever instead of just telling me it will never evaluate?
2025-01-17 15:24:45 +0100 <tomsmeding> so it's 1, and then -- what does x start with? well, 1, so another 1, and then -- what does x start with? 1, so another 1, and... etc.
2025-01-17 15:24:24 +0100 <tomsmeding> the example I just showed, `let x = 1 : x in x`, constructs a list called 'x' which starts with 1, and then continues with... x
2025-01-17 15:23:56 +0100 <tomsmeding> for other data types, this can make perfect sense
2025-01-17 15:23:41 +0100 <tomsmeding> if x is a number, that's nonsense, so it indeed loops forever
2025-01-17 15:23:29 +0100 <tomsmeding> in haskell, there is only one x, so your value for x references x itself!
2025-01-17 15:23:09 +0100 <tomsmeding> in other programming languages, if you mention x on the right-hand side of an assignment to x, that right-most x just means "the previous value of x"
2025-01-17 15:22:48 +0100 <tomsmeding> chiselfuse: the main message is that `x = x` doesn't do _nothing_
2025-01-17 15:22:29 +0100 <chiselfuse> i don't understand any of that so i'll just read ahead in my book for now
2025-01-17 15:21:33 +0100ft(~ft@p4fc2a354.dip0.t-ipconnect.de) ft
2025-01-17 15:21:08 +0100 <lambdabot> [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1...
2025-01-17 15:21:07 +0100 <tomsmeding> > let x = 1 : x in x
2025-01-17 15:21:04 +0100 <lambdabot> [1,2]
2025-01-17 15:21:03 +0100 <tomsmeding> > 1 : 2 : []
2025-01-17 15:20:55 +0100 <tomsmeding> chiselfuse: you're defining x in terms of itself :)
2025-01-17 15:20:00 +0100 <chiselfuse> ultra noob question. what do `x=x` or `x=x*2` do in haskell? i tried using `x` after defining it this way and it just hangs. is it looping forever?
2025-01-17 15:14:47 +0100alp(~alp@2001:861:8ca0:4940:efc9:d30b:fc5e:f0f7)
2025-01-17 15:12:07 +0100ubert(~Thunderbi@2a02:8109:ab8a:5a00:90fa:a109:5301:a5a3) ubert
2025-01-17 15:04:48 +0100simplystuart(~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Ping timeout: 246 seconds)
2025-01-17 14:54:30 +0100lxsameer(~lxsameer@Serene/lxsameer) (Ping timeout: 276 seconds)
2025-01-17 14:52:21 +0100CiaoSen(~Jura@2a05:5800:2e9:c100:ca4b:d6ff:fec1:99da) (Ping timeout: 252 seconds)
2025-01-17 14:49:22 +0100weary-traveler(~user@user/user363627) user363627
2025-01-17 14:48:16 +0100simplystuart(~simplystu@c-75-75-152-164.hsd1.pa.comcast.net)