Logs: liberachat/#haskell
| 2025-10-31 10:38:50 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Read error: Connection reset by peer) |
| 2025-10-31 10:38:50 | ljdarj1 | is now known as ljdarj |
| 2025-10-31 10:45:10 | → | Dhark8 joins (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) |
| 2025-10-31 10:46:31 | × | Shark8 quits (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Ping timeout: 264 seconds) |
| 2025-10-31 10:47:08 | → | halloy8008 joins (~halloy800@2405:201:a00a:b009:95f6:89f8:41dc:a5ef) |
| 2025-10-31 10:48:26 | × | halloy8008 quits (~halloy800@2405:201:a00a:b009:95f6:89f8:41dc:a5ef) (Quit: halloy8008) |
| 2025-10-31 11:03:39 | × | Googulator quits (~Googulato@team.broadbit.hu) (Quit: Client closed) |
| 2025-10-31 11:03:59 | → | Googulator joins (~Googulato@team.broadbit.hu) |
| 2025-10-31 11:04:21 | × | Googulator quits (~Googulato@team.broadbit.hu) (Client Quit) |
| 2025-10-31 11:04:38 | → | Googulator joins (~Googulato@team.broadbit.hu) |
| 2025-10-31 11:08:06 | catties | is now known as C477135 |
| 2025-10-31 11:21:46 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...) |
| 2025-10-31 11:25:16 | <[exa]> | tomsmeding kuribas: are there free selectives already in the libraries? (just saw the messages above so kinda wondering) |
| 2025-10-31 11:29:15 | tomsmeding | doesn't know |
| 2025-10-31 11:30:59 | <tomsmeding> | sm: bitwise AND is enough https://lcamtuf.substack.com/p/sierpinski-triangle-in-my-bitwise |
| 2025-10-31 11:33:53 | × | nerdychip quits (~nerdychip@user/nerdychip) (Ping timeout: 256 seconds) |
| 2025-10-31 11:35:04 | <kuribas> | [exa]: I don't know. I like the applicative inside monad pattern. |
| 2025-10-31 11:36:11 | → | nerdychip joins (~nerdychip@212.129.76.47) |
| 2025-10-31 11:36:11 | × | nerdychip quits (~nerdychip@212.129.76.47) (Changing host) |
| 2025-10-31 11:36:11 | → | nerdychip joins (~nerdychip@user/nerdychip) |
| 2025-10-31 11:38:51 | <tomsmeding> | %% putStr$unlines[["#."!!fromEnum(i.&.j>0)|j<-[0..31]]|i<-[0..31::Int]] -- sm |
| 2025-10-31 11:38:52 | <yahb2> | https://paste.tomsmeding.com/GlIradAP |
| 2025-10-31 11:41:36 | <[exa]> | what is this %% sorcery |
| 2025-10-31 11:42:22 | <tomsmeding> | the original yahb did it too, and someone requested the functionality |
| 2025-10-31 11:42:37 | <[exa]> | cool |
| 2025-10-31 11:42:58 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 256 seconds) |
| 2025-10-31 11:43:32 | <tomsmeding> | the pastes expire, though |
| 2025-10-31 11:43:32 | × | synchromesh quits (~john@2406:5a00:2412:2c00:10d9:ceb6:778c:2519) (Read error: Connection reset by peer) |
| 2025-10-31 11:43:40 | → | ljdarj1 joins (~Thunderbi@user/ljdarj) |
| 2025-10-31 11:44:44 | → | synchromesh joins (~john@2406:5a00:2412:2c00:10d9:ceb6:778c:2519) |
| 2025-10-31 11:45:42 | <tomsmeding> | ooh it can be golfed: fromEnum(i.&.j>0) -> signum(i.&.j) |
| 2025-10-31 11:47:00 | × | Googulator quits (~Googulato@team.broadbit.hu) (Quit: Client closed) |
| 2025-10-31 11:47:18 | → | Googulator joins (~Googulato@team.broadbit.hu) |
| 2025-10-31 11:47:33 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 252 seconds) |
| 2025-10-31 11:47:33 | ljdarj1 | is now known as ljdarj |
| 2025-10-31 11:49:16 | <__monty__> | I was going trying ('#':repeat '.')!!(i.&.j), my golf is weak. |
| 2025-10-31 11:54:37 | <tomsmeding> | well you did shorten it :) |
| 2025-10-31 11:54:59 | <tomsmeding> | because it allows removing the ::Int annotation |
| 2025-10-31 11:55:12 | <tomsmeding> | though the signum trick also does, and it's also shorter, so signum does win |
| 2025-10-31 11:56:01 | <tomsmeding> | __monty__: a little bit shorter (though still longer than signum): '#':cycle"." |
| 2025-10-31 11:57:18 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-10-31 11:58:36 | <__monty__> | Darn, you put me to shame again, found `['.','.'..]`. |
| 2025-10-31 12:01:31 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 264 seconds) |
| 2025-10-31 12:10:40 | × | Googulator quits (~Googulato@team.broadbit.hu) (Quit: Client closed) |
| 2025-10-31 12:10:48 | → | Googulator joins (~Googulato@team.broadbit.hu) |
| 2025-10-31 12:11:25 | × | GdeVolpiano quits (~GdeVolpia@user/GdeVolpiano) (Ping timeout: 264 seconds) |
| 2025-10-31 12:18:44 | → | comerijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-31 12:20:08 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 260 seconds) |
| 2025-10-31 12:25:32 | × | Googulator quits (~Googulato@team.broadbit.hu) (Quit: Client closed) |
| 2025-10-31 12:25:38 | → | Googulator12 joins (~Googulato@team.broadbit.hu) |
| 2025-10-31 12:32:37 | AlexNoo_ | is now known as AlexNoo |
| 2025-10-31 12:33:37 | → | GdeVolpiano joins (~GdeVolpia@user/GdeVolpiano) |
| 2025-10-31 12:34:18 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 2025-10-31 12:41:17 | <haskellbridge> | <sm> tomsmeding: With an import Data.Bits. Thanks! |
| 2025-10-31 12:43:06 | Googulator12 | is now known as Googulator |
| 2025-10-31 12:48:25 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 2025-10-31 12:50:35 | × | L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection timed out) |
| 2025-10-31 12:52:40 | <haskellbridge> | <sm> needs a console so we can run tiny games |
| 2025-10-31 12:58:49 | → | ttybitnik joins (~ttybitnik@user/wolper) |
| 2025-10-31 13:00:09 | <__monty__> | Can't get this any more golfed (trying to more faithfully reproduce the original), `putStr$foldMap(foldr(++)"\n")[[["██"," "]!!signum(i.&.j)|j<-[0..31]]|i<-[0..31]]`. |
| 2025-10-31 13:00:42 | → | Googulator58 joins (~Googulato@team.broadbit.hu) |
| 2025-10-31 13:00:51 | <__monty__> | Of course I copied a line break in the middle of `" "` >.< |
| 2025-10-31 13:03:51 | × | Googulator quits (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds) |
| 2025-10-31 13:05:05 | <tomsmeding> | putStr$unlines$concat<$>[[["██"," "]!!signum(i.&.j)|j<-[0..31]]|i<-[0..31]] |
| 2025-10-31 13:05:42 | × | trickard quits (~trickard@cpe-60-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-10-31 13:05:55 | → | trickard_ joins (~trickard@cpe-60-98-47-163.wireline.com.au) |
| 2025-10-31 13:08:33 | <tomsmeding> | putStr$unlines[["█ "!!signum(i.&.j)|j<-[0..31],_<-"ab"]|i<-[0..31]] |
| 2025-10-31 13:10:53 | <int-e> | same here, plus `signum` -> `min 1` |
| 2025-10-31 13:11:11 | <tomsmeding> | oo nice |
| 2025-10-31 13:12:46 | <int-e> | > map length ["mapM putrStrLn", "putStr$unlines"] -- also this if you don't care about the return type |
| 2025-10-31 13:12:48 | <lambdabot> | [14,14] |
| 2025-10-31 13:13:10 | <tomsmeding> | the typo broke it :p |
| 2025-10-31 13:13:20 | <int-e> | oops |
| 2025-10-31 13:14:54 | <tomsmeding> | if you allow an additional import, forM[...]putStrLn |
| 2025-10-31 13:18:08 | <__monty__> | Darn, was gonna say I beat you by one character `for_(concat<$>[[["██"," "]!!signum(i.&.j)|j<-[0..31]]|i<-[0..31]])putStrLn` but you already got there. (Modulo the Data.Foldable import, but who really cares about a couple characters?) |
| 2025-10-31 13:18:09 | <tomsmeding> | oh but you can do the same to the `min` without imports |
| 2025-10-31 13:19:05 | <int-e> | tomsmeding: oops, that's so obvious now that you said it |
| 2025-10-31 13:19:25 | <tomsmeding> | without imports I think this is the shortest so far: |
| 2025-10-31 13:19:27 | <tomsmeding> | mapM putStrLn[["█ "!!min(i.&.j)1|j<-[0..31],_<-"ab"]|i<-[0..31]] |
| 2025-10-31 13:19:54 | <int-e> | well you still have the Data.Bits import :) |
| 2025-10-31 13:20:00 | <tomsmeding> | __monty__: concat<$>[ can be shortened to [concat |
| 2025-10-31 13:20:15 | <tomsmeding> | yeah I know, but you ain't going to implement .&. in less than that import costs |
| 2025-10-31 13:21:39 | <int-e> | . o O ( more like Data.Nits ) |
| 2025-10-31 13:24:26 | × | GdeVolpiano quits (~GdeVolpia@user/GdeVolpiano) (Quit: WeeChat 4.5.2) |
| 2025-10-31 13:26:27 | → | GdeVolpiano joins (~GdeVolpia@user/GdeVolpiano) |
| 2025-10-31 13:28:23 | <__monty__> | Even if we could golf out .&., it wouldn't be faithful to the blog anymore. |
| 2025-10-31 13:30:49 | → | Googulator11 joins (~Googulato@team.broadbit.hu) |
| 2025-10-31 13:33:45 | × | Googulator58 quits (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds) |
| 2025-10-31 13:38:45 | <Leary> | %% putStrLn.unlines$[0..31]<&> \i->replicate i ' '++do{j<-[0..31-i];["\\/"," "]!!min(i.&.j)1} |
| 2025-10-31 13:38:45 | <yahb2> | https://paste.tomsmeding.com/mHsRpiqc |
| 2025-10-31 13:38:55 | <tomsmeding> | oooo |
| 2025-10-31 13:39:20 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 2025-10-31 13:39:28 | × | tromp quits (~textual@2001:1c00:3487:1b00:dc25:ce25:d6de:4df2) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-10-31 13:42:28 | → | ft joins (~ft@p4fc2aaeb.dip0.t-ipconnect.de) |
| 2025-10-31 13:44:43 | <int-e> | $$ putStr$do i<-[0..31];i`drop`do{j<-[-i..31-i];["\\/"," "]!!min(i.&.j)1}++"\n" |
| 2025-10-31 13:44:48 | <int-e> | %% putStr$do i<-[0..31];i`drop`do{j<-[-i..31-i];["\\/"," "]!!min(i.&.j)1}++"\n" |
| 2025-10-31 13:44:48 | <yahb2> | https://paste.tomsmeding.com/kuTDCPQV |
| 2025-10-31 13:45:17 | <int-e> | (is that ++"\n" trick applicable to the other one... mm) |
| 2025-10-31 13:46:43 | <int-e> | yes and no; `putStr$do i<-[0..31];["█ "!!min(i.&.j)1|j<-[0..31],_<-" "]++"\n"` is the same length |
| 2025-10-31 13:46:58 | <tomsmeding> | "╲╱" is nicer |
All times are in UTC.