Home freenode/#haskell: Logs Calendar

Logs: freenode/#haskell

←Prev  Next→ 502,152 events total
2021-03-11 21:31:06 <sclv> there's a book on large program architecture that has a chapter on ghc, i forget what book though!
2021-03-11 21:31:15 borne joins (~fritjof@200116b86413620065fd8eaafdc5f06e.dip.versatel-1u1.de)
2021-03-11 21:31:22 <sclv> (oh i should add experience, and lots of articles about many different systems)
2021-03-11 21:31:42 <koz_> I think Sandy Maguire was working on a design-style book too, but I forget its name or whether it's finished.
2021-03-11 21:32:12 <sclv> re wholemeal programming: https://www.cs.ox.ac.uk/people/ralf.hinze/publications/ICFP09.pdf
2021-03-11 21:32:24 <sclv> " Wholemeal programming means to thinkbig: work with an entire list, rather than a sequence of elements; de-velop a solution space, rather than an individual solution; imaginea graph, rather than a single path."
2021-03-11 21:32:32 <kupi> i once read a program made by one person who had 20 years of experience, about 10 of it was java. That program was full of god classes cyclically dependent on each other!
2021-03-11 21:33:10 <kupi> that was when I learnt "experience" is not enough, books and code reviews are essential
2021-03-11 21:34:05 <koz_> To be fair, experience in Java is inversely proportional, so it's 10 - 10 = 0 years of actual experience. :P
2021-03-11 21:34:10 <sclv> oh here's the book i was thinking of: https://www.aosabook.org/en/index.html
2021-03-11 21:34:28 × roconnor quits (~roconnor@host-45-58-192-182.dyn.295.ca) (Ping timeout: 260 seconds)
2021-03-11 21:34:33 <sclv> maybe marlow's book on concurrency would pair well
2021-03-11 21:34:45 <koz_> I would recommend that book regardless (Marlow's).
2021-03-11 21:34:52 <koz_> It's _really_ useful.
2021-03-11 21:36:53 frozenErebus joins (~frozenEre@94.128.82.20)
2021-03-11 21:37:44 stree joins (~stree@68.36.8.116)
2021-03-11 21:37:45 <kupi> is there newer version of this? https://twitter.com/lambda_conf/status/803695008100466688
2021-03-11 21:37:59 cake_eater joins (~kiweun@2607:fea8:2a62:9600:2c7a:ef2c:8374:86d)
2021-03-11 21:38:01 <sclv> I hope not!
2021-03-11 21:38:08 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-11 21:38:09 <sclv> its a terrible idea and we all dunked on it at the time
2021-03-11 21:38:28 × geekosaur quits (82650c7a@130.101.12.122) (Quit: Connection closed)
2021-03-11 21:38:33 <kupi> is there an alternative?
2021-03-11 21:39:36 <sclv> imho there's no "right" way to construct such a thing
2021-03-11 21:39:42 <subttle> 1
2021-03-11 21:39:50 <koz_> subttle: 2
2021-03-11 21:39:54 × qih quits (~pi@210-54-120-166.adsl.xtra.co.nz) (Quit: Lost terminal)
2021-03-11 21:40:02 × rj quits (~x@gateway/tor-sasl/rj) (Ping timeout: 268 seconds)
2021-03-11 21:40:04 <subttle> haha sorry typo meant to be "/1" to change windows :)
2021-03-11 21:41:08 <Psybur> Anybody have an idea on how to fix 'cannot find ld' when using stack build? It appears to be on my path, dont know why im getting this https://pastebin.com/Xp5gSjtN
2021-03-11 21:41:26 × kiweun quits (~kiweun@2607:fea8:2a62:9600:7dbd:671b:4d2e:c5b4) (Ping timeout: 264 seconds)
2021-03-11 21:43:03 kiweun joins (~kiweun@2607:fea8:2a62:9600:3c91:d3d3:8013:3404)
2021-03-11 21:44:26 × cake_eater quits (~kiweun@2607:fea8:2a62:9600:2c7a:ef2c:8374:86d) (Ping timeout: 264 seconds)
2021-03-11 21:44:53 idhugo__ joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
2021-03-11 21:45:00 <sclv> kupi: the "right" metric is to keep reading code and writing code and learning as youo go
2021-03-11 21:45:12 <sclv> there's no "ladder" to climb
2021-03-11 21:45:22 rj joins (~x@gateway/tor-sasl/rj)
2021-03-11 21:45:52 × DataComputist quits (~lumeng@50.43.26.251) (Ping timeout: 265 seconds)
2021-03-11 21:46:12 × son0p quits (~son0p@181.58.39.182) (Quit: leaving)
2021-03-11 21:47:31 DataComputist joins (~lumeng@50.43.26.251)
2021-03-11 21:48:02 × kiweun quits (~kiweun@2607:fea8:2a62:9600:3c91:d3d3:8013:3404) (Ping timeout: 264 seconds)
2021-03-11 21:48:05 Varis joins (~Tadas@unaffiliated/varis)
2021-03-11 21:48:23 danvet_ joins (~danvet@212-51-149-181.fiber7.init7.net)
2021-03-11 21:48:26 × idhugo__ quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Read error: Connection reset by peer)
2021-03-11 21:48:38 idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
2021-03-11 21:50:35 <minoru_shiraeesh> sclv: "imho most questions of large scale architecture are sort of the same with or without functional programming tbh"
2021-03-11 21:50:57 <minoru_shiraeesh> but the language can encourage or discourage certain decisions
2021-03-11 21:51:25 <minoru_shiraeesh> I heard that in erlang everything is an actor
2021-03-11 21:51:50 <sclv> sure. but there's actor style libs for java even
2021-03-11 21:51:56 <minoru_shiraeesh> so an erlang programmer will probably lean towards a solution that involves actors
2021-03-11 21:51:57 × [exa] quits (exa@unaffiliated/exa/x-5381537) (Read error: Connection reset by peer)
2021-03-11 21:52:42 <minoru_shiraeesh> js encouraged callbacks
2021-03-11 21:52:57 <sclv> many languages do
2021-03-11 21:53:12 <sclv> its common in python libs too
2021-03-11 21:53:33 <hololeap> kupi: it reminds me a bit of this: http://dev.stephendiehl.com/hask/index.html
2021-03-11 21:53:56 <sclv> i'm not saying language doesn't matter. i'm saying that large scale architecture is something that lives at a higher level of abstraction than "functional programming"
2021-03-11 21:54:13 × heatsink quits (~heatsink@2600:1700:bef1:5e10:8ce3:ab05:2761:c61a) (Remote host closed the connection)
2021-03-11 21:54:29 <sclv> and by large scale i mean systems with say at least three different interacting processes, typically more
2021-03-11 21:54:29 <minoru_shiraeesh> I think they intersect
2021-03-11 21:54:39 <sclv> ok good for you
2021-03-11 21:54:43 <kupi> thanks a lot, so many links I am completely unsure what to do? shall I finish SICP? then what's next?
2021-03-11 21:55:08 <minoru_shiraeesh> in fp there is a distinction between pure and impure code
2021-03-11 21:55:40 <minoru_shiraeesh> that's a whole perspective of its own on the design process
2021-03-11 21:55:41 <koz_> kupi: My suggestion? Build stuff.
2021-03-11 21:55:43 <sclv> kupi: finishing SICP is good. if you got a lot out of it you'd probably be at a level where you get a lot out of HTDP ttoo
2021-03-11 21:55:48 <sclv> but yes, build stuff!
2021-03-11 21:55:58 <koz_> Like, you can read and theorize all you like, but building stuff helps put it into practice and show you what you're missing.
2021-03-11 21:56:13 × Boomerang quits (~Boomerang@2a05:f6c7:2179:0:ccd0:d305:d616:ff16) (Ping timeout: 272 seconds)
2021-03-11 21:56:30 <sclv> read things you enjoy and teach you things. and if you stop enjoying and learning from something, then go do something else, or read something else.
2021-03-11 21:56:51 <koz_> sclv: Yes, this times a million.
2021-03-11 21:56:53 <sclv> all you can get are recommendations, you need to sort thru them and prioritize yourself, you know best
2021-03-11 21:57:26 <sclv> minoru_shiraeesh: i think you do not understand what i mean by "large scale" and that's ok
2021-03-11 21:58:34 × inkbottle quits (~inkbottle@aaubervilliers-654-1-101-29.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-03-11 21:58:48 × mouseghost quits (~draco@wikipedia/desperek) (Quit: goodnight, sleep tight)
2021-03-11 21:58:53 inkbottle joins (~inkbottle@aaubervilliers-654-1-101-29.w86-212.abo.wanadoo.fr)
2021-03-11 21:59:20 <minoru_shiraeesh> sclv: so what is it? examples
2021-03-11 21:59:51 <sclv> "systems with say at least three different interacting processes, typically more"
2021-03-11 22:01:38 <sclv> say six long running server processes, multiple protocols and serialization formats, twelve db tables, at least two dbs, multiple supervisors, a databroker and also direct RPC apis of various sorts.
2021-03-11 22:01:53 <Psybur> Why did nobody warn me about stack build --verbose
2021-03-11 22:01:54 <sclv> a thing you need a whole whiteboard to diagram
2021-03-11 22:02:44 <sclv> whether any individual component is written in java, haskell, rust or whatever is a Lot less relevant at that point
2021-03-11 22:03:18 <sclv> I would prefer they all be written in haskell, of course. but the architecture questions involved don't relate to that
2021-03-11 22:03:32 <koz_> In fact, there is a good chance chunks of it are written in something rather different.
2021-03-11 22:03:36 <koz_> (databases for example)
2021-03-11 22:03:50 × nbloomf_ quits (~nbloomf@2600:1700:ad14:3020:ac7b:d5c9:2180:6a41) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-03-11 22:04:09 <sclv> yep -- in all such systems i've worked on there have been at least three languages in play, not to mention the DBs
2021-03-11 22:04:39 <koz_> In the system I'm currently dealing with, there's three.
2021-03-11 22:04:43 × jollygood2 quits (~bc8134e3@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout))
2021-03-11 22:04:53 <koz_> (well, four technically)
2021-03-11 22:05:07 <sclv> let me guess, there are three teams!
2021-03-11 22:05:48 idhugo_ joins (~idhugo@80-62-117-241-mobile.dk.customer.tdc.net)
2021-03-11 22:05:50 <koz_> sclv: There are considerably more than three teams.
2021-03-11 22:05:57 × ubert quits (~Thunderbi@p200300ecdf25d965e6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2021-03-11 22:06:03 <sclv> lol i was going for a conway's law thing
2021-03-11 22:06:03 <koz_> In fact, I discover new ones almost daily.
2021-03-11 22:06:21 <koz_> Yeah, lol.
2021-03-11 22:06:22 <minoru_shiraeesh> sounds like we make a sudden jump from designing chairs and tables to designing cities, but there are things in between that you can design too
2021-03-11 22:06:43 <minoru_shiraeesh> you can design a cross-roads for example
2021-03-11 22:06:43 <sclv> anyway that's me clarifying what i meant by "large"
2021-03-11 22:06:58 <Gurkenglas_> "stack --resolver nightly-2020-12-14 install ghc" says "ghc-8.6.5" but https://www.stackage.org/nightly-2020-12-14 says "ghc-8.10.2". Hm?

All times are in UTC.