Logs: liberachat/#haskell
| 2026-03-05 14:38:41 | <ski> | > run (push 4 . push 7 . dup . rot . dup . rot_ . minus . rot_ . plus . times) |
| 2026-03-05 14:38:42 | <lambdabot> | 33 |
| 2026-03-05 14:39:21 | × | Square2 quits (~Square@user/square) (Remote host closed the connection) |
| 2026-03-05 14:39:52 | <ski> | (i threw in `drop',`nip',`dup',`over',`swap',`rot',`rot_' in addition to (`run',`push',`apply' and) `plus',`minus',`times' .. see e.g. <https://deepwiki.com/zserge/lc3-forth/3.1-stack-manipulation> for the stack effectt of the former) |
| 2026-03-05 14:40:25 | → | Square2 joins (~Square@user/square) |
| 2026-03-05 14:40:52 | × | Square2 quits (~Square@user/square) (Remote host closed the connection) |
| 2026-03-05 14:41:17 | → | Square2 joins (~Square@user/square) |
| 2026-03-05 14:42:58 | × | madresch quits (~Thunderbi@user/madresch) (Ping timeout: 248 seconds) |
| 2026-03-05 14:48:16 | × | philopsos1 quits (~caecilius@user/philopsos) (Remote host closed the connection) |
| 2026-03-05 14:48:26 | → | philopsos1 joins (~caecilius@user/philopsos) |
| 2026-03-05 14:52:30 | <Leary> | ski: Like so? `run f = f id; push x = \f -> f x; apply f = \g x -> f (g x)` |
| 2026-03-05 14:56:05 | × | philopsos1 quits (~caecilius@user/philopsos) (Remote host closed the connection) |
| 2026-03-05 15:00:06 | <ski> | yes (although i used no lambdas. i don't really see a point, here, apart maybe from `\x -> x' instead of `id') |
| 2026-03-05 15:01:14 | <ski> | you see how e.g. `plus',`minus' or `dup',`rot' were defined ? |
| 2026-03-05 15:01:19 | → | philopsos1 joins (~caecilius@user/philopsos) |
| 2026-03-05 15:01:31 | → | vanishingideal joins (~vanishing@user/vanishingideal) |
| 2026-03-05 15:03:34 | <Leary> | Well, it's just a way to indicate where the "arguments" end and the "result" begins (that last `f` should have been on the RHS). If your stack type had it's implementation details hidden by a newtype, that's probably where the constructor would be. |
| 2026-03-05 15:05:33 | <ski> | "that last `f` should have been on the RHS" -- ah, that's what was confusing me |
| 2026-03-05 15:09:04 | <ski> | but yea .. it's not too clear to me how to hide it behind a `newtype' in a meaningful (nontrivial) way |
| 2026-03-05 15:10:03 | <ski> | (type of e.g. `dup' should clarify this) |
| 2026-03-05 15:11:19 | <Leary> | Yeah, that was more just to get the idea of the divide across. |
| 2026-03-05 15:13:05 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 245 seconds) |
| 2026-03-05 15:13:10 | <ski> | it's a quite neat idea for how to do a heterogenous concatenative stack, without stack constructors |
| 2026-03-05 15:13:45 | × | ouilemur quits (~jgmerritt@user/ouilemur) (Quit: WeeChat 4.8.1) |
| 2026-03-05 15:14:48 | × | fp quits (~Thunderbi@2001:708:20:1406::10c5) (Ping timeout: 268 seconds) |
| 2026-03-05 15:23:46 | × | philopsos1 quits (~caecilius@user/philopsos) (Remote host closed the connection) |
| 2026-03-05 15:23:53 | → | philopsos1 joins (~caecilius@user/philopsos) |
| 2026-03-05 15:24:51 | × | gabiruh quits (~gabiruh@191.252.222.55) (Read error: Connection reset by peer) |
| 2026-03-05 15:24:54 | → | gabiruh_ joins (~gabiruh@191.252.222.55) |
| 2026-03-05 15:26:37 | × | vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 244 seconds) |
| 2026-03-05 15:27:37 | → | tremon joins (~tremon@83.80.159.219) |
| 2026-03-05 15:31:40 | → | ouilemur joins (~jgmerritt@user/ouilemur) |
| 2026-03-05 15:33:47 | × | gabiruh_ quits (~gabiruh@191.252.222.55) (Quit: ZNC 1.7.5 - https://znc.in) |
| 2026-03-05 15:34:03 | → | gabiruh joins (~gabiruh@vps19177.publiccloud.com.br) |
| 2026-03-05 15:39:07 | → | __monty__ joins (~toonn@user/toonn) |
| 2026-03-05 15:52:46 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 2026-03-05 15:52:57 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 2026-03-05 15:56:49 | → | vanishingideal joins (~vanishing@user/vanishingideal) |
| 2026-03-05 16:01:41 | × | philopsos1 quits (~caecilius@user/philopsos) (Remote host closed the connection) |
| 2026-03-05 16:01:49 | → | philopso11 joins (~caecilius@107.175.39.130) |
| 2026-03-05 16:03:01 | × | philopso11 quits (~caecilius@107.175.39.130) (Remote host closed the connection) |
| 2026-03-05 16:04:57 | × | n0den1te quits (~n0den1te@user/n0den1te) (Quit: leaving) |
| 2026-03-05 16:05:38 | → | kadobanana joins (~mud@user/kadoban) |
| 2026-03-05 16:07:17 | → | philopsos1 joins (~caecilius@user/philopsos) |
| 2026-03-05 16:12:48 | × | loungerry_ quits (~loungerry@user/loungerry-:45058) (Quit: left) |
| 2026-03-05 16:12:59 | → | loungerry_ joins (~loungerry@150.241.86.78) |
| 2026-03-05 16:13:55 | → | fp joins (~Thunderbi@2001-14ba-6e24-3000--198.rev.dnainternet.fi) |
| 2026-03-05 16:15:26 | → | jmcantrell_ joins (~weechat@user/jmcantrell) |
| 2026-03-05 16:17:35 | × | fp quits (~Thunderbi@2001-14ba-6e24-3000--198.rev.dnainternet.fi) (Remote host closed the connection) |
| 2026-03-05 16:23:55 | × | Googulator13 quits (~Googulato@2a01-036d-0106-0119-2546-5dd3-b1b8-39cd.pool6.digikabel.hu) (Quit: Client closed) |
| 2026-03-05 16:24:29 | → | Googulator13 joins (~Googulato@2a01-036d-0106-0119-2546-5dd3-b1b8-39cd.pool6.digikabel.hu) |
| 2026-03-05 16:26:34 | × | philopsos1 quits (~caecilius@user/philopsos) (Ping timeout: 244 seconds) |
| 2026-03-05 16:27:17 | → | philopsos1 joins (~caecilius@user/philopsos) |
| 2026-03-05 16:33:28 | × | durstloescher quits (~textual@2a02:8109:1b01:2500:2cec:18b6:70c1:9f6f) (Quit: My Mac has gone to sleep. ZZZzzz…) |
| 2026-03-05 16:34:18 | → | durstloescher joins (~textual@2a02:8109:1b01:2500:2cec:18b6:70c1:9f6f) |
| 2026-03-05 16:34:21 | <Leary> | ski: Updated: https://gist.github.com/LSLeary/70a398c9814156ce3e698d6df52dd9cf |
| 2026-03-05 16:36:02 | × | Digit quits (~user@user/digit) (Ping timeout: 248 seconds) |
| 2026-03-05 16:36:25 | → | Digitteknohippie joins (~user@user/digit) |
| 2026-03-05 16:41:25 | × | philopsos1 quits (~caecilius@user/philopsos) (Remote host closed the connection) |
| 2026-03-05 16:41:54 | → | tromp joins (~textual@2001:1c00:3487:1b00:2466:6319:20fa:c233) |
| 2026-03-05 16:42:50 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 2026-03-05 16:44:45 | × | myme quits (~myme@2a01:799:d5e:5f00:3864:a0fc:2539:2c1f) (Ping timeout: 245 seconds) |
| 2026-03-05 16:46:03 | → | myme joins (~myme@2a01:799:d5e:5f00:332d:919:8ee8:93eb) |
| 2026-03-05 16:47:03 | → | philopsos1 joins (~caecilius@user/philopsos) |
| 2026-03-05 16:47:13 | × | jmcantrell_ quits (~weechat@user/jmcantrell) (Ping timeout: 244 seconds) |
| 2026-03-05 16:48:49 | × | durstloescher quits (~textual@2a02:8109:1b01:2500:2cec:18b6:70c1:9f6f) (Quit: My Mac has gone to sleep. ZZZzzz…) |
| 2026-03-05 16:49:28 | × | Digitteknohippie quits (~user@user/digit) (Ping timeout: 256 seconds) |
| 2026-03-05 16:54:27 | × | philopsos1 quits (~caecilius@user/philopsos) (Ping timeout: 244 seconds) |
| 2026-03-05 16:56:20 | × | vanishingideal quits (~vanishing@user/vanishingideal) (Read error: Connection reset by peer) |
| 2026-03-05 16:58:36 | → | euphores joins (~SASL_euph@user/euphores) |
| 2026-03-05 16:59:10 | → | jmcantrell_ joins (~weechat@user/jmcantrell) |
| 2026-03-05 17:04:35 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 2026-03-05 17:05:33 | × | jmcantrell_ quits (~weechat@user/jmcantrell) (Ping timeout: 255 seconds) |
| 2026-03-05 17:14:55 | × | ezzieyguywuf quits (~Unknown@user/ezzieyguywuf) (Quit: Lost terminal) |
| 2026-03-05 17:19:08 | → | Digit joins (~user@user/digit) |
| 2026-03-05 17:26:44 | Digit | is now known as digitteknohippie |
| 2026-03-05 17:27:04 | digitteknohippie | is now known as Digit |
| 2026-03-05 17:28:37 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 2026-03-05 17:43:39 | <ski> | Leary : yea, type families would work |
| 2026-03-05 17:43:40 | × | [exa] quits (~exa@user/exa/x-3587197) (Quit: WeeChat 3.8) |
| 2026-03-05 17:44:14 | <ski> | .. oh, you did composition (`.') backwards |
| 2026-03-05 17:44:36 | <ski> | ah, because of `Stack xs ys', rather than `Stack ys xs' |
| 2026-03-05 17:45:10 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2026-03-05 17:46:15 | ski | would call the argument to `run', `w' (for "word"), and the `f' arguments to `push',`dup',`rot',`apply', `k' ("continuation") |
| 2026-03-05 17:46:49 | <ski> | rot k z y x = k x z y |
| 2026-03-05 17:46:51 | <ski> | minus k y x = k (x - y) |
| 2026-03-05 17:47:15 | <ski> | which would correspond to the stack effects |
| 2026-03-05 17:47:57 | <ski> | ( x y z -- y z x ) |
| 2026-03-05 17:48:04 | <ski> | ( x y -- x-y ) |
| 2026-03-05 17:48:11 | × | tromp quits (~textual@2001:1c00:3487:1b00:2466:6319:20fa:c233) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2026-03-05 17:50:38 | <ski> | any particular reason for `forall s ->' ? |
| 2026-03-05 17:54:27 | → | tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
| 2026-03-05 17:54:55 | × | Square2 quits (~Square@user/square) (Ping timeout: 264 seconds) |
| 2026-03-05 17:57:21 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 2026-03-05 18:02:04 | → | peterbecich joins (~Thunderbi@71.84.33.135) |
| 2026-03-05 18:09:43 | → | madresch joins (~Thunderbi@user/madresch) |
| 2026-03-05 18:13:30 | → | durstloescher joins (~textual@2a02:8109:1b01:2500:2cec:18b6:70c1:9f6f) |
| 2026-03-05 18:13:48 | × | durstloescher quits (~textual@2a02:8109:1b01:2500:2cec:18b6:70c1:9f6f) (Client Quit) |
| 2026-03-05 18:13:50 | × | fgarcia quits (~lei@user/fgarcia) (Quit: Remote host closed the connection) |
| 2026-03-05 18:14:11 | → | tromp joins (~textual@2001:1c00:3487:1b00:2466:6319:20fa:c233) |
All times are in UTC.