<    April 2017    >
Su Mo Tu We Th Fr Sa  
 2  3  4  5  6  7  8  
 9 10 11 12 13 14 15  
16 17 18 19 20 21 22  
23 24 25 26 27 28 29  
00:05 Rodya_ joined
00:12 rstefanic joined
00:16 geekosaur joined
00:18 peterbecich joined
00:34 newhoggy joined
00:41 Pupnik joined
00:52 takle joined
01:05 ephemeral joined
01:07 Rodya_ joined
01:15 newhoggy_ joined
01:19 takle joined
01:21 newhoggy joined
01:26 takle joined
01:26 newhoggy_ joined
01:34 newhoggy joined
01:39 binaryplease joined
01:39 newhoggy_ joined
01:40 eacameron joined
01:45 eacameron joined
01:48 eacamero_ joined
01:49 Rodya_ joined
01:51 takle joined
01:52 Pupnik_ joined
02:04 takle joined
02:04 godfrey joined
02:04 arquebus joined
02:05 <godfrey> guys any idea how to start playing around with quickcheck?
02:07 <glguy> I'd start by reading the "quickcheck manual" as linked from the documentation
02:13 louispan joined
02:19 MotherFl1 joined
02:35 takle joined
02:36 louispan joined
02:38 zero_byte joined
02:42 takle joined
02:43 exferenceBot joined
02:48 hexagoxel joined
02:48 eacamero_ joined
02:53 eacameron joined
02:53 aarvar joined
02:57 eacamero_ joined
03:33 nicknovi1 joined
03:35 newhoggy joined
03:36 Rodya_ joined
03:46 cschneid_ joined
03:47 conal joined
03:48 takle joined
03:50 newhoggy joined
03:51 eacameron joined
03:53 malaclyps joined
03:54 mengu joined
03:56 louispan joined
04:02 newhoggy joined
04:06 newhoggy joined
04:15 newhoggy joined
04:20 kadoban joined
04:24 newhoggy joined
04:29 newhoggy joined
04:35 nomotif joined
04:36 takle joined
04:37 Rodya_ joined
04:38 newhoggy joined
04:48 newhoggy joined
04:52 newhoggy_ joined
05:02 newhoggy joined
05:04 louispan joined
05:04 takle joined
05:07 Pupnik joined
05:09 newhoggy joined
05:11 nomotif joined
05:11 pixelfog_ joined
05:17 newhoggy joined
05:28 TerNit joined
05:29 newhoggy joined
05:31 aarvar joined
05:32 <TerNit> Hello! How to make runMyRWT? https://paste.pound-python.org/show/eMRMwTp6nqdrBghHFmqg/
05:36 hphuoc25 joined
05:42 newhoggy joined
05:46 newhoggy_ joined
05:48 peterbecich joined
05:49 conal joined
05:50 peterbecich joined
05:53 newhoggy joined
05:58 <zaquest> TerNit, you have a wrong return type, should be `m (a, String)`
06:00 <TerNit> zaquest: Thank you
06:01 <TerNit> zaquest: I do myTell now.
06:01 newhoggy joined
06:04 <zaquest> TerNit, myTell has a wrong type too.
06:04 <zaquest> :t tell
06:04 <lambdabot> MonadWriter w m => w -> m ()
06:06 <zaquest> MonadWriter w m where w is a monoid that is being written in your monad, in your case String
06:06 <zaquest> and your monad is `MyRWT m`
06:06 <TerNit> zaquest: Thank you, its right
06:10 newhoggy joined
06:17 ebw joined
06:18 newhoggy joined
06:20 TerNit joined
06:26 newhoggy joined
06:27 takle joined
06:35 eacameron joined
06:36 <ebw> Hi, at work I am a C and Go programmer and I think it shows here http://lpaste.net/355074 especially in the where clause to caesarChar. Could someone suggest alternatives, which don't look so imperative? (I am an absolute Haskell beginner.)
06:38 <ebw> Oh and a beginner with functional stuff too. So please help me :)
06:38 <ebw> Maybe some is bribed by that? https://photos.smugmug.com/Humor/Lambdacats/i-kF6bwjz/3/671fc7c6/O/type_error.jpg
06:38 <glguy> other than the f.g$x it looks just fine
06:38 louispan joined
06:39 <ebw> What would be an alternative for f.g$x which might look better?
06:39 <glguy> f (g x) like you had in other places
06:40 eacamero_ joined
06:40 <ebw> thank you
06:40 <LiaoTao> glguy: What's wrong with f $ g x?
06:40 <LiaoTao> Or am I completely off
06:40 newhoggy joined
06:40 <glguy> its just not necessary in a small bit of code like that
06:41 <ebw> I had f.g$x not f $ g x but f $ g x looks also nice.
06:41 <glguy> it didn't look imperative to me. I liked that you named the steps for converting the number
06:42 <ebw> lol that was sarcasm, wasn't it? I just looked at it and thought I should turn bc, o, ci and cc into proper words.
06:43 <glguy> not really, I understood the bc as base character, o as offset, etc
06:44 <glguy> the steps made sense
06:44 eacameron joined
06:45 <ebw> cool, thanks for the chit chat
06:46 takle joined
06:47 Levex joined
06:48 newhoggy joined
06:48 eacamero_ joined
06:52 Levex joined
06:52 nobodyzxc joined
06:52 eacameron joined
06:55 newhoggy joined
06:55 TerNit left
06:57 eacameron joined
06:58 <lpaste> ebw pasted “No title” at http://lpaste.net/355075
06:59 <ebw> Would myReverse2 in http://lpaste.net/355075 be more efficient then myReverse ? And how can I add a signature to go in the where clause?
07:00 Levex joined
07:01 <glguy> yes, it would be more efficient
07:02 newhoggy joined
07:02 <jle`> ebw: you can add a type signature on the line before go, aligned with it
07:02 <glguy> you can put type signatures in where clauses
07:02 <lpaste> jle` annotated “No title” with “No title (annotation)” at http://lpaste.net/355075#a355076
07:02 <jle`> i added an annotation with how the syntax would work
07:03 <ebw> Thanks! You guys are awesome!
07:03 <glguy> do note that any type variable in the type signature of the where clause will be fresh. that is it won't be related to the outer signature
07:03 <jle`> no problem! note that by default, type variables in haskell aren't scoped
07:04 <glguy> that's fine in this case
07:04 <jle`> i used a different type variable in my annotation
07:04 Gurkenglas joined
07:04 <glguy> also note that jle` and I have the same script
07:04 <jle`> but if i had used go :: [a] -> [a] -> [a], i'm "shadowing" the 'a' type variable with a new type variable
07:05 <ebw> glguy: What do you mean by 'have the same script' ?
07:06 <glguy> by the time I press send on my phone, I see that jle` already said what I wanted to
07:08 <ebw> Would myReverse2 be considered "premature optimization"? Or does it just get 'into the blood' to use ':' over '++' where easily possible?
07:08 eacameron joined
07:08 <jle`> the instinct is that you don't want to traverse a list more times than you need to
07:09 <jle`> it's supposed to give you a disgusting feeling
07:09 <jle`> since lists are meant to be used as "streaming" data structures
07:09 Denthir joined
07:09 takle joined
07:09 <jle`> `xs ++ ys` completely traverses and re-allocates xs every single time you use it
07:09 newhoggy joined
07:10 <jle`> so if your list is length n, myReverse is essentially re-traversing your list n times
07:10 <jle`> and is re-allocating it just as many times
07:10 <jle`> it's O(n^2) like that, if you're familiar with big-O notation
07:10 <ebw> big-O is fine.
07:11 <jle`> ++ itself isn't bad, but using it repeatedly in this way is one of the things people like to avoid
07:11 <jle`> it's considered a common gotcha with using (++) -- don't do it repeatedly to add things to the end
07:12 <ebw> For simple functions, is there a compiler optimization, that rewrites that? (I have no clues if that is possible as I have very little knowledge about compiler construction.)
07:12 <jle`> it's not really possible to rewrite in general, i think, because the algorithm itself is an O(n^2) algorithm
07:13 <jle`> the best you can do is for special cases
07:13 <ebw> Ok, thanks for your time.
07:13 <jle`> but in the general case it's just "oh this algorithm is O(n^2), i will replace it with an identical O(n) algorithm"
07:13 <jle`> which would be just as magical as it sounds
07:13 <jle`> every usage of (++) is O(n), and you do it n times
07:14 <jle`> the reason that myReverse2 avoids this is becuase it only does a single traversal of the list
07:14 <jle`> notice that you only "step" through the list once, before returning your rseult
07:15 <jle`> (this distinction is obscured kind of, because you use (++), but if you manually unrolled the definition of (++), the difference would be more obvious)
07:16 <ebw> I didn't thought about that i these terms, I just tried to use ':' over '++' as I read it is more efficient. Next time I see 'lhs ++ rhs' I will think, oh that traverses 'lhs', pay attention!
07:16 <ebw> yes. That I see now. :)
07:16 <jle`> looks like you got it :)
07:17 pungi-man joined
07:19 newhoggy joined
07:23 takle joined
07:23 delexi joined
07:26 newhoggy joined
07:32 newhoggy joined
07:38 Levex joined
07:40 newhoggy joined
07:42 NeverDie_ joined
07:47 cschneid_ joined
07:50 louispan joined
07:56 newhoggy joined
08:07 zero_byte joined
08:14 newhoggy joined
08:22 cschneid_ joined
08:24 takle joined
08:24 Denthir joined
08:25 m` joined
08:30 takle joined
08:32 <ebw> Can I search for functions in the standard library by signature somehow?
08:33 <geekosaur> @where hoogle
08:33 <lambdabot> http://haskell.org/hoogle http://fpcomplete.com/hoogle – See also Hayoo, which searches more packages: http://hayoo.fh-wedel.de/
08:33 <geekosaur> also installable locally for command line use, although you'll have to build the db yourself
08:33 <ebw> thanks
08:34 <geekosaur> I should mention there are two official hoogles :/ hoogle.haskell.org is more up to date but searching by type is apparently still broken; haskell.org/hoogle has out of date indexes but working signature search
08:35 <geekosaur> and hayoo isn't quite as good at fuzzy matching of signatures
08:36 Durz0 joined
08:47 aarvar joined
09:12 MotherFl1 joined
09:20 MotherFl1 joined
09:28 haskelleksah joined
09:29 eacameron joined
09:32 eacameron joined
09:33 crave joined
09:34 <crave> Hello fellow humans!
09:35 <LiaoTao> Hello fellow meatbag
09:35 <crave> What does a functional dependency between two types mean in a class declaration?
09:35 <crave> LiaoTao, I am humbled.
09:36 thc202 joined
09:36 <crave> Ah I found the wiki for it.
09:36 <srhb> crave: That one or more parameter (type) is detemermined by one or more parameter (types)
09:37 <srhb> `class Foo a b | a -> b` can be read as Class Foo a b where a determines b
09:37 newhoggy joined
09:39 eacameron joined
09:42 Glooomy joined
09:45 eacameron joined
09:46 newhoggy joined
09:48 eacamero_ joined
09:49 MotherFlojo joined
09:51 grayjoc joined
09:51 yellowj joined
09:54 kritzcreek joined
10:03 moll joined
10:23 cschneid_ joined
10:25 dito_ joined
10:26 <dito_> hi guys
10:26 mengu joined
10:27 <dito_> i need help with using https://github.com/bos/text-icu
10:27 <dito_> how do I link to it properly when using stack?
10:27 <dito_> I did stack install text-icu --extra-include-dirs=C:\icu4c-59_1-Win64-MSVC2015\include --extra-lib-dirs=C:\icu4c-59_1-Win64-MSVC2015\lib64
10:28 <dito_> and I tried putting the dll into my .stack-work\install\28cbf0ed\bin folder
10:28 <dito_> but when I try stack build I get
10:28 <dito_> ghc.EXE: unable to load package `text-icu-' ghc.EXE: addDLL: icuuc59.dll (Win32 error 126): The specified module could not be found. ghc.EXE: Could not load `icuuc59.dll'. Reason: addDLL: could not load DLL
10:28 <dito_> what am I doing wrong?
10:32 eacameron joined
10:44 eacameron joined
10:47 Denthir joined
10:50 newhoggy joined
10:54 delexi joined
10:54 vaibhavsagar joined
11:03 bvad joined
11:05 eacameron joined
11:10 romank joined
11:11 eacameron joined
11:12 romank joined
11:14 romank joined
11:16 eacameron joined
11:18 louispan joined
11:19 MotherFlojo joined
11:22 eacameron joined
11:25 binaryplease joined
11:26 eacamero_ joined
11:32 noumenon joined
11:33 romank joined
11:37 pbrant joined
11:37 Sose_ joined
11:38 newhoggy joined
11:46 romank joined
11:46 newhoggy joined
11:49 romank joined
11:55 eacameron joined
11:59 newhoggy joined
12:02 romank joined
12:02 howdoi joined
12:05 romank joined
12:05 newhoggy joined
12:07 eacameron joined
12:16 eacameron joined
12:20 eacameron joined
12:24 newhoggy joined
12:27 eacameron joined
12:29 mengu joined
12:30 contiver joined
12:30 ebw joined
12:31 <ebw> If I have two functions f :: a -> b -> c and g :: c -> d is there an standard infix function to do (\x y -> g(f x y))
12:34 haskelleksah joined
12:34 binaryplease1 joined
12:42 banseljaj joined
12:43 feepo joined
12:43 mbrcknl joined
12:48 saylu joined
12:49 nullcone joined
12:50 <Akii> that was fun http://lpaste.net/355083
12:52 kritzcreek joined
12:53 w4and0er96 joined
13:05 LiaoTao joined
13:12 romank joined
13:14 eacameron joined
13:17 delexi joined
13:18 Denthir joined
13:21 eacameron joined
13:26 zaphyr joined
13:29 eacameron joined
13:35 wei2912 joined
13:37 <reptar_> how can i specify that this tree is of type Tree Int? http://lpaste.net/8845755308144852992
13:41 vaibhavsagar joined
13:45 romank joined
13:49 vaibhavsagar joined
13:56 <Gurkenglas> I'm having trouble setting up intero, anyone wanna hop on teamviewer and help?
13:58 <Gurkenglas> Akii, I woulda written that "(f .: g) x = f . g x; z = (> 3) .: (+)"
13:59 <Akii> :t (.:)
13:59 <lambdabot> error:
13:59 <lambdabot> • Variable not in scope: .:
13:59 <lambdabot> • Perhaps you meant one of these:
14:05 eacameron joined
14:11 newhoggy joined
14:11 wildlander joined
14:13 vaibhavsagar joined
14:25 asdfjkl joined
14:25 cschneid_ joined
14:26 vaibhavsagar joined
14:32 vaibhavsagar joined
14:37 MotherFlojo joined
14:37 <asdfjkl> hello! I created a stack project and executed "stack install random" for the System.Random module, but when I try to access it in a script it says "failed to load interface for System.Random". What did I do wrong or what did I forget to do?
14:38 <asdfjkl> I import it with "import System.Random" and then I try to do "random(mkStdGen 100)"
14:38 eacameron joined
14:38 newhoggy joined
14:38 romank joined
14:39 <MarcelineVQ> when you're using a project you add the dependency to your project's .cabal file to have access to it
14:40 <asdfjkl> ah ok, will do that. Thank you!
14:50 eacameron joined
14:51 netheranthem joined
14:54 newhoggy joined
14:54 vaibhavsagar joined
15:02 vaibhavsagar joined
15:09 vaibhavsagar joined
15:09 takle joined
15:10 takle joined
15:11 takle joined
15:13 takle joined
15:20 takle joined
15:28 pilne joined
15:32 zero_byte joined
15:34 Levex joined
15:35 takle joined
15:40 Denthir joined
15:52 <zaphyr> Hi, when I attempt to import Data.Time, I get an error
15:52 <zaphyr> "Failed to load interface for `Data.Time` It is a member of the hidden package `time-'"
15:53 <srhb> zaphyr: You need to add it to your projects dependencies
15:53 <zaphyr> doh, is that in cabal?
15:53 takle joined
15:54 <srhb> zaphyr: Yeah, build-depends :)
15:54 <zaphyr> nice, okay, will have a peek at the manual, thanks!
15:54 <srhb> zaphyr: There should already be at least base, and it's just a list, so you just need to add "time" to that :)
15:55 <zaphyr> oh, no need, that was easy. :)
15:55 <MarcelineVQ> your project has a something.cabal file thast srhb is talking about
15:55 <zaphyr> yep, just found the build-depends line and I'm on my way again, thanks guys!
15:55 <srhb> Welcome. :)
16:00 newhoggy joined
16:01 takle joined
16:11 Big_G joined
16:12 takle joined
16:13 meandi_2 joined
16:18 hphuoc25 joined
16:19 dummycode joined
16:23 nicknovi1 joined
16:23 takle joined
16:25 bvad joined
16:33 takle joined
16:40 crave joined
16:48 takle joined
16:49 eacameron joined
16:50 cschneid_ joined
16:52 Rodya_ joined
16:56 takle joined
17:03 takle joined
17:07 pixelfog_ joined
17:10 eacameron joined
17:17 takle joined
17:17 eacameron joined
17:24 takle joined
17:26 mengu joined
17:28 eacameron joined
17:31 Denthir joined
17:31 bvad joined
17:32 eacameron joined
17:32 takle joined
17:34 cschneid_ joined
17:39 eacameron joined
17:41 ebw joined
17:59 eacameron joined
18:05 eacameron joined
18:05 zaphyr_ joined
18:11 colt44 joined
18:12 takle joined
18:12 eacameron joined
18:15 zaphyr__ joined
18:17 <colt44> is there a way to ready values from an esqueleto entity as one can from records? - ie: (fielName value)
18:19 takle joined
18:19 crave joined
18:20 MotherFlojo joined
18:35 <srhb> colt44: Doesn't ^. do that?
18:36 <benzrf> does anybody here know much about the Summer of Haskell thing?
18:37 <srhb> Not beyond what's been posted on Reddit, I'm afraid..
18:37 <benzrf> hmm
18:38 <benzrf> i want to apply to it in case i don't get into gsoc, but i'm not totally sure what the policies are like for each
18:38 <srhb> I guess you should speak with a coordinator :)
18:39 <colt44> srhb: I get an user from yesod's requireAuth, but (userEmail ^. user) does not work.
18:39 <benzrf> srhb: who are the coordinators o:
18:40 <srhb> benzrf: Jasper Van der Jeugt and Niki Vazou, I think
18:40 <srhb> benzrf: https://summer.haskell.org/contact.html
18:40 <srhb> Technically the committee apparently.
18:40 yellowj joined
18:40 <benzrf> hm
18:41 <srhb> colt44: It should be Entity ^. EntityField, I believe
18:41 <benzrf> oh hmm
18:42 <colt44> srhb: I also tried getting the user by using requireAuthPair and then (userEmail user), since requireAuthPair returns a value not attached to an Entity
18:42 <benzrf> looks like the announcements for gsoc are actually right *before* soh applications end, haha
18:42 <srhb> benzrf: Ah, problem solved. :)
18:42 <benzrf> oh crap i meant to be asking in #haskell-blah this whole time, im not a beginner at all :X
18:43 <srhb> benzrf: I was wondering. :-)
18:43 <benzrf> my buffers are numbered differently because im not connected to all of my normal networks >.>
18:45 <simony> benzrf: still doesn't hurt to check and make sure. I don't know whether gsoc announcements ever had delays and such but it's something to take into account
18:45 mengu joined
18:45 <benzrf> mm
18:47 Gurkenglas joined
19:03 patbecich joined
19:04 hphuoc25 joined
19:06 dobson joined
19:11 nomotif joined
19:16 texasmynsted joined
19:17 skeet70 joined
19:21 takle joined
19:22 ickabob joined
19:29 takle joined
19:30 <colt44> srhb: I think it is some import or language extension. If I declare my model in the models file, it works just fine and it does not if I declare it in some other .hs file
19:33 jkachmar joined
19:33 jkachmar joined
19:39 hphuoc25 joined
19:40 Denthir joined
19:41 systemfault joined
19:46 mengu joined
19:51 shainer joined
20:05 mengu joined
20:22 mengu joined
20:27 malaclyps joined
20:34 hphuoc25 joined
20:35 Denthir joined
20:35 hphuoc25 joined
20:55 <srhb> colt44: Sounds like some template haskell staging issue.
20:56 <colt44> srhb: what do you mean?
21:05 turist joined
21:15 newhoggy joined
21:17 FMJaggy_ joined
21:22 texasmynsted joined
21:25 seanparsons joined
21:25 newhoggy joined
21:25 cschneid_ joined
21:35 texasmynsted joined
21:53 hiratara joined
21:57 newhoggy joined
22:16 Sose_ joined
22:17 carlomagno joined
22:20 aarvar joined
22:21 MotherFlojo joined
22:31 hiratara joined
22:33 geppettodivacin joined
22:38 alpounet joined
22:39 alpounet left
22:49 newhoggy joined
22:58 nicknovi1 joined
23:07 LiaoTao joined
23:17 nomotif joined
23:24 zero_byte joined
23:25 geekosaur joined
23:30 geekosaur joined
23:36 patbecich joined
23:38 lpaste joined
23:42 patbecich joined
23:47 takle joined
23:54 aarvar joined
23:58 louispan joined