Hi, Not a thourough analysis of your code, but still one remark at least :
For each of your files that are part of a namespace but the main file, you should consider placing an (in-ns 'name.of.the.loading.ns) call at the top of the file. This will help IDEs, and also you when you just want to reload that particular file HTH, -- Laurent 2009/4/29 Chris McClellen <chris.mcclel...@gmail.com>: > > > I wanted to write an example server in clojure to show some folks at > the office what a full from the ground up application might look like > in clojure. I wanted a non-trivial example, but not one so complex > that a new clojure user wouldn't understand it. I had ported some > decent algorithms we used over to clojure and was impressed at the > expressiveness (moving something that took 500+ lines to express in a > more popular language down to 71 sloc). However, that effort was not > an application, just a set of functions running against test data. > > I ended up writing a chat server in clojure, thats weighs in at about > 189 lines of code (not counting comments and blank lines). I am > fairly new to clojure so I was hoping people could take a look at it > and give constructive comments about what I did right and what I did > wrong. > > The server implements users, chat rooms, private messaging and so > forth. It also uses the concurrency built in so I could attempt to > show off the concurrent nature of clojure to my colleagues. > > Some things to note: > > * I am new to clojure. I have about 4 weeks of experience now, about > half of it spent reading up on clojure so I could write this thing. I > am sure the code will show that off :( > * I realize there is a specification for IRC. I wanted something > simpler. > * This server is just an example, and it is built around people using > telnet to connect to it. It is not robust. Simple things like a > client not reading its input will eventually hang a user thread. > * Lots of IO, so unfortunately, quite a bit of side effects. > > I'll probably add features over time. But please, look at it and give > me feedback so I can get better at clojure. > > Here's the link > > http://github.com/cmcclellen/crm.chat-server/tree/master > > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---