Logs: liberachat/#haskell
| 2026-03-12 19:28:49 | <ski> | how does it handle trying to communicate a result non-locally out of an alternative ? |
| 2026-03-12 19:29:28 | <monochrom> | I don't know. |
| 2026-03-12 19:29:50 | <ski> | presumably the alternation acts as a barrier, where information can flow into the "engine", but not out of (except at the end of the computation, collecting results) |
| 2026-03-12 19:30:13 | <ski> | (the CTM book talks about this, in the chapter about constraint programming) |
| 2026-03-12 19:30:37 | ski | was (re)reading it recently (didn't get to that part yet, though) |
| 2026-03-12 19:30:58 | × | AlexNoo quits (~AlexNoo@5.139.232.240) (Ping timeout: 248 seconds) |
| 2026-03-12 19:31:08 | → | AlexNoo joins (~AlexNoo@5.139.232.240) |
| 2026-03-12 19:31:10 | <monochrom> | Yeah I'm thinking "what's there to handle?" because the only thing left to do is collecting results. |
| 2026-03-12 19:31:29 | → | target_i joins (~target_i@user/target-i/x-6023099) |
| 2026-03-12 19:34:05 | ski | . o O ( "Concepts, Techniques, and Models of Computer Programming" by Peter Van Roy,Seif Haridi in 2003-06-05 at <https://webperso.info.ucl.ac.be/~pvr/book.html>,<https://webperso.info.ucl.ac.be/~pvr/VanRoyHaridi2003-book.pdf> ) |
| 2026-03-12 19:34:07 | <monochrom> | Given that non-determinism cannot be used with mutable variables, you have a multiple-world semantics, such that there is no communication between two sibling worlds. |
| 2026-03-12 19:34:59 | <ski> | (at first, i was thinking of the two different flavors of AND-parallelism (merge-at-join vs. communicate), but presumably they're only doing OR-parallelism) |
| 2026-03-12 19:35:00 | × | remedan quits (~remedan@78-80-95-79.customers.tmcz.cz) (Quit: Bye!) |
| 2026-03-12 19:35:04 | <monochrom> | It doesn't even have Prolog's cut, so you can't even kill your sibling! |
| 2026-03-12 19:35:10 | <EvanR> | the Sagrada Família on the cover is great |
| 2026-03-12 19:35:14 | × | AlexNoo quits (~AlexNoo@5.139.232.240) (Ping timeout: 248 seconds) |
| 2026-03-12 19:35:29 | <EvanR> | *your code project is going this well* |
| 2026-03-12 19:35:46 | × | target_i quits (~target_i@user/target-i/x-6023099) (Ping timeout: 248 seconds) |
| 2026-03-12 19:36:20 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 244 seconds) |
| 2026-03-12 19:36:41 | <ski> | i heard something about the rate at continuing with Sagrada Familia going up, recently, due to being able to use prefab pieces, designed to fit, constructed elsewhere |
| 2026-03-12 19:36:48 | → | target_i joins (~target_i@user/target-i/x-6023099) |
| 2026-03-12 19:37:06 | → | Ranhir joins (~Ranhir@157.97.53.139) |
| 2026-03-12 19:41:15 | × | target_i quits (~target_i@user/target-i/x-6023099) (Ping timeout: 255 seconds) |
| 2026-03-12 19:41:48 | × | qqq quits (~qqq@185.54.22.246) (Ping timeout: 264 seconds) |
| 2026-03-12 19:42:08 | → | target_i joins (~target_i@user/target-i/x-6023099) |
| 2026-03-12 19:43:53 | → | chewybread joins (~chewybrea@240b:10:9502:4100:80a2:daac:f3ad:170) |
| 2026-03-12 19:43:53 | × | chewybread quits (~chewybrea@240b:10:9502:4100:80a2:daac:f3ad:170) (Changing host) |
| 2026-03-12 19:43:53 | → | chewybread joins (~chewybrea@user/chewybread) |
| 2026-03-12 19:44:45 | <monochrom> | For AND, Curry only requires this: Let x be a logic variable, then "x>=5 AND unify(x,10)" and "unify(x,10) AND x>=5" behave the same, both should discover x=10 and compute 10>=5. |
| 2026-03-12 19:45:24 | <monochrom> | I have a feeling that when there are no mutable variables, you have confluence so it doesn't matter what you do. |
| 2026-03-12 19:45:45 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 2026-03-12 19:46:19 | <ski> | yea, Oz has declaratie concurrency for this |
| 2026-03-12 19:46:37 | <ski> | (operations block until their inputs are instantiated) |
| 2026-03-12 19:47:08 | <ski> | it's also possible to construct a "read-only view" of a dataflow variable (logic variable), so that you can't instantiate through it |
| 2026-03-12 19:49:44 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 2026-03-12 19:50:17 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 244 seconds) |
| 2026-03-12 19:52:23 | ski | . o O ( "Dataflow Parallelism: The Par Monad" (chapter 4, "Parallel and Concurrent Programming in Haskell" by Simon Marlow in 2013) <https://web.archive.org/web/20180108044627/http:/chimera.labs.oreilly.com/books/1230000000929/ch04.html> ) |
| 2026-03-12 19:52:37 | Lord_of_Life_ | is now known as Lord_of_Life |
| 2026-03-12 19:54:09 | <ski> | (you get non-declarative concurrency, when you allow race conditions, non-deterministic merging of multiple concurrent channels. i guess lvish is a principled way to keep declarativity, in some of those cases) |
| 2026-03-12 19:54:14 | <ski> | @hackage lvish |
| 2026-03-12 19:54:14 | <lambdabot> | https://hackage.haskell.org/package/lvish |
| 2026-03-12 19:54:49 | → | akegalj joins (~akegalj@141-138-62-190.dsl.iskon.hr) |
| 2026-03-12 19:58:00 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-03-12 20:09:04 | × | Square2 quits (~Square@user/square) (Quit: Leaving) |
| 2026-03-12 20:09:19 | × | akegalj quits (~akegalj@141-138-62-190.dsl.iskon.hr) (Quit: leaving) |
| 2026-03-12 20:09:21 | → | Square joins (~Square@user/square) |
| 2026-03-12 20:13:29 | <gentauro> | ski: every now and then uni's change their websistes and all papers linking are gone |
| 2026-03-12 20:13:38 | <gentauro> | :( |
| 2026-03-12 20:14:15 | → | merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl) |
| 2026-03-12 20:18:54 | <ski> | similar to many large applications or GUI systems or web sites changing, "just because", presumably to justify having interface designers or somesuch ? |
| 2026-03-12 20:20:46 | × | merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2026-03-12 20:21:15 | <geekosaur> | there's also this business of unis asserting ownership of other uni's web namespaces because they're better known or w/e |
| 2026-03-12 20:26:06 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2026-03-12 20:31:22 | → | merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl) |
| 2026-03-12 20:33:53 | <gentauro> | I'm stuck in a terminal with black background and greenish/limeish foreground. I don't understand the fuzz :-\ |
| 2026-03-12 20:35:26 | gentauro | «Hello, the CLI version is only intended for developer use right now, we do not plan to improve its usability much for regular users, the GUI desktop app is focused on regular users. Thank you for the suggestion» -- SimpleX Chat |
| 2026-03-12 20:35:35 | × | merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-03-12 20:36:10 | <gentauro> | probably the best chat app (non IRC based) and written in Haskell, with a terminal CLI, is not gonna invest anymore effort into the terminal CLI :( |
| 2026-03-12 20:36:16 | <gentauro> | now that's saD |
| 2026-03-12 20:38:11 | <haskellbridge> | <sm> is it open source ? |
| 2026-03-12 20:39:38 | → | AlexNoo joins (~AlexNoo@5.139.232.240) |
| 2026-03-12 20:40:23 | → | AlexNoo_ joins (~AlexNoo@5.139.232.240) |
| 2026-03-12 20:41:07 | → | AlexNoo__ joins (~AlexNoo@5.139.232.240) |
| 2026-03-12 20:42:17 | × | chewybread quits (~chewybrea@user/chewybread) (Ping timeout: 248 seconds) |
| 2026-03-12 20:42:54 | <gentauro> | yeah. AGPLv3.0 |
| 2026-03-12 20:44:02 | × | AlexNoo quits (~AlexNoo@5.139.232.240) (Ping timeout: 248 seconds) |
| 2026-03-12 20:44:34 | × | AlexNoo_ quits (~AlexNoo@5.139.232.240) (Ping timeout: 248 seconds) |
| 2026-03-12 20:45:38 | × | AlexNoo__ quits (~AlexNoo@5.139.232.240) (Ping timeout: 248 seconds) |
| 2026-03-12 20:46:44 | → | merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl) |
| 2026-03-12 20:47:13 | → | pavonia joins (~user@user/siracusa) |
| 2026-03-12 20:51:27 | × | merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2026-03-12 20:57:06 | → | chewybread joins (~chewybrea@240b:10:9502:4100:80a2:daac:f3ad:170) |
| 2026-03-12 20:57:06 | × | chewybread quits (~chewybrea@240b:10:9502:4100:80a2:daac:f3ad:170) (Changing host) |
| 2026-03-12 20:57:06 | → | chewybread joins (~chewybrea@user/chewybread) |
| 2026-03-12 21:01:36 | × | chewybread quits (~chewybrea@user/chewybread) (Ping timeout: 264 seconds) |
| 2026-03-12 21:02:00 | <sm> | so you know what to do :-) |
| 2026-03-12 21:02:05 | → | merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl) |
| 2026-03-12 21:03:38 | <jreicher> | gentauro: what's the protocol (and server?) architecture? |
| 2026-03-12 21:06:55 | × | merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-03-12 21:09:23 | → | chewybread joins (~chewybrea@240b:10:9502:4100:80a2:daac:f3ad:170) |
| 2026-03-12 21:09:23 | × | chewybread quits (~chewybrea@240b:10:9502:4100:80a2:daac:f3ad:170) (Changing host) |
| 2026-03-12 21:09:23 | → | chewybread joins (~chewybrea@user/chewybread) |
| 2026-03-12 21:16:16 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 2026-03-12 21:17:27 | → | merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl) |
| 2026-03-12 21:21:45 | × | merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
| 2026-03-12 21:26:34 | × | machinedgod quits (~machinedg@d172-219-48-230.abhsia.telus.net) (Ping timeout: 245 seconds) |
| 2026-03-12 21:28:14 | × | oskarw quits (~user@user/oskarw) (Remote host closed the connection) |
| 2026-03-12 21:28:37 | → | remedan joins (~remedan@78-80-95-79.customers.tmcz.cz) |
| 2026-03-12 21:32:49 | → | merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl) |
| 2026-03-12 21:37:46 | <aka_dude> | How to concatenate to lists on type level? |
| 2026-03-12 21:37:47 | × | merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds) |
| 2026-03-12 21:39:56 | <aka_dude> | I implemented a type family for that but hoped there is something in base for that |
| 2026-03-12 21:40:01 | <aka_dude> | Can't find though |
| 2026-03-12 21:43:48 | × | target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving) |
| 2026-03-12 21:46:52 | <geekosaur> | https://downloads.haskell.org/ghc/latest/docs/libraries/base-4.22.0.0-66f8/GHC-TypeLits.html#t:AppendSymbol |
| 2026-03-12 21:47:23 | <geekosaur> | "For now, this module is the API for working with type-level literals." |
| 2026-03-12 21:47:39 | <geekosaur> | oh wait, lists, sorry |
| 2026-03-12 21:47:53 | <geekosaur> | not sure there's anything specifically for type level lists |
| 2026-03-12 21:48:15 | → | merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl) |
| 2026-03-12 21:49:09 | <geekosaur> | I think various effects libraries provide such but they're likely to be specialized to their types |
All times are in UTC.