Frederik Eaton | 2 Jul 2005 13:54

wash compile problem

When I try to install the new version of WASH (2.4.6), I get errors
saying that certain dependencies don't exist:

...
Reading package info from stdin... done.
ghc-pkg: dependency Utility doesn't exist
make[2]: *** [install-package] Error 1
make[2]: Leaving directory `/home/frederik/WashNGo-2.4.6/Mail'
make[2]: Entering directory `/home/frederik/WashNGo-2.4.6/cgi'
/usr/bin/install -c -d /home/frederik/arch/ppc/lib/WASH-CGI-1.4.38/ghc-6.4
/usr/bin/install -c -d /home/frederik/arch/ppc/lib/WASH-CGI-1.4.38/ghc-6.4/import
/usr/bin/install -c -c -m 644 AbstractSelector.hi CGI.hi CGIConfig.hi CGIGraphics.hi
CGIInternals.hi CGIMonad.hi CGIOutput.hi CGITypes.hi CGIXX.hi ContentType.hi Cookie.hi
CookieIO.hi Debug.hi EventHandlers.hi Fields.hi Frames.hi GuaranteedCGI.hi HTMLMail.hi
HTMLWrapper.hi Images.hi PPM.hi Persistent2.hi RawCGITypes.hi RawCGI.hi RawCGIInternal.hi
StateItem.hi Style.hi Submit98.hi SubmitXX.hi Types.hi /home/frederik/arch/ppc/lib/WASH-CGI-1.4.38/ghc-6.4/import
/usr/bin/install -c -c -m 644 libWASH-CGI.a /home/frederik/arch/ppc/lib/WASH-CGI-1.4.38/ghc-6.4
ranlib /home/frederik/arch/ppc/lib/WASH-CGI-1.4.38/ghc-6.4/libWASH-CGI.a
.././GenPKG/GenPKG WASH-CGI --ghc-version 6.4 --version 1.4.38 --license BSD3 --author 'Peter
Thiemann' --exposed-modules AbstractSelector CGI CGIConfig CGIGraphics CGIInternals CGIMonad
CGIOutput CGITypes CGIXX ContentType Cookie CookieIO Debug EventHandlers Fields Frames
GuaranteedCGI HTMLMail HTMLWrapper Images PPM Persistent2 RawCGITypes RawCGI RawCGIInternal
StateItem Style Submit98 SubmitXX Types --hidden-modules  --import_dirs
/home/frederik/arch/ppc/lib/WASH-CGI-1.4.38/ghc-6.4/import --library_dirs
/home/frederik/arch/ppc/lib/WASH-CGI-1.4.38/ghc-6.4 --hs_libraries WASH-CGI --package_deps
haskell98 text WASHHTML WASHMail Utility | /usr/bin/ghc-pkg update - --package-conf
~/.ghc/powerpc-linux-6.4/package.conf --auto-ghci-libs
Reading package info from stdin... done.
ghc-pkg: dependency WASHHTML doesn't exist
make[2]: *** [install-package] Error 1
(Continue reading)

Manuel M T Chakravarty | 3 Jul 2005 16:57
Picon
Picon
Favicon
Gravatar

Re: Network library: getting host address

Forget that, I was talking nonsense (except for the issue of
re-exporting the mentioned constants).

Manuel

28.06.2005, 23:38 +1000 Manuel M T Chakravarty:
> Is there any good reason why I can get a bound socket's port with
> getPortSocket, but cannot get its host address (ie, IP number)?  Sure,
> this makes only sense for ip sockets, but there it is sometimes crucial
> to get at this information.
> 
> I can get the information using the lower-level Network.Socket using
> 
> >  SockAddrInet _ hostAddr <- getSocketName socket
> >  host <- inet_ntoa hostAddr
> 
> but I think that this is the kind of information that needs to be
> available in the high-level interface, too.
> 
> BTW, shouldn't Network also reexport constants, such as aNY_PORT and
> iNADDR_ANY.
> 
> Manuel
> 
> 
> _______________________________________________
> Libraries mailing list
> Libraries <at> haskell.org
> http://www.haskell.org/mailman/listinfo/libraries
--

-- 
(Continue reading)

John Meacham | 3 Jul 2005 21:16
Favicon

STM help

I am attempting to use the STM to rewrite the screen handling code in
ginsu, which frankly, I am a little embarassed of :)

The basic needs are:
- fully concurrent
- all curses calls must go through a single thread (otherwise it gets
  real complicated)
- atomic updates to multiple parts of the screen at once. 
- efficient update mechanism, screen _must not_ be needlessly redrawn. 

So, my idea was basically, 

have a screen update thread, this is the only one that will make curses
calls. 
everything else communicates with the screen by modifying TVars holding
data values like so

data Widget = HBox { subWidgets :: [TVar Widget] } | Text { body :: TVar String }

and the screen is represented by a top level 'TVar Widget'

This gives the first three requirements very nicely, you can atomically
update several widgets or tex boxes, and everything is very concurrent
in a good way. 

The problem comes in when trying to implement an efficient update
mechanism, the problem is that I can't figure out how to wait on only
the relevant changed TVars. 

The structure of my curses thread would look like (essentially): 
(Continue reading)

Bulat Ziganshin | 4 Jul 2005 10:06

Re: STM help

Hello John,

Sunday, July 03, 2005, 11:16:30 PM, you wrote:

JM> have a screen update thread, this is the only one that will make curses
JM> calls. 
JM> everything else communicates with the screen by modifying TVars holding
JM> data values like so

in my own program i plan to use different approach. may it will be
better for you too.

1) one thread that render screen
2) this thread receives commands via one Channel and immediately
executes them
3) other threads send commands via this Channel

--

-- 
Best regards,
 Bulat                            mailto:bulatz <at> HotPOP.com
John Meacham | 4 Jul 2005 10:36
Favicon

Re: STM help

On Mon, Jul 04, 2005 at 12:06:11PM +0400, Bulat Ziganshin wrote:
> Hello John,
> 
> Sunday, July 03, 2005, 11:16:30 PM, you wrote:
> 
> JM> have a screen update thread, this is the only one that will make curses
> JM> calls. 
> JM> everything else communicates with the screen by modifying TVars holding
> JM> data values like so
> 
> in my own program i plan to use different approach. may it will be
> better for you too.
> 
> 1) one thread that render screen
> 2) this thread receives commands via one Channel and immediately
> executes them
> 3) other threads send commands via this Channel

Yeah, that is basically what I am doing now. it does keep all the curses
calls properly ordered, but doesn't solve the problem of creating the
appropriate sequence of commands in the first place :) 

Basically I want a 'view/model' split. the model will be a bunch of
TVars I can modify (perhaps in atomic groups) and the view will
automatically efficiently redraw and respond to the changes. 
        John

--

-- 
John Meacham - ⑆repetae.net⑆john⑈ 
(Continue reading)

Frederik Eaton | 4 Jul 2005 12:00

Re: wash compile problem

Actually I think there was an earlier error, it was refusing to write
to package.conf for some reason. Maybe it should give up when this
happens, so the relevant error message doesn't get buried?

Also, how does one install WASH without root access? I tried to
specify the user package.conf, but if this doesn't exist then it looks
like the WASH installer won't create it, and also its pathname is not
obvious so it seems unfriendly to require users to specify the literal
path...

Frederik

On Sat, Jul 02, 2005 at 05:02:59PM +0200, Peter Thiemann wrote:
> >>>>> "fe" == Frederik Eaton <frederik <at> a5.repetae.net> writes:
> 
>     fe> When I try to install the new version of WASH (2.4.6), I get errors
>     fe> saying that certain dependencies don't exist:
> 
>     fe> ...
>     fe> Reading package info from stdin... done.
>     fe> ghc-pkg: dependency Utility doesn't exist
> 
> Strange. The Utility package is also provided by WASH.
> Was there an error message in the Utility subdirectory?
> What is the output of `ghc-pkg list' afterwards?
> Did you run `make install' with sufficient karma to change the package
> registry? Eg, as root?
> 
> -Peter
> 
(Continue reading)

Frederik Eaton | 4 Jul 2005 12:05

another wash compile problem

When I compile WASH it takes forever for ghc to finish compiling
HTMLMonad98, and on my powerpc system with 151MB free RAM, gcc crashes
during the compile. Should some of the larger WASH modules maybe be
split into multiple files? I get the sense that ghc compilation
time/memory is super-linear in the size of the module being compiled.

Frederik
Frederik Eaton | 4 Jul 2005 18:05

Re: wash compile problem

By the way, specifying --enable-package-conf= on the ./configure
command line gives me the following error. I'd fixed it earlier and
forgotten to report the bug:

ranlib /home/frederik/arch/ppc/lib/Utility-0.3.11/ghc-6.4/libUtility.a
.././GenPKG/GenPKG Utility --ghc-version 6.4 --version 0.3.11 --license BSD3 --author 'Peter
Thiemann' --exposed-modules Auxiliary Base32 Base64 BulkIO FileNames Hex ISO8601 IntToString
JavaScript Locking QuotedPrintable RFC2047 RFC2279 RFC2397 SHA1 SimpleParser Shell URLCoding Unique
--hidden-modules  --import_dirs /home/frederik/arch/ppc/lib/Utility-0.3.11/ghc-6.4/import
--library_dirs /home/frederik/arch/ppc/lib/Utility-0.3.11/ghc-6.4 --hs_libraries Utility
--package_deps haskell98 text | /usr/bin/ghc-pkg update - -package-conf
~/.ghc/powerpc-linux-6.4/package.conf --auto-ghci-libs
ghc-pkg: unrecognized option `-p'
unrecognized option `-a'
unrecognized option `-c'
unrecognized option `-k'
unrecognized option `-a'
unrecognized option `-e'
unrecognized option `--conf'
Usage:
  ghc-pkg register {filename | -}

I think you may have to apply the following patch, it seems to fix
things:

--- WashNGo-2.4.6/configure.in  2005-06-23 05:36:34.000000000 -0700
+++ WashNGo-2.4.6-modified/configure.in 1903-12-31 16:13:22.000000000 -0800
 <at>  <at>  -82,7 +82,7  <at>  <at> 
 dnl Checks for package management

(Continue reading)

Ashley Yakeley | 5 Jul 2005 10:23

RFC: Time Library 0.1

Sorry for the hiatus, my job has left less free time to work on this.

Please take a look at a first attempt at writing a replacement for the 
standard time library.
http://semantic.org/TimeLib/

Take a look at the Haddock documentation:
http://semantic.org/TimeLib/doc/html/

Download the source:
http://semantic.org/TimeLib/TimeLib-0.1.tar.gz

Or keep up-to-date:
darcs get http://semantic.org/TimeLib/TimeLib/

It needs GHC 6.4. Just run "make" to build the library, tests and 
documentation. There's also a cabal file (as a completely separate build 
process), but I've been having trouble with that on Mac OS X.

I'm particularly interested in comments from people who try to write 
little applications for it. What did you have trouble with? What made no 
sense?

Some points:

1. There is no leap second table provided, though there is a type 
(LeapSecondTable) for such things. Any software compiled with a fixed 
table would soon become out of date.

2. There is no table of time-zones provided, since these also change. 
(Continue reading)

Einar Karttunen | 5 Jul 2005 11:46
Picon
Picon
Favicon

Re: RFC: Time Library 0.1

Ashley Yakeley <ashley <at> semantic.org> writes:
> Please take a look at a first attempt at writing a replacement for the 
> standard time library.
> http://semantic.org/TimeLib/

The general structure of the library looked quite nice.

There seems to be no portable way of getting the timezone information
but many applications will need a list of timezones. In this case
it seems that offering something is better than nothing.

Also having something like strftime available would be handy.

- Einar Karttunen

Gmane