2024-04-01 00:00:10 +0200 | <ski> | (perhaps there's another way to look at it. if you could define some (e.g. Haskell) data types (trees or graphs or tables or whatever), that can be used to represent these types (and also, preferably, corresponding expression structures for invoking functions having these types), that could help to better understand how you're thinking about it) |
2024-04-01 00:00:19 +0200 | <ski> | (bbiam) |
2024-04-01 00:02:55 +0200 | <cheater> | so what if you had |
2024-04-01 00:02:59 +0200 | <cheater> | a } |
2024-04-01 00:03:09 +0200 | <cheater> | } Bool -> c |
2024-04-01 00:03:12 +0200 | <cheater> | b } |
2024-04-01 00:03:35 +0200 | <cheater> | and the Bool informed whether your function wants an a or a b? |
2024-04-01 00:04:15 +0200 | <cheater> | you start with the fact that you end up with c |
2024-04-01 00:04:17 +0200 | <cheater> | you know that for sure |
2024-04-01 00:04:36 +0200 | <cheater> | but then at runtime depending on the value of the Bool you either want an a as input, or a b as input. |
2024-04-01 00:07:33 +0200 | <cheater> | (and maybe you can figure out the Bool at compile time already, and specialize) |
2024-04-01 00:14:39 +0200 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) (Remote host closed the connection) |
2024-04-01 00:14:43 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-04-01 00:18:18 +0200 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) |
2024-04-01 00:22:33 +0200 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) (Remote host closed the connection) |
2024-04-01 00:23:56 +0200 | <ski> | at compile-time, you don't know the run-time value of the `Bool', in general. so you'd have to provide potential computations for both `a' and `b' (but not necessarily the possibility to materialize both) |
2024-04-01 00:27:54 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Quit: Leaving) |
2024-04-01 00:28:00 +0200 | <cheater> | yup |
2024-04-01 00:41:44 +0200 | causal | (~eric@50.35.88.207) |
2024-04-01 00:44:26 +0200 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |
2024-04-01 00:45:53 +0200 | Square2 | (~Square@user/square) |
2024-04-01 00:58:04 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2024-04-01 01:08:31 +0200 | iteratee | (~kyle@162.218.222.207) (Read error: Connection reset by peer) |
2024-04-01 01:08:52 +0200 | iteratee | (~kyle@162.218.222.207) |
2024-04-01 01:08:57 +0200 | acidjnk_new | (~acidjnk@p200300d6e714dc446d52a2431789bf32.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
2024-04-01 01:12:57 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 268 seconds) |
2024-04-01 01:13:41 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2024-04-01 01:30:03 +0200 | travgm | (~travgm@fsf/member/travgm) |
2024-04-01 01:31:13 +0200 | picnoir | (~picnoir@about/aquilenet/vodoo/NinjaTrappeur) (Ping timeout: 255 seconds) |
2024-04-01 01:36:07 +0200 | picnoir | (~picnoir@about/aquilenet/vodoo/NinjaTrappeur) |
2024-04-01 01:51:05 +0200 | jero98772 | (~jero98772@2800:484:1d81:2200::4) |
2024-04-01 01:52:22 +0200 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) |
2024-04-01 01:57:02 +0200 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) (Remote host closed the connection) |
2024-04-01 02:00:38 +0200 | A_Dragon | A_Meow |
2024-04-01 02:00:54 +0200 | A_Meow | A_Dragon |
2024-04-01 02:02:24 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2024-04-01 02:03:35 +0200 | califax | (~califax@user/califx) |
2024-04-01 02:04:19 +0200 | glguy | glpup |
2024-04-01 02:05:36 +0200 | falafel_ | (~falafel@162.83.249.190) |
2024-04-01 02:06:33 +0200 | <c_wraith> | is that even a rebrand? The name was obviously in french all along |
2024-04-01 02:09:03 +0200 | sadie_ | (~sadie@c-76-155-235-153.hsd1.co.comcast.net) |
2024-04-01 02:18:00 +0200 | rvalue | (~rvalue@user/rvalue) (Ping timeout: 255 seconds) |
2024-04-01 02:20:59 +0200 | vulpine | (xfnw@tilde.team) (Changing host) |
2024-04-01 02:20:59 +0200 | vulpine | (xfnw@user/meow/xfnw) |
2024-04-01 02:23:22 +0200 | Catty | (~catties@user/catties) (Changing host) |
2024-04-01 02:23:22 +0200 | Catty | (~catties@user/meow/catties) |
2024-04-01 02:23:52 +0200 | jero98772 | (~jero98772@2800:484:1d81:2200::4) (Ping timeout: 255 seconds) |
2024-04-01 02:26:11 +0200 | rvalue | (~rvalue@user/rvalue) |
2024-04-01 02:32:01 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
2024-04-01 02:49:13 +0200 | r5c4571lh01987 | (rscastilho@179.221.142.8) |
2024-04-01 02:49:57 +0200 | r5c4571lh01987 | (rscastilho@179.221.142.8) (Remote host closed the connection) |
2024-04-01 02:52:05 +0200 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 240 seconds) |
2024-04-01 02:54:01 +0200 | falafel_ | (~falafel@162.83.249.190) (Ping timeout: 255 seconds) |
2024-04-01 03:10:03 +0200 | She | KittyMcCatFace |
2024-04-01 03:11:51 +0200 | <monochrom> | "libera cat" sounds like April 1st :) |
2024-04-01 03:34:56 +0200 | rekahsoft | (~rekahsoft@bras-base-orllon1103w-grc-13-184-148-6-204.dsl.bell.ca) |
2024-04-01 03:50:23 +0200 | otto_s | (~user@p4ff27abc.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
2024-04-01 03:51:41 +0200 | otto_s | (~user@p4ff2714c.dip0.t-ipconnect.de) |
2024-04-01 04:00:04 +0200 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 268 seconds) |
2024-04-01 04:00:18 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2024-04-01 04:01:24 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2024-04-01 04:03:05 +0200 | mokee | (~mokee@37.228.214.101) |
2024-04-01 04:03:11 +0200 | cjay | mewjay |
2024-04-01 04:03:18 +0200 | petrichor | (~znc-user@user/petrichor) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-04-01 04:03:22 +0200 | mokee | (~mokee@37.228.214.101) (Client Quit) |
2024-04-01 04:03:41 +0200 | petrichor | (~znc-user@user/petrichor) |
2024-04-01 04:06:55 +0200 | jinsun | (~jinsun@user/jinsun) (Read error: Connection reset by peer) |
2024-04-01 04:07:11 +0200 | jinsun | (~jinsun@user/jinsun) |
2024-04-01 04:09:58 +0200 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-04-01 04:11:02 +0200 | tri_ | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-04-01 04:11:49 +0200 | geekosaur | mewosaur |
2024-04-01 04:14:14 +0200 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 252 seconds) |
2024-04-01 04:19:09 +0200 | tri_ | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-04-01 04:40:13 +0200 | bilegeek | (~bilegeek@2600:1008:b063:3463:2db4:7d44:233e:64aa) |
2024-04-01 05:01:30 +0200 | nitrix | (~nitrix@user/nitrix) (Changing host) |
2024-04-01 05:01:30 +0200 | nitrix | (~nitrix@user/meow/nitrix) |
2024-04-01 05:01:55 +0200 | td_ | (~td@i53870929.versanet.de) (Ping timeout: 260 seconds) |
2024-04-01 05:03:50 +0200 | td_ | (~td@i53870937.versanet.de) |
2024-04-01 05:16:27 +0200 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-04-01 05:16:38 +0200 | igemnace | (~ian@user/igemnace) |
2024-04-01 05:19:32 +0200 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Client Quit) |
2024-04-01 05:28:59 +0200 | sadie_ | (~sadie@c-76-155-235-153.hsd1.co.comcast.net) (Remote host closed the connection) |
2024-04-01 05:31:12 +0200 | aforemny | (~aforemny@2001:9e8:6cd9:500:674a:462b:208b:27e8) |
2024-04-01 05:32:25 +0200 | aforemny_ | (~aforemny@2001:9e8:6cf4:d100:2036:993f:679a:6cf6) (Ping timeout: 255 seconds) |
2024-04-01 05:34:11 +0200 | JimL | (~quassel@89.162.16.26) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2024-04-01 05:37:11 +0200 | JimL | (~quassel@89.162.16.26) |
2024-04-01 05:40:38 +0200 | fererrorocher | (fererroroc@gateway/vpn/protonvpn/fererrorocher) (Quit: WeeChat 4.2.1) |
2024-04-01 05:49:23 +0200 | mewosaur | geekopurr |
2024-04-01 05:57:29 +0200 | xigua | (~xigua@user/xigua) (Read error: Connection reset by peer) |
2024-04-01 05:57:42 +0200 | xigua | (~xigua@user/xigua) |
2024-04-01 05:58:45 +0200 | rekahsoft | (~rekahsoft@bras-base-orllon1103w-grc-13-184-148-6-204.dsl.bell.ca) (Ping timeout: 252 seconds) |
2024-04-01 06:03:01 +0200 | Guest81 | (~Guest81@142.198.15.89) |
2024-04-01 06:04:31 +0200 | <Guest81> | hey, I am wondering are there any haskell debuggers out there? quick google search doesn't get me anything relevant except for Debug.Trace |
2024-04-01 06:09:35 +0200 | <ski> | there's one built-in to GHCi, <https://downloads.haskell.org/ghc/latest/docs/users_guide/ghci.html#the-ghci-debugger> |
2024-04-01 06:09:35 +0200 | <geekopurr> | ghci has a built-in debugger, and if you have a ghc build with DWARF information then you can use gdb to some extent |
2024-04-01 06:13:28 +0200 | <Guest81> | got it, any ide/lsp implementations that support interactive debugging? |
2024-04-01 06:16:35 +0200 | <geekopurr> | I don't think HLS supports debugging yet, but #haskell-language-server would know more |
2024-04-01 06:18:09 +0200 | <geekopurr> | (matrix generally works better than IRC for that, #haskell-language-server:matrix.org) |
2024-04-01 06:21:43 +0200 | Guest81 | (~Guest81@142.198.15.89) (Quit: Client closed) |
2024-04-01 06:26:55 +0200 | <haskellbridge> | <sm> Guest81 look at ghci-tui too, it's nifty |
2024-04-01 06:27:35 +0200 | <haskellbridge> | <sm> there is a debugger extension for vs code and it works but I found it temperamental |
2024-04-01 07:08:25 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2024-04-01 07:08:58 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2024-04-01 07:11:10 +0200 | zetef | (~quassel@5.2.182.99) |
2024-04-01 07:11:50 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2024-04-01 07:12:14 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2024-04-01 07:18:08 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2024-04-01 07:18:32 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2024-04-01 07:29:15 +0200 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) |
2024-04-01 07:49:29 +0200 | euphores | (~SASL_euph@user/euphores) (Quit: Leaving.) |
2024-04-01 07:52:30 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-04-01 08:00:04 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2024-04-01 08:03:15 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-04-01 08:08:25 +0200 | euphores | (~SASL_euph@user/euphores) |
2024-04-01 08:22:46 +0200 | machinedgod | (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 268 seconds) |
2024-04-01 08:28:39 +0200 | jinsun_ | (~jinsun@user/jinsun) |
2024-04-01 08:28:39 +0200 | jinsun | (~jinsun@user/jinsun) (Killed (molybdenum.libera.chat (Nickname regained by services))) |
2024-04-01 08:28:39 +0200 | jinsun_ | jinsun |
2024-04-01 08:36:54 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-04-01 08:59:27 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2024-04-01 08:59:56 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2024-04-01 09:27:41 +0200 | jle` | (~jle`@2603-8001-3b02-84d4-ffba-5774-382a-24ec.res6.spectrum.com) (Ping timeout: 240 seconds) |
2024-04-01 09:28:59 +0200 | jle` | (~jle`@2603-8001-3b02-84d4-c3f6-003a-068f-efb1.res6.spectrum.com) |
2024-04-01 09:39:45 +0200 | tzh | (~tzh@c-73-164-206-160.hsd1.or.comcast.net) (Quit: zzz) |
2024-04-01 09:57:26 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
2024-04-01 09:59:20 +0200 | acidjnk_new | (~acidjnk@p200300d6e714dc028ca983f248aa2682.dip0.t-ipconnect.de) |
2024-04-01 10:14:04 +0200 | mei | (~mei@user/mei) (Quit: mei) |
2024-04-01 10:14:25 +0200 | gmg | (~user@user/gehmehgeh) |
2024-04-01 10:15:04 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2024-04-01 10:15:53 +0200 | igemnace | (~ian@user/igemnace) (Read error: Connection reset by peer) |
2024-04-01 10:18:36 +0200 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
2024-04-01 10:18:42 +0200 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2024-04-01 10:19:18 +0200 | gmg | (~user@user/gehmehgeh) |
2024-04-01 10:24:15 +0200 | causal | (~eric@50.35.88.207) (Quit: WeeChat 4.1.1) |
2024-04-01 10:33:09 +0200 | igemnace | (~ian@user/igemnace) |
2024-04-01 10:36:03 +0200 | econo_ | (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
2024-04-01 10:41:13 +0200 | __monty__ | (~toonn@user/toonn) |
2024-04-01 10:41:46 +0200 | bilegeek | (~bilegeek@2600:1008:b063:3463:2db4:7d44:233e:64aa) (Quit: Leaving) |
2024-04-01 10:46:47 +0200 | sawilagar | (~sawilagar@user/sawilagar) |
2024-04-01 10:47:41 +0200 | zetef | (~quassel@5.2.182.99) (Ping timeout: 240 seconds) |
2024-04-01 10:51:23 +0200 | sawilagar | (~sawilagar@user/sawilagar) (Ping timeout: 272 seconds) |
2024-04-01 11:08:22 +0200 | zetef | (~quassel@5.2.182.99) |
2024-04-01 11:15:27 +0200 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
2024-04-01 11:16:16 +0200 | gmg | (~user@user/gehmehgeh) |
2024-04-01 11:40:27 +0200 | Etabeta1 | (~Etabeta1@user/Etabeta1) (Changing host) |
2024-04-01 11:40:27 +0200 | Etabeta1 | (~Etabeta1@user/meow/Etabeta1) |
2024-04-01 11:50:57 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) |
2024-04-01 11:55:18 +0200 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) |
2024-04-01 12:02:34 +0200 | kuribas | (~user@ptr-17d51en165pb8grzwxi.18120a2.ip6.access.telenet.be) |
2024-04-01 12:02:41 +0200 | Miroboru | (~myrvoll@178-164-114.82.3p.ntebredband.no) |
2024-04-01 12:06:54 +0200 | aforemny | (~aforemny@2001:9e8:6cd9:500:674a:462b:208b:27e8) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-04-01 12:07:09 +0200 | aforemny | (~aforemny@2001:9e8:6cd9:500:d9a4:1707:4c79:474) |
2024-04-01 12:07:56 +0200 | duncan | (c6181279e3@user/duncan) (Changing host) |
2024-04-01 12:07:56 +0200 | duncan | (c6181279e3@user/meow/duncan) |
2024-04-01 12:29:13 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2024-04-01 12:29:26 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 268 seconds) |
2024-04-01 12:30:35 +0200 | Lord_of_Life_ | Lord_of_Life |
2024-04-01 12:43:00 +0200 | euphores | (~SASL_euph@user/euphores) (Quit: Leaving.) |
2024-04-01 12:46:39 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-04-01 12:52:37 +0200 | zetef | (~quassel@5.2.182.99) (Remote host closed the connection) |
2024-04-01 12:53:40 +0200 | <Inst> | what is the performance difference between . and $? |
2024-04-01 12:53:54 +0200 | <Inst> | I see Bodigrim using $ where others might use ., why prefer $ over .? |
2024-04-01 12:54:36 +0200 | <int-e> | :t (.) |
2024-04-01 12:54:37 +0200 | <lambdabot> | (b -> c) -> (a -> b) -> a -> c |
2024-04-01 12:54:41 +0200 | <int-e> | :t ($) |
2024-04-01 12:54:41 +0200 | <lambdabot> | (a -> b) -> a -> b |
2024-04-01 12:54:48 +0200 | <int-e> | they're not even the same |
2024-04-01 12:55:35 +0200 | <int-e> | if you're asking about f $ g $ x vs. f . g $ x there's no performance difference because after inlining . or $ the code will simplify to the same thing |
2024-04-01 12:55:40 +0200 | <int-e> | so it becomes a matter of taste |
2024-04-01 12:56:14 +0200 | <int-e> | which of course means that some people have very strong opinions about it |
2024-04-01 12:57:52 +0200 | <Inst> | I know they're not the same, just wondering because I prefer foo . bar $ baz quux over foo $ bar $ baz quux |
2024-04-01 12:58:40 +0200 | <Inst> | semantically, though, it implies different control, no? |
2024-04-01 12:58:42 +0200 | <Inst> | in laziness |
2024-04-01 12:58:47 +0200 | <int-e> | no |
2024-04-01 12:59:12 +0200 | <Inst> | wait, maybe i have operator precedence in laziness messed up? |
2024-04-01 12:59:22 +0200 | <Inst> | the last operator to execute should have control |
2024-04-01 12:59:27 +0200 | <Inst> | so that's what you mean by no, right? |
2024-04-01 13:00:02 +0200 | <Inst> | in both cases, it's foo operating over a thunk |
2024-04-01 13:00:12 +0200 | <ncf> | operator precedence has nothing to do with laziness |
2024-04-01 13:00:29 +0200 | <int-e> | I'm saying no because ghc will inline . and $ and do the obvious beta reductions and then there'll be no difference between the $ version and the . version |
2024-04-01 13:00:58 +0200 | <int-e> | (maybe not with -O0 but that's not worth thinking about) |
2024-04-01 13:01:30 +0200 | jinsun_ | (~jinsun@user/jinsun) |
2024-04-01 13:01:30 +0200 | jinsun | Guest2216 |
2024-04-01 13:01:30 +0200 | jinsun_ | jinsun |
2024-04-01 13:01:32 +0200 | euphores | (~SASL_euph@user/euphores) |
2024-04-01 13:04:01 +0200 | <Inst> | but semantically it's supposed to be $ applying (f . g) to x vs $ applying f to (g $ x) |
2024-04-01 13:04:55 +0200 | Guest2216 | (~jinsun@user/jinsun) (Ping timeout: 260 seconds) |
2024-04-01 13:05:06 +0200 | <Inst> | which is the same, in practice, as you've said |
2024-04-01 13:05:14 +0200 | <int-e> | There's no observable difference between those two and f (g x) |
2024-04-01 13:05:31 +0200 | <ncf> | that sounds like syntax, not semantics |
2024-04-01 13:06:06 +0200 | <Inst> | thanks for the assistance |
2024-04-01 13:06:47 +0200 | <Inst> | it's just something that came up since i'm a pipeline / pointless addict, although obviously i don't get the "hard drugs" of pipelining multiparameter functions |
2024-04-01 13:07:16 +0200 | <ski> | with `f . g . h' you can break out `f . g' or `g . h' into its own definition (because `(.)' is associative) |
2024-04-01 13:08:01 +0200 | Catty | catties |
2024-04-01 13:08:43 +0200 | <probie> | int-e: there is an observable difference between all 3. `f $ g $ x` will still work if the value `f` returns isn't a lifted type, and `f (g x)` will still work if the value `g` returns isn't a lifted type |
2024-04-01 13:09:30 +0200 | <int-e> | yes, I did omit "if it type checks" |
2024-04-01 13:09:44 +0200 | <ncf> | do we have any type-level gurus in here |
2024-04-01 13:10:15 +0200 | <ncf> | if i have something like data App (a :: ()) (b :: ()) = forall f. Applicative f => MkApp (Proxy f) can i promote that to the type level so that i can write a type family that takes an App a b and returns a Type → Type |
2024-04-01 13:10:44 +0200 | <ncf> | my attempts are running into "Data constructor ‘MkApp’ cannot be used here (it has an unpromotable context ‘Applicative f’)" |
2024-04-01 13:11:24 +0200 | <ski> | the `f' there is only, in general, known at run-time |
2024-04-01 13:12:10 +0200 | <ncf> | so i cannae have type-level existentials? |
2024-04-01 13:12:27 +0200 | <ski> | hm, i guess with kind `App a b', the compile-time type of that kind would have `f' known .. |
2024-04-01 13:12:46 +0200 | <ncf> | (for reference i'm trying to define displayed categories and express Traversables as vertical endofunctors: https://paste.tomsmeding.com/O23Bq2ma) |
2024-04-01 13:12:55 +0200 | <ski> | .. but i've not seen any use of existentials with `DataKinds' |
2024-04-01 13:13:18 +0200 | <ncf> | i did find this absolutely cursed section of the docs but i don't think it helps me much https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/data_kinds.html#promoting-existential-data… |
2024-04-01 13:13:32 +0200 | <ncf> | the issue seems to be with the Applicative constraint |
2024-04-01 13:15:00 +0200 | <ski> | hm, interesting |
2024-04-01 13:15:39 +0200 | <ski> | yea, i guess promoting the constraint would require kind classes |
2024-04-01 13:16:22 +0200 | <ski> | maybe you could make an `ApplicativeDict' data type, promote that, and do some `unsafeCoerce#' or something .. |
2024-04-01 13:16:37 +0200 | <ski> | .. although, how would that work on the type level ? |
2024-04-01 13:24:00 +0200 | cheater_ | (~Username@user/cheater) |
2024-04-01 13:27:32 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 260 seconds) |
2024-04-01 13:27:37 +0200 | cheater_ | cheater |
2024-04-01 13:33:04 +0200 | <lyxia> | there are no type-level constraints |
2024-04-01 13:35:12 +0200 | <ncf> | hmm |
2024-04-01 13:37:15 +0200 | <ncf> | i'm not sure i even really need that |
2024-04-01 13:37:18 +0200 | <lyxia> | also the `id` and `o` in your DisplayedCategory are not the methods of Category |
2024-04-01 13:38:00 +0200 | <ncf> | ha? |
2024-04-01 13:38:28 +0200 | <ncf> | what else could they be? |
2024-04-01 13:38:40 +0200 | <lyxia> | free type variables that are going to be foralled |
2024-04-01 13:39:07 +0200 | <ncf> | oh |
2024-04-01 13:39:08 +0200 | <lyxia> | you've done too much Idris |
2024-04-01 13:39:15 +0200 | <ncf> | agda |
2024-04-01 13:39:29 +0200 | <ncf> | yeah i don't have a clear mental model of ghc's type level distinction |
2024-04-01 13:39:40 +0200 | <ncf> | can i refer to id at the type level at all? |
2024-04-01 13:39:44 +0200 | <lyxia> | nope |
2024-04-01 13:40:02 +0200 | <ncf> | 🙃 |
2024-04-01 13:40:19 +0200 | ncf | closes vim. |
2024-04-01 13:41:20 +0200 | <lyxia> | come back in 10 years |
2024-04-01 13:41:32 +0200 | <ncf> | that's what they said 10 years ago! |
2024-04-01 13:41:35 +0200 | <ncf> | i think |
2024-04-01 13:42:00 +0200 | <lyxia> | functional programmers are optimists |
2024-04-01 13:43:21 +0200 | <Rembane> | Also incredibly constructive |
2024-04-01 13:43:44 +0200 | <Inst> | ehhh, JS comms I'm in are pretty functional |
2024-04-01 13:44:03 +0200 | <Inst> | hybrid FP is de rigeur these days, it seems |
2024-04-01 13:45:16 +0200 | lvdv | (~lvdv@203.7.118.37) |
2024-04-01 13:45:28 +0200 | <Inst> | even if you go to Py Discords, most people are familiar with functools |
2024-04-01 13:45:50 +0200 | <kuribas> | FP in Python is still very painful. |
2024-04-01 13:46:10 +0200 | <kuribas> | Like trying to do functional update on a dataclass. |
2024-04-01 13:47:10 +0200 | <Inst> | and people were crying about jamming OOP support into php for years, iirc |
2024-04-01 13:47:27 +0200 | <Inst> | but it eventually happened, I think FP is well-established and respected as a programming technique these days |
2024-04-01 13:49:16 +0200 | <kuribas> | hmm, why does Spock set 500 when a param is missing, that should be 400... |
2024-04-01 13:53:38 +0200 | ph88 | (~ph88@ip5b403f30.dynamic.kabel-deutschland.de) |
2024-04-01 13:54:47 +0200 | mei | (~mei@user/mei) |
2024-04-01 14:00:41 +0200 | magus3 | (~Thunderbi@189.6.35.139) |
2024-04-01 14:07:04 +0200 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) |
2024-04-01 14:20:18 +0200 | fererrorocher | (fererroroc@gateway/vpn/protonvpn/fererrorocher) |
2024-04-01 14:25:31 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-04-01 14:34:23 +0200 | kuribas | (~user@ptr-17d51en165pb8grzwxi.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
2024-04-01 14:38:53 +0200 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) |
2024-04-01 14:41:26 +0200 | lvdv | (~lvdv@203.7.118.37) (Remote host closed the connection) |
2024-04-01 14:41:49 +0200 | lvdv | (~lvdv@203.7.118.37) |
2024-04-01 14:50:34 +0200 | <lisbeths> | Pls consider showing your support for #lambdacalculus channel ty |
2024-04-01 14:56:33 +0200 | <ncf> | pls consider not advertising other channels in here every other week ty |
2024-04-01 14:59:08 +0200 | random-jellyfish | (~developer@2a02:2f04:11e:c600:fa5e:b43:6803:82cc) |
2024-04-01 14:59:08 +0200 | random-jellyfish | (~developer@2a02:2f04:11e:c600:fa5e:b43:6803:82cc) (Changing host) |
2024-04-01 14:59:08 +0200 | random-jellyfish | (~developer@user/random-jellyfish) |
2024-04-01 15:12:33 +0200 | kuribas | (~user@ptr-17d51en165pb8grzwxi.18120a2.ip6.access.telenet.be) |
2024-04-01 15:14:06 +0200 | ystael | (~ystael@user/ystael) |
2024-04-01 15:19:11 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-04-01 15:25:38 +0200 | magus3 | (~Thunderbi@189.6.35.139) (Quit: magus3) |
2024-04-01 15:31:03 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2024-04-01 16:03:51 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
2024-04-01 16:03:51 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Read error: Connection reset by peer) |
2024-04-01 16:03:51 +0200 | vnogueira | (~vnogueira@user/vnogueira) (Remote host closed the connection) |
2024-04-01 16:03:51 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2024-04-01 16:03:51 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2024-04-01 16:03:53 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Read error: Connection reset by peer) |
2024-04-01 16:04:35 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2024-04-01 16:05:13 +0200 | kuribas | (~user@ptr-17d51en165pb8grzwxi.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
2024-04-01 16:05:23 +0200 | vnogueira | (~vnogueira@user/vnogueira) |
2024-04-01 16:05:24 +0200 | califax | (~califax@user/califx) |
2024-04-01 16:07:06 +0200 | fererrorocher | (fererroroc@gateway/vpn/protonvpn/fererrorocher) (Quit: WeeChat 4.2.1) |
2024-04-01 16:08:22 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2024-04-01 16:08:44 +0200 | byorgey | (~byorgey@155.138.238.211) (Quit: leaving) |
2024-04-01 16:16:09 +0200 | vnogueira | (~vnogueira@user/vnogueira) (Remote host closed the connection) |
2024-04-01 16:16:09 +0200 | califax | (~califax@user/califx) (Read error: Connection reset by peer) |
2024-04-01 16:16:26 +0200 | vnogueira | (~vnogueira@user/vnogueira) |
2024-04-01 16:16:35 +0200 | califax | (~califax@user/califx) |
2024-04-01 16:18:50 +0200 | rvalue | (~rvalue@user/rvalue) (Read error: Connection reset by peer) |
2024-04-01 16:18:53 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2024-04-01 16:19:19 +0200 | rvalue | (~rvalue@user/rvalue) |
2024-04-01 16:19:22 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2024-04-01 16:19:22 +0200 | vnogueira | (~vnogueira@user/vnogueira) (Remote host closed the connection) |
2024-04-01 16:19:39 +0200 | califax | (~califax@user/califx) |
2024-04-01 16:19:40 +0200 | vnogueira | (~vnogueira@user/vnogueira) |
2024-04-01 16:27:03 +0200 | machinedgod | (~machinedg@d173-183-246-216.abhsia.telus.net) |
2024-04-01 16:27:25 +0200 | dostoyevsky2 | (~sck@user/dostoyevsky2) (Quit: leaving) |
2024-04-01 16:27:39 +0200 | dostoyevsky2 | (~sck@user/dostoyevsky2) |
2024-04-01 16:29:47 +0200 | remedan | (~remedan@ip-78-102-118-253.bb.vodafone.cz) (Ping timeout: 260 seconds) |
2024-04-01 16:30:12 +0200 | vnogueira | (~vnogueira@user/vnogueira) (Remote host closed the connection) |
2024-04-01 16:30:12 +0200 | califax | (~califax@user/califx) (Read error: Connection reset by peer) |
2024-04-01 16:30:28 +0200 | califax | (~califax@user/califx) |
2024-04-01 16:30:28 +0200 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 260 seconds) |
2024-04-01 16:30:37 +0200 | vnogueira | (~vnogueira@user/vnogueira) |
2024-04-01 16:34:31 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2024-04-01 16:37:31 +0200 | remedan | (~remedan@ip-78-102-118-253.bb.vodafone.cz) |
2024-04-01 16:47:22 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2024-04-01 16:47:39 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2024-04-01 16:52:16 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2024-04-01 16:52:32 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2024-04-01 16:57:41 +0200 | myme1 | (~myme@2a01:799:d5c:5f00:717f:9bbf:7ce4:8e5) (Ping timeout: 268 seconds) |
2024-04-01 16:58:36 +0200 | myme | (~myme@2a01:799:d5c:5f00:6072:e797:6705:d556) |
2024-04-01 17:00:13 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2024-04-01 17:01:32 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2024-04-01 17:05:32 +0200 | fererrorocher | (fererroroc@gateway/vpn/protonvpn/fererrorocher) |
2024-04-01 17:07:27 +0200 | mei | (~mei@user/mei) (Remote host closed the connection) |
2024-04-01 17:08:58 +0200 | mei | (~mei@user/mei) |
2024-04-01 17:09:45 +0200 | tri | (~tri@4133220a.cst.lightpath.net) |
2024-04-01 17:13:39 +0200 | <tri> | hi, I'm using Reader to inject an environment into function. In that environment, I need to maintain a set of data, which will be seeded initial data when app starts, and when the app runs, I also need to add new item into that data set. So I think i should use a State monad there. So a Reader holding a set, which will be updated, is this the place |
2024-04-01 17:13:39 +0200 | <tri> | to use RWST or something similar? I have never used that before so im asking |
2024-04-01 17:13:41 +0200 | random-jellyfish | (~developer@user/random-jellyfish) (Ping timeout: 240 seconds) |
2024-04-01 17:14:52 +0200 | <tri> | in other words, Im doing dependency injection via Reader monad, and one of the dependency is a set and will be modified during the app lifetime |
2024-04-01 17:17:09 +0200 | <probie> | Depending on the situation, the solution may be as simple as sticking an IORef in your reader |
2024-04-01 17:17:17 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2024-04-01 17:17:33 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2024-04-01 17:17:47 +0200 | <tri> | i haven't learned about IORef yet so idk what that is |
2024-04-01 17:18:27 +0200 | <tri> | probie: so do you think i could work with this using the Reader and state monad? |
2024-04-01 17:19:16 +0200 | lvdv | (~lvdv@203.7.118.37) (Ping timeout: 268 seconds) |
2024-04-01 17:21:45 +0200 | <ski> | an `IORef a' is a reference (or index, if you prefer) to a mutable cell (kept in state carried around by `IO') holding a value of type `a'. there's `newIORef' to allocate a(n initialized) cell, `readIORef' to access contents, `writeIORef' to change contents |
2024-04-01 17:22:43 +0200 | sadie-sorceress | (~sadie-sor@199.96.191.158) |
2024-04-01 17:23:02 +0200 | <ski> | if you use `ReaderT MyEnv IO', with `MyEnv' includig `IORef Foo', then you wouldn't need to use `StateT'. or you could use something like `ReaderT MyEnv (StateT MyState M)' |
2024-04-01 17:24:04 +0200 | <ski> | hm, i guess if you only need a piece to update, `StateT MyState M' may be enough |
2024-04-01 17:24:29 +0200 | <ski> | (`M' may be just `Identity', if you don't need any other effects, in which case you can skip it, and replace `StateT' by `State') |
2024-04-01 17:24:50 +0200 | <probie> | If your base monad is IO, you have to live in a world with the possibility of exceptions being thrown, and catching exceptions with StateT can give you surprising results. However, for simple things (and non IO things) reader + state is probably sufficient |
2024-04-01 17:27:35 +0200 | vnogueira_ | (~vnogueira@user/vnogueira) |
2024-04-01 17:28:28 +0200 | <tri> | hmm, so you guys are slowly migrated toward ReaderT MyEnv State then? |
2024-04-01 17:29:35 +0200 | <tri> | probie: wdym by base monad is IO? Could you explain that please? You mean the the monad in ReaderT? |
2024-04-01 17:31:02 +0200 | vnogueira | (~vnogueira@user/vnogueira) (Ping timeout: 260 seconds) |
2024-04-01 17:32:45 +0200 | <ski> | `ReaderT MyEnv (StateT MyState (ContT MyAnswer IO)) MyResult' is called a "monad transformer stack". the monad transformers here are `ReaderT MyEnv',`StateT MyState',`ContT MyAnswer'. the "base monad" of this stack is `IO' |
2024-04-01 17:33:27 +0200 | <ski> | (generally, the order of monad transformers matter. for some particular transformers, the order doesn't matter though) |
2024-04-01 17:33:40 +0200 | <ski> | @unmtl ReaderT MyEnv (StateT MyState (ContT MyAnswer IO)) MyResult |
2024-04-01 17:33:40 +0200 | <lambdabot> | MyEnv -> MyState -> (MyResult -> MyState -> IO MyAnswer) -> IO MyAnswer |
2024-04-01 17:33:42 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-04-01 17:33:47 +0200 | <ski> | @unmtl ReaderT MyEnv (StateT MyState IO) MyResult |
2024-04-01 17:33:48 +0200 | <lambdabot> | MyEnv -> MyState -> IO (MyResult, MyState) |
2024-04-01 17:33:57 +0200 | <ski> | @unmtl StateT MyState IO MyResult |
2024-04-01 17:33:57 +0200 | <lambdabot> | MyState -> IO (MyResult, MyState) |
2024-04-01 17:34:04 +0200 | <ski> | @unmtl ReaderT MyEnv IO MyResult |
2024-04-01 17:34:04 +0200 | <lambdabot> | MyEnv -> IO MyResult |
2024-04-01 17:36:18 +0200 | Ashkan | (~Ashkan@147.161.173.72) |
2024-04-01 17:36:53 +0200 | <ski> | `StateT MyState Identity' is the same as `State MyState' (which would then become the base monad, e.g. in the `ReaderT MyEnv (StateT MyState Identity) MyResult' example, amounting to `ReaderT MyEnv (State MyState) MyResult'), and ditto for `ReaderT',`WriterT',`ContT'. for hysterical raisins, `ExceptT MyException Identity' amounts to `Either MyException' |
2024-04-01 17:38:17 +0200 | <ski> | `RWST r w s m' amounts to `ReaderT r (WriterT w (StateT s m))' |
2024-04-01 17:39:14 +0200 | <Ashkan> | Hello everyone. What is the proper way of modelling a `data` (struct) whose fields are filled in in various stages and in increments e.g. first you get it initialised `newThinge x y :: IO Thingie` and then `fillRestOfTheFields :: IO Thingie -> IO Thingie`. The two operations can not be merged and it must happen at two different parts of the code. |
2024-04-01 17:39:14 +0200 | <Ashkan> | Do I just |
2024-04-01 17:39:33 +0200 | <Ashkan> | (Oops, hit the Enter mid sentence) |
2024-04-01 17:41:19 +0200 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
2024-04-01 17:41:33 +0200 | <probie> | Ashkan: Do you know at each stage what fields are filled? If so, the most boring solution is just to have different types for different stages |
2024-04-01 17:41:44 +0200 | <Ashkan> | I know I don't *have to* fill all the fields when creating an instance but not all combinations of missing fields are valid. only two stages: initialised (has fields `x` and `y` filled) and fully constructed (the rest of the fields has values as well) |
2024-04-01 17:42:05 +0200 | <ski> | one approach is making two different `data' declarations. another is to merge those into one, parameterizing the differences. a third is to set uninitialized elements to `undefined'/`error "whatever"' |
2024-04-01 17:42:42 +0200 | <ski> | perhaps you could factor out the first part, and including that in the second |
2024-04-01 17:42:44 +0200 | <Ashkan> | probie Yes I do. But thing is having an extra `data` just to fill the gap doesn't look good :-. but if there is no better way ... |
2024-04-01 17:43:22 +0200 | <ski> | (having an instantiation system, like in Mercury, would be ideal, for this kind of thing ..) |
2024-04-01 17:43:50 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-04-01 17:44:23 +0200 | <Ashkan> | To be exact, it is a texture for a game engine. The *texture* goes through various stages until fully constructed and ready to use. The stages are known, the fields needed/added at each stage are known, the initial and final stages and their fields are are well known. |
2024-04-01 17:44:58 +0200 | <Ashkan> | Its just that it can not happen all at once. There is a need to carry half-done textures around until they are fully constructed. |
2024-04-01 17:45:50 +0200 | <Ashkan> | I was thinking perhaps an indexed monad would help? Although I'm not even sure what that is, exactly ! |
2024-04-01 17:46:48 +0200 | <Ashkan> | Can I enforce/encode the fact that a certain subset of fields *must* be present at all stages, using the `!` notation to make them strict? does this make sense? |
2024-04-01 17:47:07 +0200 | tzh | (~tzh@c-73-164-206-160.hsd1.or.comcast.net) |
2024-04-01 17:49:56 +0200 | <ski> | indexed state monad is for keeping track of a state, whose type can change during the computation |
2024-04-01 17:50:26 +0200 | driib | (~driib@vmi931078.contaboserver.net) (Ping timeout: 255 seconds) |
2024-04-01 17:50:51 +0200 | <ski> | (there's also indexed continuation monad, for when the answer type can change. basically this means delimited/composable/sub- continuations, aka nqCPS) |
2024-04-01 17:51:30 +0200 | <ski> | Ashkan : that would ensure that if thw whole thing is not bottom, then those fields are also not bottom |
2024-04-01 17:52:10 +0200 | <Ashkan> | Okay, better than nothing :) |
2024-04-01 17:52:52 +0200 | <ski> | (so, you could make sure that your functions are strict in it, to make sure that if any of those fields are not defined, then your whole computation is not defined) |
2024-04-01 17:56:02 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) () |
2024-04-01 17:56:57 +0200 | Inst | (~Inst@120.244.192.126) (Quit: Leaving) |
2024-04-01 17:59:41 +0200 | Ashkan | (~Ashkan@147.161.173.72) (Quit: Client closed) |
2024-04-01 18:07:30 +0200 | Square2 | (~Square@user/square) (Ping timeout: 252 seconds) |
2024-04-01 18:08:38 +0200 | sadie-sorceress | (~sadie-sor@199.96.191.158) (Ping timeout: 250 seconds) |
2024-04-01 18:12:43 +0200 | euphores | (~SASL_euph@user/euphores) (Quit: Leaving.) |
2024-04-01 18:13:22 +0200 | igemnace | (~ian@user/igemnace) (Read error: Connection reset by peer) |
2024-04-01 18:15:34 +0200 | sadie-sorceress | (~sadie-sor@199.96.187.158) |
2024-04-01 18:16:01 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) |
2024-04-01 18:22:54 +0200 | euphores | (~SASL_euph@user/euphores) |
2024-04-01 18:27:43 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-04-01 18:29:25 +0200 | <sadie-sorceress> | https://paste.tomsmeding.com/SibArGds |
2024-04-01 18:29:26 +0200 | <sadie-sorceress> | i have this recursion scheme(?) i'm using to annotate fold over a structure and annotate the structure with intermediate results. is there a better way to achieve this using the 'stock' tools in recursion-schemes? |
2024-04-01 18:29:59 +0200 | sadie-sorceress1 | (~sadie-sor@199.96.187.158) |
2024-04-01 18:30:37 +0200 | <sadie-sorceress1> | (my actual use-case is annotating a syntax tree with inferred type constraints) |
2024-04-01 18:31:59 +0200 | <chiselfuse> | https://0x0.st/XzpX.txt |
2024-04-01 18:32:01 +0200 | <chiselfuse> | what do i do |
2024-04-01 18:32:11 +0200 | <chiselfuse> | it doesn't tell me what went wrong |
2024-04-01 18:32:19 +0200 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2024-04-01 18:34:03 +0200 | <geekopurr> | as it says, rerun stack with the `--verbose` flag |
2024-04-01 18:34:12 +0200 | sadie-sorceress | (~sadie-sor@199.96.187.158) (Ping timeout: 250 seconds) |
2024-04-01 18:34:16 +0200 | <geekopurr> | it'll output a lot of stuff from `configure` |
2024-04-01 18:34:45 +0200 | <geekopurr> | usually it means you're missing some required system library |
2024-04-01 18:34:49 +0200 | <chiselfuse> | is there an ENV i can tell to pass --verbose to stack with? |
2024-04-01 18:35:01 +0200 | <chiselfuse> | because it's being run by some build script that's being run by my package manaager |
2024-04-01 18:35:50 +0200 | <geekopurr> | huh. I'd report that on their bug tracker, then; they should be ensuring that can't happen |
2024-04-01 18:37:51 +0200 | <geekopurr> | (if your package manager is running stack behind your back then it's on the package maintainer to ensure that it works) |
2024-04-01 18:38:23 +0200 | <chiselfuse> | i added the flag to the pkgbuild script, i'll check now |
2024-04-01 18:40:26 +0200 | <chiselfuse> | 2024-04-01 18:38:47.884757: [error] /home/terry/.stack/programs/x86_64-linux/ghc-tinfo6-9.6.3.temp/ghc-9.6.3-x86_64-unknown-linux/configure: line 6576: FP_PROG_LD_BUILD_ID: command not found |
2024-04-01 18:41:31 +0200 | <chiselfuse> | 2024-04-01 18:38:50.068326: [error] configure: error: Failed to determine machine word size. Does your toolchain actually work? |
2024-04-01 18:41:34 +0200 | <chiselfuse> | meh |
2024-04-01 18:41:47 +0200 | <chiselfuse> | so vague, what _failed_ to tell it my word size? |
2024-04-01 18:41:49 +0200 | <geekopurr> | definitely report that as a bug in the package you're installing |
2024-04-01 18:42:09 +0200 | <chiselfuse> | yea but i need to fix it first |
2024-04-01 18:42:17 +0200 | <geekopurr> | it's trying to compile a program which tests the word size and prints it |
2024-04-01 18:42:40 +0200 | <geekopurr> | the details would be in a `config.log` file |
2024-04-01 18:42:53 +0200 | <chiselfuse> | where would that be located |
2024-04-01 18:43:09 +0200 | <geekopurr> | I don't know where stack puts it when installing a bindist, sorry |
2024-04-01 18:44:27 +0200 | <chiselfuse> | https://0x0.st/XzpG.txt |
2024-04-01 18:45:25 +0200 | <chiselfuse> | looks like it `ld` is failing there |
2024-04-01 18:46:21 +0200 | <chiselfuse> | /usr/bin/ld.gold: pack-relative-relocs: unknown -z option |
2024-04-01 18:47:23 +0200 | todi | (~todi@p57803331.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
2024-04-01 18:54:54 +0200 | todi | (~todi@p57803331.dip0.t-ipconnect.de) |
2024-04-01 18:57:43 +0200 | sadie-sorceress1 | (~sadie-sor@199.96.187.158) (Quit: Client closed) |
2024-04-01 18:57:54 +0200 | sadie-sorceress | (~sadie-sor@199.96.187.158) |
2024-04-01 18:58:48 +0200 | <geekopurr> | you definitely need to report that upstream (pkgbuild? is that gentoo?), you probably can't fix it yourself |
2024-04-01 18:59:35 +0200 | econo_ | (uid147250@id-147250.tinside.irccloud.com) |
2024-04-01 19:00:24 +0200 | <chiselfuse> | why are you discouraging me so much |
2024-04-01 19:01:06 +0200 | <chiselfuse> | hmm why the heck is stack building ghc in its own directory |
2024-04-01 19:01:15 +0200 | <geekopurr> | because these indicate a mistake made by the provider of the package; they should not be your problem at all |
2024-04-01 19:01:16 +0200 | <chiselfuse> | i already have it installed |
2024-04-01 19:01:27 +0200 | <geekopurr> | and stack is doing that because that's how it works |
2024-04-01 19:01:46 +0200 | <geekopurr> | it maintains its own ghcs and its own package store |
2024-04-01 19:02:40 +0200 | <chiselfuse> | geekopurr: from what i'm guessing, invoking stack to build the package i want causes it to try to build ghc and it fails because it's passing `-v` to `gold.ld` which says it's an unrecognized option and quits.. |
2024-04-01 19:03:15 +0200 | <geekopurr> | it's saying "unknown -z option"; -z is for special options to ld (and it's not saying which one) |
2024-04-01 19:03:30 +0200 | <int-e> | meh https://github.com/commercialhaskell/stack/issues/6525#issuecomment-2002643812 |
2024-04-01 19:04:35 +0200 | <geekopurr> | ah, it did say, it just put it out in front. "-Wl,-z,pack-relative-relocs" |
2024-04-01 19:04:52 +0200 | <geekopurr> | so your ld.gold doesn't understand that option |
2024-04-01 19:05:39 +0200 | <int-e> | chiselfuse: anyway that issue sounds very much like your problem |
2024-04-01 19:05:57 +0200 | <int-e> | and people are already negotiating whose bug this is |
2024-04-01 19:06:31 +0200 | <geekopurr> | and I'm not so much discouraging you as saying that you were given a broken package and left with a bunch of shattered pieces to pick up |
2024-04-01 19:06:49 +0200 | <chiselfuse> | int-e: did you extrapolate what it is, i'm still puzzling around in that thread |
2024-04-01 19:09:37 +0200 | <chiselfuse> | https://github.com/commercialhaskell/stack/issues/6525#issuecomment-2004398828 |
2024-04-01 19:09:37 +0200 | <chiselfuse> | lmao |
2024-04-01 19:11:16 +0200 | <int-e> | chiselfuse: Well the connection is that you're (most likely) using Arch and this ticket explains where the 'pack-relative-relocs' flag comes from (I checked and ghc's configure script does not contain that string. But if it's put into LDFLAGS that will of course be picked up by `configure`.) |
2024-04-01 19:11:28 +0200 | sadie-sorceress | (~sadie-sor@199.96.187.158) (Ping timeout: 250 seconds) |
2024-04-01 19:12:48 +0200 | <chiselfuse> | int-e: that env isn't set on my system |
2024-04-01 19:12:51 +0200 | <int-e> | But it's `configure`'s choice to use gold, so there's some shared responsibility. |
2024-04-01 19:13:37 +0200 | <geekopurr> | no, the pkgbuild is setting it |
2024-04-01 19:13:53 +0200 | <int-e> | chiselfuse: How do you know? As I read it it's set by `makepkg`. |
2024-04-01 19:14:28 +0200 | <int-e> | (I'm not sure whether it's the PKGBUILD or some global config.) |
2024-04-01 19:14:36 +0200 | <int-e> | (I don't really care either, tbh) |
2024-04-01 19:14:54 +0200 | <chiselfuse> | int-e: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=hascard |
2024-04-01 19:15:04 +0200 | <chiselfuse> | this is the pkgbuild i'm using |
2024-04-01 19:15:22 +0200 | <yushyin> | https://gitlab.archlinux.org/heftig/rfcs/-/blob/pack-relative-relocs/rfcs/0023-pack-relative-reloc… it is this rfc |
2024-04-01 19:15:27 +0200 | <chiselfuse> | i don't see them being set. do you mean that it's hardcoded to be set by `makepkg` itself? |
2024-04-01 19:15:28 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) () |
2024-04-01 19:15:49 +0200 | <yushyin> | https://gitlab.archlinux.org/archlinux/packaging/packages/pacman/-/merge_requests/6 implemented by this |
2024-04-01 19:16:37 +0200 | <int-e> | yushyin: you're faster than me :) |
2024-04-01 19:16:47 +0200 | <yushyin> | ;) |
2024-04-01 19:17:08 +0200 | <chiselfuse> | LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now \ -Wl,-z,pack-relative-relocs" |
2024-04-01 19:17:12 +0200 | <chiselfuse> | found this in my conf, which one is the one hurting again? |
2024-04-01 19:17:18 +0200 | <chiselfuse> | makepkg.conf |
2024-04-01 19:17:33 +0200 | <int-e> | the -z,pack-relative-relocs one is not understood by gold |
2024-04-01 19:17:56 +0200 | sadie-sorceress | (~sadie-sor@199.96.191.158) |
2024-04-01 19:19:46 +0200 | sawilagar | (~sawilagar@user/sawilagar) |
2024-04-01 19:20:29 +0200 | <chiselfuse> | i think package maintainers that build PKGBUILDs that use stack or ld.gold should then be instructed to override LDFLAGS |
2024-04-01 19:20:37 +0200 | <chiselfuse> | though i wonder if they can at all |
2024-04-01 19:25:02 +0200 | shapr | (~user@c-24-218-186-89.hsd1.ma.comcast.net) |
2024-04-01 19:27:01 +0200 | <yushyin> | or force another linker |
2024-04-01 19:28:30 +0200 | <chiselfuse> | configure:3918: gcc -V >&5 |
2024-04-01 19:28:30 +0200 | <chiselfuse> | gcc: error: unrecognized command-line option '-V' |
2024-04-01 19:28:32 +0200 | <chiselfuse> | fixed that now this lol ^ |
2024-04-01 19:29:39 +0200 | <yushyin> | funny, stack issue tracker says not a stack bug. pacman issue tracker says not a pacman bug. lovely <3 |
2024-04-01 19:32:38 +0200 | <chiselfuse> | and here i am, just wanted to try this https://github.com/Yvee1/hascard thing out |
2024-04-01 19:32:43 +0200 | <geekopurr> | chiselfuse, that should be a red herring, it tries several ways to get the compiler version and -V is actually intended for other compilers. it should retry with --version |
2024-04-01 19:33:32 +0200 | <geekopurr> | (ghc also supports various commercial C compilers, many of which don't like --version) |
2024-04-01 19:36:57 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-04-01 19:41:17 +0200 | <chiselfuse> | i have to rerun |
2024-04-01 19:41:35 +0200 | <chiselfuse> | TIL i learned that makepkg isn't just a shell script runner |
2024-04-01 19:43:35 +0200 | <chiselfuse> | https://0x0.st/XzO2.txt |
2024-04-01 19:43:40 +0200 | <chiselfuse> | this thing doesn't like anything |
2024-04-01 19:44:14 +0200 | Guest|30 | (~Guest|30@172-251-233-141.res.spectrum.com) |
2024-04-01 19:48:48 +0200 | <int-e> | Is that related? I.e. does linking against libraries created with pack-relative-relocs require special support? |
2024-04-01 19:50:12 +0200 | <Guest|30> | I have installed ghcup on Manjaro Linux. How should I configure my $PATH to run ghc, ghci and cabal (which have been installed in ~/.ghcup/bin)? Is ghcup supposed to add the bin directory to $PATH? Thanks. |
2024-04-01 19:53:10 +0200 | <geekopurr> | ghcup should have told you to `source ~/.ghcup/env` in your shell dotfiles |
2024-04-01 19:54:15 +0200 | sadie-sorceress | (~sadie-sor@199.96.191.158) (Quit: Client closed) |
2024-04-01 19:55:47 +0200 | Guest|30 | (~Guest|30@172-251-233-141.res.spectrum.com) (Ping timeout: 264 seconds) |
2024-04-01 20:12:47 +0200 | stef204 | (~stef204@user/stef204) |
2024-04-01 20:17:32 +0200 | Guest|30 | (~Guest|30@172-251-233-141.res.spectrum.com) |
2024-04-01 20:18:22 +0200 | <Guest|30> | Thanks, @geekopurr! |
2024-04-01 20:20:16 +0200 | sawilagar | (~sawilagar@user/sawilagar) (Ping timeout: 255 seconds) |
2024-04-01 20:20:39 +0200 | stef204 | (~stef204@user/stef204) (Quit: WeeChat 4.2.1) |
2024-04-01 20:20:53 +0200 | destituion | (~destituio@2a02:2121:655:c95b:c9ef:1cc8:963c:45) (Ping timeout: 268 seconds) |
2024-04-01 20:21:00 +0200 | destituion | (~destituio@2001:4644:c37:0:6086:64f4:a213:b80d) |
2024-04-01 20:22:06 +0200 | <geekopurr> | ghcup doesn't do that for you because no matter how it adds it, it's wrong for someone |
2024-04-01 20:22:37 +0200 | <geekopurr> | (in fact, it's always wrong for my kinda horrific dotfiles and I add it to my `PATH` manually) |
2024-04-01 20:33:11 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2024-04-01 20:34:09 +0200 | <chiselfuse> | int-e: good guess but idk. i've given up. RIP "hascord", looked like such a pretty tool in the github page |
2024-04-01 20:34:17 +0200 | <chiselfuse> | hascard* |
2024-04-01 20:37:35 +0200 | <shapr> | Is that someodd's hypercard clone? |
2024-04-01 20:38:11 +0200 | <Guest|30> | @geekopurr: I suspected the problem facing ghcup if it were to update the $PATH. However, I didn't see any mention of the need to update the .bashrc/.zshrc in the documentation. If it's there, maybe it needs to be more prominently displayed. |
2024-04-01 20:38:11 +0200 | <lambdabot> | Unknown command, try @list |
2024-04-01 20:38:58 +0200 | <Guest|30> | geekopurr: I suspected the problem facing ghcup if it were to update the $PATH. However, I didn't see any mention of the need to update the .bashrc/.zshrc in the documentation. If it's there, maybe it needs to be more prominently displayed. |
2024-04-01 20:41:14 +0200 | <geekopurr> | I think the docs expect you to be reading ghcup's output when you install it. it's in the advanced installations (for manual installs) page https://www.haskell.org/ghcup/install/#manual-installation |
2024-04-01 20:41:42 +0200 | <Guest|30> | !Note: Guest|30 is hgolden on a different computer. I need to transfer my credentials to identify myself. |
2024-04-01 20:42:49 +0200 | <geekopurr> | (maerwald, you may want to be following this) |
2024-04-01 20:42:54 +0200 | tri | (~tri@4133220a.cst.lightpath.net) (Ping timeout: 250 seconds) |
2024-04-01 20:45:24 +0200 | <Guest|30> | I missed that advice in the noise of the installation. Perhaps it could be separated from the other things to make it clearer to a new user of ghcup. |
2024-04-01 20:46:26 +0200 | <geekopurr> | I'd file that on ghcup's issue tracker https://github.com/haskell/ghcup-hs/issues |
2024-04-01 20:47:42 +0200 | <Guest|30> | Thanks, geekopurr. I will file it on the issue tracker. |
2024-04-01 20:53:04 +0200 | ezzieyguywuf | (~Unknown@user/ezzieyguywuf) (Remote host closed the connection) |
2024-04-01 21:01:16 +0200 | erisco | (~erisco@d24-141-66-165.home.cgocable.net) (Ping timeout: 268 seconds) |
2024-04-01 21:02:42 +0200 | erisco | (~erisco@d24-141-66-165.home.cgocable.net) |
2024-04-01 21:10:35 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-04-01 21:12:25 +0200 | <shapr> | Is there some way to generate valid base32 strings directly with QuickCheck? |
2024-04-01 21:13:05 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
2024-04-01 21:13:13 +0200 | mei | (~mei@user/mei) (Remote host closed the connection) |
2024-04-01 21:13:57 +0200 | Guest|30 | (~Guest|30@172-251-233-141.res.spectrum.com) (Ping timeout: 252 seconds) |
2024-04-01 21:14:03 +0200 | mei | (~mei@user/mei) |
2024-04-01 21:17:57 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-04-01 21:20:06 +0200 | euphores | (~SASL_euph@user/euphores) (Quit: Leaving.) |
2024-04-01 21:20:23 +0200 | <sm> | chiselfuse sorry you met such problems. Just curious, were you trying to install hascard from AUR or purely from source as in https://github.com/Yvee1/hascard#install-from-source |
2024-04-01 21:24:52 +0200 | <haskellbridge> | <sm> Guest81 look at ghcitui too, it's nifty |
2024-04-01 21:26:25 +0200 | <sm> | ack.. don't edit old comments sm |
2024-04-01 21:26:43 +0200 | <sm> | ghcitui is an obscure name, I wanted to spell it right |
2024-04-01 21:27:24 +0200 | target_i | (~target_i@user/target-i/x-6023099) |
2024-04-01 21:28:36 +0200 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) |
2024-04-01 21:29:39 +0200 | euphores | (~SASL_euph@user/euphores) |
2024-04-01 21:40:17 +0200 | sadie-sorceress | (~sadie-sor@199.96.187.158) |
2024-04-01 21:40:57 +0200 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
2024-04-01 21:41:51 +0200 | bilegeek | (~bilegeek@2600:1008:b00b:df2e:796e:3fed:8f1f:d5c7) |
2024-04-01 21:46:43 +0200 | bilegeek | (~bilegeek@2600:1008:b00b:df2e:796e:3fed:8f1f:d5c7) (Client Quit) |
2024-04-01 21:59:33 +0200 | anon1123 | (~anon1123@2a02:ab88:282:b00:da3a:ddff:fe3a:947c) (Ping timeout: 268 seconds) |
2024-04-01 22:02:00 +0200 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection) |
2024-04-01 22:02:45 +0200 | <chiselfuse> | sm: i tried both, after fixing makepkg it also is now stuck at the point where ld.gold doesn't want to link against any *.so files i have as in my last paste i posted |
2024-04-01 22:02:48 +0200 | causal | (~eric@50.35.88.207) |
2024-04-01 22:04:08 +0200 | <haskellbridge> | <sm> and when you tried building from source, were you using ghcup-installed stack & ghc (not arch's ghc) |
2024-04-01 22:07:41 +0200 | red-snail | (~snail@static.151.210.203.116.clients.your-server.de) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-04-01 22:08:08 +0200 | red-snail | (~snail@static.151.210.203.116.clients.your-server.de) |
2024-04-01 22:08:22 +0200 | <chiselfuse> | sm: i'm not sure how to check i just cloned the thing and ran `stack build`. can you tell me how to check? |
2024-04-01 22:08:43 +0200 | <chiselfuse> | i do have ghcup and other tools installed from arch's repos |
2024-04-01 22:08:52 +0200 | <chiselfuse> | oh about stack.. |
2024-04-01 22:09:26 +0200 | <chiselfuse> | yea i think it stack from arch's repos |
2024-04-01 22:09:33 +0200 | <chiselfuse> | not installed with ghcup |
2024-04-01 22:12:29 +0200 | <haskellbridge> | <sm> if it's running ghc from ~/.ghcup/..., it's ghcup-installed |
2024-04-01 22:13:47 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) |
2024-04-01 22:16:04 +0200 | <haskellbridge> | <sm> I can't say if it will solve. your issue but the most likely to just work is latest ghcup and stack + ghc (corresponding to hascard's stack.yaml) installed by that |
2024-04-01 22:17:17 +0200 | ircbrowse_tom | (~ircbrowse@2a01:4f8:1c1c:9319::1) |
2024-04-01 22:17:21 +0200 | Server | +Cnt |
2024-04-01 22:17:43 +0200 | <chiselfuse> | i don't think it matters. the linker won't link to stuff compiled here for some reason |
2024-04-01 22:19:55 +0200 | sawilagar | (~sawilagar@user/sawilagar) |
2024-04-01 22:20:24 +0200 | lvdv | (~lvdv@203.7.118.37) |
2024-04-01 22:20:28 +0200 | tomsmeding | (~tomsmedin@static.21.109.88.23.clients.your-server.de) (Quit: ZNC 1.9.0 - https://znc.in) |
2024-04-01 22:20:37 +0200 | yahb2 | (~yahb2@static.56.27.47.78.clients.your-server.de) (Remote host closed the connection) |
2024-04-01 22:20:37 +0200 | haskellbridge | <sm> wonders if this is a recent change on arch |
2024-04-01 22:21:00 +0200 | yahb2 | (~yahb2@static.56.27.47.78.clients.your-server.de) |
2024-04-01 22:21:00 +0200 | ChanServ | +v yahb2 |
2024-04-01 22:21:21 +0200 | tomsmeding | (~tomsmedin@2a01:4f8:c0c:5e5e::2) |
2024-04-01 22:24:13 +0200 | <chiselfuse> | i'd dig down with you but i'm extremely tired rn |
2024-04-01 22:24:29 +0200 | <chiselfuse> | why can i not just pull a prebuilt binary from that repo, dear God |
2024-04-01 22:25:47 +0200 | <chiselfuse> | oh looks like there is one |
2024-04-01 22:25:57 +0200 | <chiselfuse> | heck yea |
2024-04-01 22:26:14 +0200 | red-snail | (~snail@static.151.210.203.116.clients.your-server.de) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-04-01 22:26:52 +0200 | red-snail | (~snail@static.151.210.203.116.clients.your-server.de) |
2024-04-01 22:27:23 +0200 | <chiselfuse> | i'll complain to arch people about stack l8r ig |
2024-04-01 22:32:01 +0200 | <haskellbridge> | <sm> 👍🏻 it looked like a deep rabbit hole and people are on it, might need a little more time to clarify |
2024-04-01 22:33:54 +0200 | <cheater> | ah, stack. the gift that keeps on giving |
2024-04-01 22:36:51 +0200 | sadie-sorceress | (~sadie-sor@199.96.187.158) (Ping timeout: 250 seconds) |
2024-04-01 22:39:38 +0200 | Inst | (~Inst@120.244.192.126) |
2024-04-01 22:39:43 +0200 | <Inst> | hmmm |
2024-04-01 22:40:10 +0200 | <Inst> | am i mistaken when I say I don't see a lot of html templates on hackage, or in fact, I don't see any at all? |
2024-04-01 22:40:52 +0200 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
2024-04-01 22:40:54 +0200 | <Inst> | just wondering here, is it valid to create html datatypes |
2024-04-01 22:41:08 +0200 | <Inst> | typeclassed into toHTML |
2024-04-01 22:41:47 +0200 | gmg | (~user@user/gehmehgeh) |
2024-04-01 22:41:49 +0200 | <Inst> | and use record syntax to manipulate these datatypes, i.e, set them up such that you now have widgets on Blaze or Lucid |
2024-04-01 22:42:02 +0200 | <Inst> | that are actualized via toHTML? |
2024-04-01 22:45:40 +0200 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
2024-04-01 22:46:25 +0200 | gmg | (~user@user/gehmehgeh) |
2024-04-01 22:49:24 +0200 | <Inst> | bleh |
2024-04-01 22:49:25 +0200 | <Inst> | https://haskell-miso.org |
2024-04-01 22:53:32 +0200 | glpup | glguy |
2024-04-01 22:58:23 +0200 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
2024-04-01 22:59:10 +0200 | gmg | (~user@user/gehmehgeh) |
2024-04-01 23:03:24 +0200 | lvdv | (~lvdv@203.7.118.37) (Ping timeout: 260 seconds) |
2024-04-01 23:24:08 +0200 | target_i | (~target_i@user/target-i/x-6023099) (Quit: leaving) |
2024-04-01 23:24:32 +0200 | yushyin | yushyinyaa |
2024-04-01 23:26:56 +0200 | anon1123 | (~anon1123@catv-176-63-0-119.catv.fixed.vodafone.hu) |
2024-04-01 23:27:27 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) () |
2024-04-01 23:29:14 +0200 | euphores | (~SASL_euph@user/euphores) (Ping timeout: 252 seconds) |
2024-04-01 23:31:24 +0200 | <dmj`> | Inst: yea miso copies Elm's rose tree approach (1 list of attrs, 1 list of children), and there is a ToHtml for it |
2024-04-01 23:31:47 +0200 | <Inst> | what i'm more looking for is a widget lib |
2024-04-01 23:33:00 +0200 | yushyinyaa | yushyin |
2024-04-01 23:33:46 +0200 | mei | (~mei@user/mei) (Remote host closed the connection) |
2024-04-01 23:35:19 +0200 | <Inst> | blaze -> base framework -> widgets and tepmaltes |
2024-04-01 23:35:59 +0200 | <dmj`> | Inst: I'm not sure something like that exists w/o going full blown ghcjs or ghc w/ js backend. If you don't want to go client side, it would be possible to build what you're looking for with htmx, I'm considering trying this |
2024-04-01 23:36:22 +0200 | mei | (~mei@user/mei) |
2024-04-01 23:38:58 +0200 | ph88 | (~ph88@ip5b403f30.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
2024-04-01 23:40:56 +0200 | gorignak | (~gorignak@user/gorignak) |
2024-04-01 23:41:56 +0200 | <Inst> | i mean <script/> and <style/> |
2024-04-01 23:42:03 +0200 | <Inst> | even though the web devs I've met told me that's smelly |
2024-04-01 23:46:19 +0200 | pluto | (~pluto@86.121.29.48) |
2024-04-01 23:47:31 +0200 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |
2024-04-01 23:48:19 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-04-01 23:48:27 +0200 | <dmj`> | Everything is smelly. Separate CSS and JS would be just easy to produce as <script/> and <style/> in a single page. Could be configurable |
2024-04-01 23:53:33 +0200 | <dmj`> | @package hyperbole |
2024-04-01 23:53:33 +0200 | <lambdabot> | https://hackage.haskell.org/package/hyperbole |
2024-04-01 23:53:42 +0200 | <dmj`> | Inst: ^ might check that out |
2024-04-01 23:54:18 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) |
2024-04-01 23:55:30 +0200 | pluto | (~pluto@86.121.29.48) (Quit: Leaving) |
2024-04-01 23:59:38 +0200 | Sgeo | (~Sgeo@user/sgeo) |