2015/03/05

2015-03-05 00:18:54 +0100mizu_no_oto(~textual@65.125.159.13) (Quit: Computer has gone to sleep.)
2015-03-05 00:26:13 +0100tarkus(~hello@109.230.140.12) (Ping timeout: 252 seconds)
2015-03-05 00:29:40 +0100fading(~fading@user-0c8gi4n.cable.mindspring.com)
2015-03-05 00:29:53 +0100swgillespie(~textual@167.220.23.11)
2015-03-05 00:29:57 +0100nicolastarzia(~nicolasta@189.54.236.115)
2015-03-05 00:34:28 +0100nicolastarzia(~nicolasta@189.54.236.115) (Ping timeout: 255 seconds)
2015-03-05 00:41:15 +0100davesq(uid1884@gateway/web/irccloud.com/x-clutmepcquikyjzr)
2015-03-05 00:49:28 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 272 seconds)
2015-03-05 00:49:38 +0100dav__dav
2015-03-05 00:55:04 +0100solatis(~solatis@49.156.41.254)
2015-03-05 01:02:38 +0100joneshf-laptop(~joneshf@campus-007-250.ucdavis.edu) (Ping timeout: 244 seconds)
2015-03-05 01:05:49 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 01:34:41 +0100SuneAlkaersig(~sunealkae@4103ds5-by.0.fullrate.dk)
2015-03-05 01:45:42 +0100SuneAlkaersig(~sunealkae@4103ds5-by.0.fullrate.dk) (Remote host closed the connection)
2015-03-05 02:04:43 +0100TEttinger(~notostrac@76-217-24-241.lightspeed.irvnca.sbcglobal.net)
2015-03-05 02:12:58 +0100Rotaerk(~Rotaerk@c-174-54-255-117.hsd1.pa.comcast.net)
2015-03-05 02:24:53 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 240 seconds)
2015-03-05 02:28:33 +0100swgillespie(~textual@167.220.23.11) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
2015-03-05 02:39:11 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 02:49:05 +0100leeN(~leeN@g228047217.adsl.alicedsl.de) (Read error: Connection reset by peer)
2015-03-05 02:55:39 +0100Sgeo(~quassel@ool-44c2aebc.dyn.optonline.net) (Read error: Connection reset by peer)
2015-03-05 02:58:49 +0100Sgeo(~quassel@ool-44c2aebc.dyn.optonline.net)
2015-03-05 03:20:54 +0100darkf(~darkf___@unaffiliated/darkf)
2015-03-05 03:21:13 +0100ned0(~ned--@50.153.130.3)
2015-03-05 03:23:58 +0100 <solatis> ok
2015-03-05 03:24:00 +0100 <solatis> silly question
2015-03-05 03:24:07 +0100 <solatis> what is this ;; i see in so many code samples?
2015-03-05 03:24:11 +0100 <solatis> something for the REPL?
2015-03-05 03:24:38 +0100ned(~ned--@50.153.129.145) (Ping timeout: 272 seconds)
2015-03-05 03:32:09 +0100 <solatis> little question
2015-03-05 03:32:47 +0100 <solatis> when I use a TcpClient, i use the 'use' keyword to automatically dispose of the client when done
2015-03-05 03:33:06 +0100 <solatis> do I also have to do this for the additional NetworkStream ?
2015-03-05 03:33:43 +0100 <solatis> for example, will this leak resources:
2015-03-05 03:33:49 +0100 <solatis> use client = new TcpClient (host, port)
2015-03-05 03:33:49 +0100 <solatis> callback (client.GetStream())
2015-03-05 03:34:24 +0100 <solatis> ah
2015-03-05 03:34:27 +0100 <solatis> https://msdn.microsoft.com/en-us/library/system.net.sockets.tcpclient.getstream(v=vs.110).aspx
2015-03-05 03:34:32 +0100 <solatis> "You must close the NetworkStream when you are through sending and receiving data. Closing TcpClient does not release the NetworkStream."
2015-03-05 03:34:38 +0100 <solatis> I guess that answers my question
2015-03-05 03:35:02 +0100 <Scott`> the general convention with disposable things is: if you can dispose it, you should
2015-03-05 03:53:44 +0100Guest75845(ericb2@gateway/vpn/mullvad/x-rqdmbvmxyubtpouw) (Remote host closed the connection)
2015-03-05 03:53:47 +0100kini1(kini@gateway/vpn/mullvad/x-jitnaomhoektnlwm)
2015-03-05 04:32:03 +0100og_king_jah(~jah@S0106f46d04125349.ss.shawcable.net)
2015-03-05 04:32:34 +0100og_king_jah(~jah@S0106f46d04125349.ss.shawcable.net) (Client Quit)
2015-03-05 04:41:06 +0100bb010g(uid21050@gateway/web/irccloud.com/x-dygsgwwnxkjnxpgi)
2015-03-05 04:43:24 +0100Associat0r(~Associat0@unaffiliated/associat0r) (Quit: Associat0r)
2015-03-05 04:54:29 +0100swgillespie(~textual@104.156.100.234)
2015-03-05 04:55:05 +0100majyk(~Frank@pool-96-255-166-221.washdc.fios.verizon.net)
2015-03-05 04:57:20 +0100 <majyk> I'm trying to use the AttributesUsage attribute in F# with multiple AttributeTargets but I don't know how to separate the AttributeTargets. In C# you separate them with | but that doesn't work in F#.
2015-03-05 04:58:07 +0100 <majyk> I've Googled for about 30 minutes but have come up empty
2015-03-05 05:01:10 +0100 <Lions> || or |||
2015-03-05 05:01:11 +0100 <Lions> forget
2015-03-05 05:01:40 +0100 <majyk> ah thank you, looks like ||| works
2015-03-05 05:02:06 +0100 <Lions> I think the convention is triple for bitwise
2015-03-05 05:02:11 +0100 <Lions> so &&& and |||
2015-03-05 05:03:52 +0100 <majyk> thanks I really appreciate that!
2015-03-05 05:04:38 +0100 <Lions> yw
2015-03-05 05:11:29 +0100 <Rotaerk> &&&&&&&&&&&&&&&&&
2015-03-05 05:14:20 +0100 <Scott`>
2015-03-05 05:16:47 +0100 <fading> Anyone know how to throttle async blocks (say to avoid hammering a website with requests)?
2015-03-05 05:18:06 +0100 <fading> if I just do tasks |> Async.Parallal |> Async.RunSynchronously that works... but it tries all my tasks at once
2015-03-05 05:19:02 +0100 <fading> I looked at: https://fsnotebook.net/notebook/fssnip-nX/Limit_degree_of_parallelism_using_an_agent
2015-03-05 05:19:28 +0100 <fading> but pretty sure that doesn't allow me to return a result from each task
2015-03-05 05:20:00 +0100 <fading> My tasks will eventually return an list of doubles (calculated from each webrequest)
2015-03-05 05:20:28 +0100 <fading> also looked at:
2015-03-05 05:20:29 +0100 <fading> http://blog.mavnn.co.uk/throttling-the-level-of-concurrency-in-f/
2015-03-05 05:20:41 +0100 <fading> TahaHachana / ThrottlingAgent.fs https://gist.github.com/TahaHachana/35ea103807c7ebc2a1a3
2015-03-05 05:20:59 +0100 <fading> but my F# skills with async mailboxprocessor too weak to follow
2015-03-05 05:21:05 +0100 <fading> maybe I just need to sleep on it :P
2015-03-05 05:25:09 +0100 <fading> For c# I have something that works, and but uses SemiphoreSlim
2015-03-05 05:25:13 +0100 <fading> that I got from "How to limit the amount of concurrent async I/O operations?" http://stackoverflow.com/a/10810730
2015-03-05 05:25:57 +0100 <fading> that seems surprisingly simple compared to the F# answers I found
2015-03-05 05:47:31 +0100 <solatis> hmmm how do i pattern match the first two elements of a list?
2015-03-05 05:47:51 +0100 <solatis> i know i can do match list with | x::xs for the first element
2015-03-05 05:48:01 +0100 <solatis> is there also something like match list with | x:y:xs ?
2015-03-05 05:50:22 +0100 <Rotaerk> yes, you can do that
2015-03-05 05:51:07 +0100 <solatis> how, exactly?
2015-03-05 05:51:30 +0100 <solatis> x::y::xs ?
2015-03-05 05:51:33 +0100 <Rotaerk> yes
2015-03-05 05:51:38 +0100 <solatis> ok
2015-03-05 06:00:31 +0100VandroiyIII(~FD@unaffiliated/vandroiy)
2015-03-05 06:01:24 +0100majyk(~Frank@pool-96-255-166-221.washdc.fios.verizon.net) (Quit: Leaving)
2015-03-05 06:01:37 +0100Devels(~Devels@unaffiliated/devels) (Quit: Zenith, out!)
2015-03-05 06:03:53 +0100Vandroiy(~FD@unaffiliated/vandroiy) (Ping timeout: 240 seconds)
2015-03-05 06:08:34 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 245 seconds)
2015-03-05 06:19:57 +0100Devels(~Devels@unaffiliated/devels)
2015-03-05 06:20:25 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 06:25:33 +0100 <fading> As to my previous question for now I just chunked my list in groups of 10 by using http://stackoverflow.com/questions/8064016/how-to-partition-a-list-with-a-given-group-size then doing Async.Parallel on each chunk of 10
2015-03-05 06:25:52 +0100 <fading> not optimum but works for now
2015-03-05 06:57:38 +0100 <solatis> doesn't have F# some higher level job dispatching / message queuing framework for this?
2015-03-05 06:58:17 +0100 <Lions> mailboxprocessor
2015-03-05 06:58:23 +0100 <Lions> s/framework/type
2015-03-05 07:25:58 +0100ddddd(~ddd@63-144-74-107.dia.static.qwest.net) (Read error: Connection reset by peer)
2015-03-05 07:28:21 +0100ddddd(~ddd@63-144-74-107.dia.static.qwest.net)
2015-03-05 07:31:40 +0100mizu_no_oto(~textual@65.125.159.13)
2015-03-05 07:38:54 +0100Submarine(~toosexy@wikipedia/Monniaux/David)
2015-03-05 07:40:14 +0100 <fading> yea, thats what a couple of the real solutions suggested... but I didn't understand them at first glance... so just punted :P
2015-03-05 07:52:05 +0100mizu_no_oto(~textual@65.125.159.13) (Quit: Computer has gone to sleep.)
2015-03-05 07:53:32 +0100Lions(~luins@50.107.31.17) (Quit: Leaving)
2015-03-05 07:57:04 +0100swgillespie(~textual@104.156.100.234) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
2015-03-05 07:57:48 +0100Submarine(~toosexy@wikipedia/Monniaux/David) (Quit: Leaving)
2015-03-05 07:59:39 +0100swgillespie(~textual@104.156.100.234)
2015-03-05 08:06:47 +0100davesq(uid1884@gateway/web/irccloud.com/x-clutmepcquikyjzr) (Quit: Connection closed for inactivity)
2015-03-05 08:07:54 +0100swgillespie(~textual@104.156.100.234) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
2015-03-05 08:43:24 +0100tarkus(~hello@109.230.140.12)
2015-03-05 09:00:53 +0100riksteri(~purple@dsl-tkubrasgw3-54f96b-216.dhcp.inet.fi) (Ping timeout: 240 seconds)
2015-03-05 09:12:58 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 272 seconds)
2015-03-05 09:16:29 +0100Rotaerk(~Rotaerk@c-174-54-255-117.hsd1.pa.comcast.net) (Read error: Connection reset by peer)
2015-03-05 09:42:55 +0100martintrojer(~martintro@cpc5-bmly8-2-0-cust9.2-3.cable.virginm.net)
2015-03-05 09:44:05 +0100martintrojer(~martintro@cpc5-bmly8-2-0-cust9.2-3.cable.virginm.net) (Max SendQ exceeded)
2015-03-05 09:44:19 +0100martintrojer(~martintro@cpc5-bmly8-2-0-cust9.2-3.cable.virginm.net)
2015-03-05 09:49:08 +0100kini1(kini@gateway/vpn/mullvad/x-jitnaomhoektnlwm) (Remote host closed the connection)
2015-03-05 09:49:15 +0100StarBrilliant1(StarBrilli@gateway/vpn/mullvad/x-yjkdlhppfwocvmnb)
2015-03-05 10:07:07 +0100sevensharp9(uid70416@gateway/web/irccloud.com/x-bncnujqdwhlrtknx) ()
2015-03-05 10:09:26 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 10:13:55 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 244 seconds)
2015-03-05 10:15:59 +0100ned0(~ned--@50.153.130.3) (Ping timeout: 246 seconds)
2015-03-05 11:00:52 +0100dav(~david@unaffiliated/dav) (Ping timeout: 255 seconds)
2015-03-05 11:00:53 +0100dav__(~david@unaffiliated/dav)
2015-03-05 11:58:04 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 12:01:29 +0100tarkus(~hello@109.230.140.12) (Ping timeout: 245 seconds)
2015-03-05 12:03:20 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 272 seconds)
2015-03-05 12:14:59 +0100solatis(~solatis@49.156.41.254) (Ping timeout: 246 seconds)
2015-03-05 12:27:14 +0100brkpnt_(~quassel@190.48.151.8)
2015-03-05 12:39:19 +0100brkpnt_(~quassel@190.48.151.8) (Remote host closed the connection)
2015-03-05 12:54:03 +0100qxjit(~qxjit@162.17.112.173)
2015-03-05 13:00:16 +0100Associat0r(~Associat0@h0129.upc-h.chello.nl)
2015-03-05 13:00:16 +0100Associat0r(~Associat0@h0129.upc-h.chello.nl) (Changing host)
2015-03-05 13:00:16 +0100Associat0r(~Associat0@unaffiliated/associat0r)
2015-03-05 13:12:31 +0100VandroiyIIIVandroiy
2015-03-05 13:13:50 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 13:18:47 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 252 seconds)
2015-03-05 13:23:37 +0100sevensharp9(~dave@unaffiliated/sevensharp9)
2015-03-05 13:27:06 +0100sevensharp9(~dave@unaffiliated/sevensharp9) (Client Quit)
2015-03-05 13:28:12 +0100sevensharp9(~Adium@unaffiliated/sevensharp9)
2015-03-05 13:32:10 +0100sevensharp9(~Adium@unaffiliated/sevensharp9) (Client Quit)
2015-03-05 13:34:49 +0100sevensharp9(~Adium@unaffiliated/sevensharp9)
2015-03-05 13:36:35 +0100sevensharp9(~Adium@unaffiliated/sevensharp9) ()
2015-03-05 13:36:37 +0100sevensharp9(~Adium@unaffiliated/sevensharp9)
2015-03-05 13:50:41 +0100qxjit(~qxjit@162.17.112.173) (Ping timeout: 252 seconds)
2015-03-05 14:14:38 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 14:20:59 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 246 seconds)
2015-03-05 14:40:28 +0100sevensharp9(~Adium@unaffiliated/sevensharp9) ()
2015-03-05 14:40:41 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 14:43:28 +0100SimonJFSimonJF_
2015-03-05 14:43:41 +0100SimonJF_SimonJF
2015-03-05 14:45:39 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 264 seconds)
2015-03-05 14:52:06 +0100blakef(~blakef@cpc11-slam5-2-0-cust42.2-4.cable.virginm.net)
2015-03-05 14:53:56 +0100 <blakef> Hi, learning the language and I need a little help understanding some of the documentation on MSDN.
2015-03-05 14:54:25 +0100 <blakef> If I look at the docs for the List module, a value has (a type description?) of: append : 'T list -> 'T list -> 'T list
2015-03-05 14:54:51 +0100 <blakef> What am I looking at here? Why is it 'T (T prime?).
2015-03-05 14:55:39 +0100 <blakef> Same goes for: average : 'T list -> ^T
2015-03-05 14:56:00 +0100 <TEttinger> 'T is a generic type parameter
2015-03-05 14:56:09 +0100 <TEttinger> it can usually be inferred
2015-03-05 14:56:23 +0100riksteri(~purple@dsl-tkubrasgw3-54f96b-216.dhcp.inet.fi)
2015-03-05 14:56:33 +0100 <TEttinger> the prime just means it's a type parameter, and not a variable named T
2015-03-05 14:56:42 +0100 <blakef> TEttinger: ok
2015-03-05 14:57:54 +0100 <blakef> TEttinger: is the term 'type signature'?
2015-03-05 14:58:24 +0100 <TEttinger> yeah, that's what I'd call it. I'm no expert in F# though
2015-03-05 15:04:23 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 15:05:04 +0100 <Kristallo> so two lists in and one list out, all of the same type
2015-03-05 15:05:22 +0100 <blakef> Kristallo: and ^T?
2015-03-05 15:11:27 +0100TEttinger(~notostrac@76-217-24-241.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 264 seconds)
2015-03-05 15:21:10 +0100 <Kristallo> The ^ means that it must be resolved at compile time
2015-03-05 15:21:13 +0100qxjit(~qxjit@162.17.112.173)
2015-03-05 15:21:16 +0100 <Kristallo> blakef
2015-03-05 15:21:25 +0100 <blakef> Kristallo: thanks, much appreciated.
2015-03-05 15:22:46 +0100 <Kristallo> I am beginning to think that some sort of introduction to F# should be made
2015-03-05 15:23:12 +0100 <Kristallo> there is very little suitable material
2015-03-05 15:38:37 +0100StarBrilliant1(StarBrilli@gateway/vpn/mullvad/x-yjkdlhppfwocvmnb) (Remote host closed the connection)
2015-03-05 15:38:40 +0100aljungberg(aljungberg@gateway/vpn/mullvad/x-bdqynrkrzgltwkma)
2015-03-05 15:50:53 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 256 seconds)
2015-03-05 15:54:21 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 15:56:46 +0100Rotaerk(~Rotaerk@c-174-54-255-117.hsd1.pa.comcast.net)
2015-03-05 16:24:38 +0100fading(~fading@user-0c8gi4n.cable.mindspring.com) ()
2015-03-05 16:25:24 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 244 seconds)
2015-03-05 16:38:48 +0100leeN(~leeN@g227214070.adsl.alicedsl.de)
2015-03-05 16:58:16 +0100sevensharp9(~Adium@unaffiliated/sevensharp9)
2015-03-05 17:00:11 +0100darkf(~darkf___@unaffiliated/darkf) (Quit: Leaving)
2015-03-05 17:00:49 +0100 <S11001001> Kristallo: expert f# seems fine as an intro
2015-03-05 17:01:24 +0100 <Kristallo> I have that and it is hopeless for a beginner
2015-03-05 17:01:25 +0100mizu_no_oto(~textual@65.125.159.13)
2015-03-05 17:01:39 +0100 <sevensharp9> Mainly thing is 10,000 hours of practice
2015-03-05 17:02:08 +0100 <Kristallo> yes, but many people give up quickly when there is nothing that makes sense at all
2015-03-05 17:02:24 +0100 <sevensharp9> I like expert F#, i still find baffling parts
2015-03-05 17:02:50 +0100 <Kristallo> yes, but it assumes that people know a lot of things that many beginners don't
2015-03-05 17:03:14 +0100 <sevensharp9> maybe the "expert" part signifies this
2015-03-05 17:03:15 +0100 <ddddd> are you an engineer? :)
2015-03-05 17:03:21 +0100 <blakef> lol
2015-03-05 17:03:42 +0100 <S11001001> sevensharp9: I think it starts pretty early and covers everything.
2015-03-05 17:03:55 +0100 <S11001001> sevensharp9: about the language, that is
2015-03-05 17:04:09 +0100 <sevensharp9> It misses some parts out
2015-03-05 17:04:28 +0100 <sevensharp9> Well, covers them too quickly to do them justice
2015-03-05 17:05:26 +0100 <Kristallo> "F# is a strongly -typed functional programming language designed to empower programmers and domain experts to write simple, robust code to solve complex problems. It combines the succinctness, expressivity, efficiency, and compositionality of typed functional programming with the runtime support, libraries, interoperability, tools, and object models of modern programming frameworks."
2015-03-05 17:05:32 +0100 <Kristallo> it starts like that
2015-03-05 17:05:39 +0100 <Kristallo> most people would put it away after that
2015-03-05 17:05:50 +0100 <ddddd> you cant read f# for scientists without being a scientist O_O
2015-03-05 17:06:29 +0100 <sevensharp9> If I had done my book, you probably would of threw it away :-)
2015-03-05 17:07:05 +0100 <Kristallo> I had no problem getting through th ebook but I did not learn much F# per page
2015-03-05 17:07:27 +0100 <S11001001> Kristallo: I think "most people" is an unfair generalization.
2015-03-05 17:07:45 +0100 <sevensharp9> Ive read it all
2015-03-05 17:07:55 +0100 <Kristallo> I am talking about beginners
2015-03-05 17:07:56 +0100 <sevensharp9> Ive read all the F# book to be honest
2015-03-05 17:08:08 +0100 <Kristallo> there is very little documentation for them
2015-03-05 17:08:30 +0100 <sevensharp9> What about the book of F#?
2015-03-05 17:08:53 +0100 <Kristallo> I have not read that one so I don't know
2015-03-05 17:08:58 +0100 <sevensharp9> That has the most coverage on quotations, admittedly not much still.
2015-03-05 17:09:13 +0100 <S11001001> Kristallo: Yes. You're making an unfair generalization about beginners.
2015-03-05 17:09:14 +0100 <sevensharp9> No books cover TP construction and issues
2015-03-05 17:09:46 +0100 <Kristallo> if you pick a random guy on the street and give him Expert F# to read he will punch your face
2015-03-05 17:09:55 +0100 <sevensharp9> The first F# book I read was Tomas'
2015-03-05 17:10:12 +0100 <sevensharp9> I nodded off a few times :-)
2015-03-05 17:10:31 +0100 <sevensharp9> It was still a good book, and led me to where I am today
2015-03-05 17:10:39 +0100 <S11001001> Kristallo: Now, if I were to say now, "most beginners would understand a summarizing definition when they saw one and would read on for a gentler dissection of that definition"
2015-03-05 17:11:20 +0100 <S11001001> Kristallo: You have no reason to state your definition of "beginners" has any claim to authority than the one I have just given.
2015-03-05 17:12:07 +0100 <S11001001> Kristallo: Now, if you want to talk about *your own* experience with it, that's fine.
2015-03-05 17:12:07 +0100 <Kristallo> I disagree
2015-03-05 17:12:23 +0100 <S11001001> Kristallo: Don't try to draft a group of people you don't have a special understanding of to your cause.
2015-03-05 17:13:05 +0100 <sevensharp9> I would say most books on F# have too much academic exercises in
2015-03-05 17:13:33 +0100 <sevensharp9> aka crap examples
2015-03-05 17:13:48 +0100 <Kristallo> I draft whoever I want, it is not up to you to decide
2015-03-05 17:14:09 +0100 <sevensharp9> "Heres a monad that adds three numbers" kind of thing
2015-03-05 17:15:38 +0100 <S11001001> Kristallo: and I have no reason to believe that those soldiers would actually back you when you arrive on the battlefield.
2015-03-05 17:18:13 +0100 <S11001001> Kristallo: The claim to have a privileged understand of "how beginners think" is kind of like the claim to have a privileged understanding of "what users want".
2015-03-05 17:18:58 +0100 <S11001001> Kristallo: Even beginners cannot make that claim, because their experiences are specific to them.
2015-03-05 17:21:10 +0100 <S11001001> I recently showed proofs in dependent types to someone who isn't generally interested in types, and that engaged them more than anything about type systems they've ever seen elsewhere. Am I to take this as a general sign that the way to get people interested in types is to show proofs in agda, idris, or coq? Certainly not. There is merely a subset of
2015-03-05 17:21:10 +0100 <S11001001> "beginners" that may find those particularly compelling; this example is no sign that it is a general aspect of behavior for beginners.
2015-03-05 17:22:01 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 17:26:49 +0100rgrinberg(~rgrinberg@66.49.150.167) (Ping timeout: 252 seconds)
2015-03-05 17:29:35 +0100ned0(~ned--@50.153.129.156)
2015-03-05 17:36:10 +0100ned0(~ned--@50.153.129.156) (Read error: Connection reset by peer)
2015-03-05 17:41:04 +0100bjorkintosh(~bjork@ip68-13-229-200.ok.ok.cox.net) (Ping timeout: 245 seconds)
2015-03-05 17:42:22 +0100sevensharp9(~Adium@unaffiliated/sevensharp9) ()
2015-03-05 17:46:02 +0100SuneAlkaersig(~sunealkae@4103ds5-by.0.fullrate.dk)
2015-03-05 17:47:12 +0100mizu_no_oto(~textual@65.125.159.13) (Quit: Computer has gone to sleep.)
2015-03-05 17:47:58 +0100ned(~ned--@50.153.129.156)
2015-03-05 17:51:34 +0100joneshf-laptop(~joneshf@98.208.35.89)
2015-03-05 18:04:21 +0100bjorkintosh(~bjork@ip68-13-229-200.ok.ok.cox.net)
2015-03-05 18:20:20 +0100rgrinberg(~rgrinberg@66.49.150.167)
2015-03-05 18:33:17 +0100mizu_no_oto(~textual@rrcs-74-87-136-210.west.biz.rr.com)
2015-03-05 18:34:43 +0100{AS}(uid45026@gateway/web/irccloud.com/x-bqorfmlcejhowqhs)
2015-03-05 18:35:55 +0100 <{AS}> Hi everyone, what mature F# framework would you recommend to build Single-page applications? (Preferably a framework that can be developed cross-platform and not only Windows). Thanks!
2015-03-05 18:44:59 +0100 <Kristallo> framework as in graphical user interface?
2015-03-05 18:47:21 +0100mizu_no_oto(~textual@rrcs-74-87-136-210.west.biz.rr.com) (Quit: Computer has gone to sleep.)
2015-03-05 18:47:46 +0100 <{AS}> as in web framework for HTML(5)/JS applications
2015-03-05 18:48:11 +0100 <{AS}> with some live backend
2015-03-05 18:48:30 +0100 <{AS}> that preferably has nice auth support
2015-03-05 18:52:16 +0100 <Kristallo> have you looked at: http://fsharp.org/guides/web/index.html
2015-03-05 18:54:13 +0100 <{AS}> Kristallo: Yeah, thanks. I was just unsure which one was most suitable :)
2015-03-05 18:54:23 +0100 <{AS}> and was wondering if I could get some more subjective input
2015-03-05 18:55:58 +0100 <{AS}> It looks like WebSharper is the most highlighted
2015-03-05 18:59:24 +0100 <ned> ive heard good things about nancyfx
2015-03-05 18:59:27 +0100Associat0r(~Associat0@unaffiliated/associat0r) (Quit: Associat0r)
2015-03-05 18:59:53 +0100 <Kristallo> I have not used any enough to say what works well
2015-03-05 19:00:07 +0100 <{AS}> Kristallo: Oh, OK thanks for the reference anyway.
2015-03-05 19:00:20 +0100 <{AS}> ned: I have looked a bit at Nancy
2015-03-05 19:00:45 +0100 <{AS}> any mentions on pros/cons?
2015-03-05 19:01:11 +0100 <ned> haven't used it extensively. most people really, to be honest, don't write tehir whole web app in F#
2015-03-05 19:01:37 +0100 <ned> they compartmentalize logic into a F# project, then have another project that's C# MVC with knockout or angular in the solution
2015-03-05 19:02:08 +0100 <{AS}> Ah, yeah that is also the way I have done my old web apps :)
2015-03-05 19:02:24 +0100 <{AS}> Mostly why I am looking for a full F# solution now
2015-03-05 19:03:07 +0100 <ned> afaik there isn't a good SPA -> F# mesh as it stands, but feel free tow rite one and toss it on nuget and github :D
2015-03-05 19:03:18 +0100 <{AS}> :D
2015-03-05 19:15:51 +0100SuneAlkaersig(~sunealkae@4103ds5-by.0.fullrate.dk) (Remote host closed the connection)
2015-03-05 19:19:38 +0100sevensharp9(~Adium@unaffiliated/sevensharp9)
2015-03-05 19:21:08 +0100 <sevensharp9> I always say "The hardest part of F# is all the C#" Nightmare day dealing with object dependency chains
2015-03-05 19:21:24 +0100 <sevensharp9> meh
2015-03-05 19:22:37 +0100 <ned> sevensharp9, not as bad as cabal hell in haskell.
2015-03-05 19:22:38 +0100 <ned> ;)
2015-03-05 19:23:43 +0100malbertife(~malbertif@host201-63-dynamic.16-87-r.retail.telecomitalia.it)
2015-03-05 19:34:59 +0100Stalkr_(~Stalkr@x1-6-74-44-01-e5-78-62.cpe.webspeed.dk)
2015-03-05 19:38:03 +0100sevensharp9(~Adium@unaffiliated/sevensharp9) ()