Skip to content

Commit a820518

Browse files
committed
Trying some laziness profiling
1 parent da7f9d4 commit a820518

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
dist/
22
*.hi
3-
*.o
3+
*.o
4+
*.hp
5+
*.aux
6+
*.prof

Broadcast.hs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -231,12 +231,17 @@ buildPrivateMessage :: User ->
231231
String ->
232232
((Handle, MVar ()), ClientMessage)
233233
buildPrivateMessage to fromName msg =
234-
(connection to, CPrivateMessage fromName msg)
234+
let cMessage = CPrivateMessage fromName msg
235+
conn = connection to in
236+
(conn `seq` conn, cMessage `seq` cMessage)
235237

236238
buildRoomMessages :: Room ->
237239
String ->
238240
String ->
239241
[((Handle , MVar ()), ClientMessage)]
240242
buildRoomMessages room from msg =
241-
map (\u -> (connection u, CRoomMessage from (roomName room) msg))
243+
map (\u ->
244+
let cMessage = CRoomMessage from (roomName room) msg
245+
conn = connection u in
246+
(conn `seq` conn, cMessage `seq` cMessage))
242247
(filter (\u -> userName u /= from) (users room))

0 commit comments

Comments
 (0)