Home freenode/#haskell: Logs Calendar

Logs: freenode/#haskell

←Prev  Next→ 502,152 events total
2020-11-10 21:06:41 × xff0x quits (~fox@2001:1a81:5351:7d00:ce67:d83b:bf0:863) (Ping timeout: 272 seconds)
2020-11-10 21:06:43 todda7 joins (~torstein@ppp-2-84-27-210.home.otenet.gr)
2020-11-10 21:06:49 × tsaka__ quits (~torstein@ppp-2-84-29-23.home.otenet.gr) (Ping timeout: 246 seconds)
2020-11-10 21:07:05 xff0x joins (~fox@2001:1a81:5351:7d00:b85:39de:f1a2:e86d)
2020-11-10 21:08:02 christo joins (~chris@81.96.113.213)
2020-11-10 21:08:10 justsomeguy joins (~justsomeg@2603:9000:960a:fc00:c4d2:5b73:c7b7:3a2b)
2020-11-10 21:08:10 × justsomeguy quits (~justsomeg@2603:9000:960a:fc00:c4d2:5b73:c7b7:3a2b) (Changing host)
2020-11-10 21:08:10 justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311)
2020-11-10 21:09:06 <Feuermagier_> merijn, I know barely anything about datastructures in haskell. I'll probably have to learn about them in the process.
2020-11-10 21:09:19 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
2020-11-10 21:09:24 <merijn> What did you use in other languages?
2020-11-10 21:09:39 <koz_> Feuermagier_: I think what merijn wants to know is 'how did you want to represent your graph?'.
2020-11-10 21:09:45 <koz_> Like, adjacency matrix, adjacency list, some other thing?
2020-11-10 21:09:48 <merijn> That, yeah
2020-11-10 21:09:58 <koz_> (algebraic graph if you wanna flex)
2020-11-10 21:10:01 <merijn> koz_: Clearly CSR is superior :p
2020-11-10 21:10:05 <koz_> CSR?
2020-11-10 21:10:31 <merijn> Compressed Spare Row (usually a representation for sparse matrices, but then again, what is a graph if not a sparse matrix)
2020-11-10 21:10:43 <koz_> Ah, so 'not terrible adjaceny matrix'.
2020-11-10 21:11:02 <koz_> s/adjaceny/adjacency/
2020-11-10 21:11:15 <koz_> (that word's spelling annoys me)
2020-11-10 21:11:22 <koz_> (it should be 'ajasensy')
2020-11-10 21:12:25 <Feuermagier_> I'll probably go for an adjecenjy matrix or list
2020-11-10 21:12:43 × jonatanb quits (~jonatanb@83.24.9.26.ipv4.supernova.orange.pl) (Remote host closed the connection)
2020-11-10 21:12:56 alp joins (~alp@2a01:e0a:58b:4920:8da6:37da:b1a5:2020)
2020-11-10 21:13:15 jonatanb joins (~jonatanb@83.24.9.26.ipv4.supernova.orange.pl)
2020-11-10 21:17:02 × PlasmaStar quits (plasma@unaffiliated/plasmastar) (Ping timeout: 260 seconds)
2020-11-10 21:17:27 × Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection)
2020-11-10 21:17:29 × geekosaur quits (82659a09@host154-009.vpn.uakron.edu) (Remote host closed the connection)
2020-11-10 21:18:25 × jonatanb quits (~jonatanb@83.24.9.26.ipv4.supernova.orange.pl) (Ping timeout: 240 seconds)
2020-11-10 21:19:46 <justsomeguy> Is there something special about singly-linked lists that makes it easier to use without direct mutation than arrays or doubly-linked lists? There seems to be a special emphasis on the list type, and I'm trying to figure out why.
2020-11-10 21:19:59 × borne quits (~fritjof@200116b8643da60021c47849b07375d7.dip.versatel-1u1.de) (Ping timeout: 244 seconds)
2020-11-10 21:20:01 <koz_> justsomeguy: Mostly legacy. Lists were all the rage back then.
2020-11-10 21:20:13 <merijn> That's an oversimplification
2020-11-10 21:20:24 <merijn> Linked lists are basically "loops as data structure"
2020-11-10 21:20:34 <merijn> Loops are common, therefore lists are common
2020-11-10 21:20:37 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2020-11-10 21:20:41 luke joins (~luke@bitnomial/staff/luke)
2020-11-10 21:20:47 × avdb quits (~avdb@ip-213-49-61-163.dsl.scarlet.be) (Ping timeout: 256 seconds)
2020-11-10 21:20:56 kipras joins (~Kipras@78-56-235-39.static.zebra.lt)
2020-11-10 21:20:59 crdrost joins (~crdrost@c-98-207-102-156.hsd1.ca.comcast.net)
2020-11-10 21:21:18 <koz_> Someone said (I think it was solonarv?) that lists are a great control structure, but a terrible data structure.
2020-11-10 21:21:21 <merijn> justsomeguy: doubly-linked lists are hard/annoying to build if you don't have mutation, because well, if how are you going to set all "next" *and* "previous" links simultaneously
2020-11-10 21:21:35 × xintron quits (~xintron@unaffiliated/xintron) (Quit: aoeu)
2020-11-10 21:22:07 <dolio> They're not a terrible data structure.
2020-11-10 21:22:33 <koz_> dolio: My quote may be lacking context.
2020-11-10 21:22:38 <koz_> (and in fact, likely is)
2020-11-10 21:22:46 × thir quits (~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-11-10 21:23:28 × Kipras_ quits (~Kipras@78-56-235-39.static.zebra.lt) (Ping timeout: 260 seconds)
2020-11-10 21:23:33 xintron joins (~xintron@unaffiliated/xintron)
2020-11-10 21:23:34 thir joins (~thir@pd9e1bd8a.dip0.t-ipconnect.de)
2020-11-10 21:23:35 Varis joins (~Tadas@unaffiliated/varis)
2020-11-10 21:26:57 <dolio> Well, that is the essence of the problem. It makes no sense to call something a "terrible data structure" without context. And lists are fine for a lot of common uses.
2020-11-10 21:27:56 × thir quits (~thir@pd9e1bd8a.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2020-11-10 21:28:15 <dolio> You don't always need to access both sides or index into or find something in a collection of things, or any number of other operations that are suboptimal on lists.
2020-11-10 21:28:26 phaul joins (~phaul@ruby/staff/phaul)
2020-11-10 21:28:52 Rembane joins (~Rembane@li346-36.members.linode.com)
2020-11-10 21:30:04 <justsomeguy> I guess it may be easier to share parts of a list that are unchanged, since you don't have to keep them contiguously in memory, and you can just change the linkages between cons cells.
2020-11-10 21:30:12 × daydaynatation quits (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 256 seconds)
2020-11-10 21:30:19 × xintron quits (~xintron@unaffiliated/xintron) (Quit: Ping timeout (120 seconds))
2020-11-10 21:30:43 <crdrost> for that matter there is a duality between data structures and the control structures that consume them, it doesn't make sense to say that the control structure is great but the data structure is terrible, they're the same thing
2020-11-10 21:30:46 xintron joins (~xintron@unaffiliated/xintron)
2020-11-10 21:31:55 Sheilong joins (uid293653@gateway/web/irccloud.com/x-jmssjdeibemlfomz)
2020-11-10 21:32:05 olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber)
2020-11-10 21:32:09 jmcarthur joins (~jmcarthur@2601:86:500:2a40:db56:5d66:5919:c95d)
2020-11-10 21:35:18 × lucente quits (~lucente@141.98.255.154) (Quit: Leaving)
2020-11-10 21:35:34 mbomba joins (~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca)
2020-11-10 21:36:14 × jedws quits (~jedws@101.184.150.81) (Read error: Connection reset by peer)
2020-11-10 21:36:25 × britva quits (~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-10 21:36:26 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:9412:40af:8d00:a4de) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-10 21:37:06 britva joins (~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-10 21:37:38 × phaul quits (~phaul@ruby/staff/phaul) (Ping timeout: 256 seconds)
2020-11-10 21:40:09 × knupfer quits (~Thunderbi@mue-88-130-61-051.dsl.tropolys.de) (Ping timeout: 260 seconds)
2020-11-10 21:40:10 <dolio> Sharing is the definite difference between singly linked lists and the other two examples. Tails of immutable singly linked lists can be shared. Nothing in the structure of an immutable array or doubly linked list can be shared.
2020-11-10 21:40:14 phaul joins (~phaul@ruby/staff/phaul)
2020-11-10 21:40:31 hackage phonetic-languages-examples 0.3.3.0 - A generalization of the uniqueness-periods-vector-examples functionality. https://hackage.haskell.org/package/phonetic-languages-examples-0.3.3.0 (OleksandrZhabenko)
2020-11-10 21:41:30 hackage uniqueness-periods-vector-examples 0.14.3.0 - Usage examples for the uniqueness-periods-vector series of packages https://hackage.haskell.org/package/uniqueness-periods-vector-examples-0.14.3.0 (OleksandrZhabenko)
2020-11-10 21:41:33 × neiluj quits (~jco@unaffiliated/neiluj) (Ping timeout: 260 seconds)
2020-11-10 21:42:19 neiluj joins (~jco@167.198.204.77.rev.sfr.net)
2020-11-10 21:43:14 PlasmaStar joins (plasma@unaffiliated/plasmastar)
2020-11-10 21:43:15 × sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
2020-11-10 21:43:30 hackage semibounded-lattices 0.1.1.0 - A Haskell implementation of semibounded lattices https://hackage.haskell.org/package/semibounded-lattices-0.1.1.0 (xuhao)
2020-11-10 21:44:44 × chaosmasttter quits (~chaosmast@p200300c4a7087201b9a0378611bb36f0.dip0.t-ipconnect.de) (Quit: WeeChat 2.9)
2020-11-10 21:45:09 wroathe_ joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-11-10 21:45:38 × wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-11-10 21:46:59 borne joins (~fritjof@200116b8643da60021c47849b07375d7.dip.versatel-1u1.de)
2020-11-10 21:47:36 <justsomeguy> This is reminding me of how commits in git can be changed while still being mostly immutable.
2020-11-10 21:48:33 × argent0 quits (~argent0@168.227.98.80) (Ping timeout: 260 seconds)
2020-11-10 21:48:45 <merijn> dolio: Sure it can, you just can never mutate it afterwards :p
2020-11-10 21:49:21 <merijn> And the use for a datastructure where you can never insert/delete something is rather small
2020-11-10 21:49:52 <justsomeguy> Do the "links" in a singly-linked list point backwards (or forwards)?
2020-11-10 21:49:56 <dolio> No sharing can happen with only one person.
2020-11-10 21:50:18 <merijn> justsomeguy: That's a matter of perspective :p
2020-11-10 21:51:38 × xff0x quits (~fox@2001:1a81:5351:7d00:b85:39de:f1a2:e86d) (Ping timeout: 264 seconds)
2020-11-10 21:52:15 xff0x joins (~fox@2001:1a81:5351:7d00:ff4e:e2bf:70c0:a262)
2020-11-10 21:52:52 jonatanb joins (~jonatanb@83.24.9.26.ipv4.supernova.orange.pl)
2020-11-10 21:53:05 <dolio> 'I shared the cake with myself by eating the whole thing.' :P
2020-11-10 21:54:37 × phaul quits (~phaul@ruby/staff/phaul) (Ping timeout: 260 seconds)
2020-11-10 21:54:40 × leungbk quits (~user@cpe-104-33-52-83.socal.res.rr.com) (Ping timeout: 258 seconds)
2020-11-10 21:55:07 × neiluj quits (~jco@167.198.204.77.rev.sfr.net) (Ping timeout: 246 seconds)

All times are in UTC.