Re: [Haskell-cafe] source code for haskell web server?

2006-09-28 Thread Einar Karttunen
On 27.09 13:03, Pasqualino 'Titto' Assini wrote:
 There is also the HAppS application server and the HaskellNet library.
 
 Would not be possible to merge the protocol-handling parts of all these
 libraries into a generic Internet Haskell server that could then be expanded
 to support CGIs, transactions, etc.?


It would be very nice to have a common format.

Historically HAppS has used ByteStrings in HTTP, while most other
libraries have used Strings.

The HAppS format is:
http://happs.org/auto/apidoc/HAppS-Protocols-HTTP-LowLevel.html#t%3ARequest

- Einar Karttunen
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] source code for haskell web server?

2006-09-28 Thread Einar Karttunen
On 28.09 15:33, Bulat Ziganshin wrote:
 Hello Einar,
 
 Thursday, September 28, 2006, 1:25:55 PM, you wrote:
 
  Historically HAppS has used ByteStrings in HTTP, while most other
  libraries have used Strings.
 
 why not use StringLike class here? you can find implementation at
 darcs get --partial http://darcs.haskell.org/SoC/fps-soc/

http://darcs.haskell.org/SoC/fps-soc/Data/Stringable.hs ?

1) Because it didn't exist at the time
2) Lots of code would need even more type parameters
3) Would still need specialize pragmas to get acceptable performance
4) No easy way of adding ByteStrings without unpacking first which is slow
5) One can already easily write functions that handle setting anything
string-like as the body.

But moving from [ByteString] into a lazy ByteString makes sense.

- Einar Karttunen
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


RE: [Haskell-cafe] source code for haskell web server?

2006-09-27 Thread Pasqualino 'Titto' Assini
There is also the HAppS application server and the HaskellNet library.

Would not be possible to merge the protocol-handling parts of all these
libraries into a generic Internet Haskell server that could then be expanded
to support CGIs, transactions, etc.?

Regards,

 titto 


 -Original Message-
 From: [EMAIL PROTECTED] [mailto:haskell-cafe-
 [EMAIL PROTECTED] On Behalf Of Bjorn Bringert
 Sent: 27 September 2006 12:15
 To: Tim Newsham
 Cc: Henning Thielemann; haskell-cafe Cafe
 Subject: Re: [Haskell-cafe] source code for haskell web server?
 
 On 4 sep 2006, at 20.24, Tim Newsham wrote:
 
  Since there are a lot of modifications of HWS around now, it seems
  to be
  worthwhile to combine the efforts. E.g. I adapted the HWS adaption
  provided by WASH
   http://www.informatik.uni-freiburg.de/~thiemann/WASH/#wsp
 for my needs. For instance in Request.hs I removed the call to
  'Network.URI.unEscapeString' (which is 'deHex' in fptools/HWS/
  Request.hs,
  but 'deHex' is 'id') because that affects interpretation of CGI
  parameters. I also think that this package needs some cleanup and
  Cabal.
 
  What about a darcs repository at http://darcs.haskell.org/ ?
 
  I agree its worthwhile to combine efforts.  My only concern is to
  maintain the code quality.  The original HWS was written quite
  well.  The plugins extension I found was not of the same code
  quality. I haven't looked at the WASH modifications, so I don't
  know how they compare.
 
  I dont know much about using the haskell.org repository, but I'd be
  happy to contribute to it if there was an HWS repository there...
 
 I seem to have duplicated Tim's efforts before I noticed this thread.
 In order to keep this from happening again, I have put up a darcs
 repo at http://darcs.haskell.org/hws/
 
 It contains the version from fptools-hws (http://cvs.haskell.org/cgi-
 bin/cvsweb.cgi/fptools/hws/) with the following modifications:
 
 - Use the hierarchical libraries.
 - Use Data.Map instead of FiniteMap.
 - Use Parsec from the hierarchical libraries and removed
the included old parsec copy.
 - Removed ifdefs for compatibility with GHC 4.x and 5.x
(they wouldn't work with the new imports anyway).
 - Use IOUArray in Response.squirt
 - Use Cabal for the build system.
 
 It now builds with GHC 6.4.1 and GHC 6.5 (if you add html and regex-
 compat to the build-depends).
 
 If any of you have any other updates, bugfixes etc., you are welcome
 to add them. Maybe we can even get Simon Marlow to update it with the
 current state-of-the art in high-performance concurrent Haskell?
 
 I'm thinking that we should try to keep this version reasonably close
 to Simon's original version, or at least its intent, and work on
 extra features in separate branches.
 
 /Björn___
 Haskell-Cafe mailing list
 Haskell-Cafe@haskell.org
 http://www.haskell.org/mailman/listinfo/haskell-cafe

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] source code for haskell web server?

2006-09-04 Thread Henning Thielemann

On Wed, 30 Aug 2006, Tim Newsham wrote:

  Does anyone know where I could find the source code for the Haskell web
  server described in the papers Tackling the Awkward Squad by SPJ and
  Writing High-Performance Server Applications in Haskell, Case Study: A
  Haskell Web Server by Simon Marlow?
 
 I dug up an old copy of hws from the haskell CVS and a copy of hws-wp
 from an old CVSweb and got both to build on modern ghc.  I'm using
 HWS as my server and have a small page with the sources which include
 my patches:
 
   http://www.thenewsh.com/~hws/
 
 Feel free to contact me with questions or suggestions.

Since there are a lot of modifications of HWS around now, it seems to be
worthwhile to combine the efforts. E.g. I adapted the HWS adaption
provided by WASH
  http://www.informatik.uni-freiburg.de/~thiemann/WASH/#wsp
for my needs. For instance in Request.hs I removed the call to
'Network.URI.unEscapeString' (which is 'deHex' in fptools/HWS/Request.hs,
but 'deHex' is 'id') because that affects interpretation of CGI
parameters. I also think that this package needs some cleanup and Cabal.

What about a darcs repository at http://darcs.haskell.org/ ?
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] source code for haskell web server?

2006-09-04 Thread Tim Newsham

Since there are a lot of modifications of HWS around now, it seems to be
worthwhile to combine the efforts. E.g. I adapted the HWS adaption
provided by WASH
 http://www.informatik.uni-freiburg.de/~thiemann/WASH/#wsp
   for my needs. For instance in Request.hs I removed the call to
'Network.URI.unEscapeString' (which is 'deHex' in fptools/HWS/Request.hs,
but 'deHex' is 'id') because that affects interpretation of CGI
parameters. I also think that this package needs some cleanup and Cabal.

What about a darcs repository at http://darcs.haskell.org/ ?


I agree its worthwhile to combine efforts.  My only concern is to maintain 
the code quality.  The original HWS was written quite well.  The plugins 
extension I found was not of the same code quality. I haven't looked at 
the WASH modifications, so I don't know how they compare.


I dont know much about using the haskell.org repository, but I'd be
happy to contribute to it if there was an HWS repository there...

Tim Newsham
http://www.thenewsh.com/~newsham/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] source code for haskell web server?

2006-08-31 Thread Henning Thielemann

On Wed, 30 Aug 2006, Tim Newsham wrote:

  Does anyone know where I could find the source code for the Haskell web
  server described in the papers Tackling the Awkward Squad by SPJ and
  Writing High-Performance Server Applications in Haskell, Case Study: A
  Haskell Web Server by Simon Marlow?
 
 I dug up an old copy of hws from the haskell CVS and a copy of hws-wp
 from an old CVSweb and got both to build on modern ghc.  I'm using
 HWS as my server and have a small page with the sources which include
 my patches:
 
   http://www.thenewsh.com/~hws/
 
 Feel free to contact me with questions or suggestions.

Btw. would it be possible and sensible to use the same Response and
Request data structures both for the client module Network.HTTP and the
Haskell Web Server? It would simplify forwarding of requests and
responses.
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe