Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-26 Thread Ketil Malde
John Lato jwl...@gmail.com writes:

 Brandon Allbery wrote:
 On 2009 Feb 21, at 20:47, Jonathan Cast wrote:
 On Sat, 2009-02-21 at 07:25 -0700, John A. De Goes wrote:

 Not showing platform-specific packages by default *might* make
 package writers more likely to develop cross-platform
 packages. 

You're saying a developer would think, oh, I need to test this on
windows, or else Hoogle won't index it?  

I think it is way more likely that not showing platform-specific
packages will result in yet another platform-specific library
duplicating (the necessary) part of the functionality. 

On the other hand, displaying platfom-specific libraries might lead to
them being more used, and in turn being ported.

 We've heard many times someone say, I don't know if it
 works on Windows, never really thought of that.

I'd say it.  I'd be happy to accept patches for Windows compatibility,
but I'm not going to go out and buy an OS, install it, install all the
required software and so on - just to tick a checkbox I'm not sure
anybody - a potential user of software, that is, not a user of
checkboxes - even cares about.

 I have to second this; I'm a Unix sysadmin, 98% of the time if I'm
 writing a program it's

I write programs to scratch *my* itches.  I publish them because
there's no reason not to, and hey, if it scratches your itch too,
that's great.  If you can improve it in some way, that's cool.

But until you are the one paying my bills and putting my bread on my
table, my responsibility to you stops there.

 1.  It's often easier (and almost never more difficult) to design for
 cross-platform support from the beginning than to add it later.

I don't entirely agree.  I have no particular experience writing
cross-platform software, and no way to test it - chances are I'd just
mess it up anyway.  Better that an expert, with a real need to cater
to, do this later on.

 2.  As of now, the Windows Group seems to be mostly Duncan.  And
 while I greatly appreciate all the time and effort he continues to put
 into Windows support, he's got a lot to do and could use some help.
 If you can't help by joining the Windows group, at least you could
 make your own packages cross-platform.

If you care about Windows support, the least you can do is to install
my stuff, and mail me the required patches to make it work - or let me
know if it works already.

As far as I know, none of those 80% of users even know I exist.

 3.  It contributes to the Avoid success at all costs mantra often
 attributed to Haskell. [...]

 4.  Cross-platform concerns are something that responsible developers
 need to consider, just like localization and i18n.  I.e., why
 *shouldn't* you think of that?

I don't consider those other two either, for about the same reasons.
I don't need it for the software I'm writing, and I have no reason to
believe anybody else does either. 

I suppose that one might think that my views here are quite selfish.
Where's the community spirit?  Where is social responsibility?  In a
way you'd be right, but I also think that if you start *imposing* this
kind of responsibility and community spirit, you'd start to se less
free software out there.  The cost of releasing software is low, but
hell, if I'm going to be flamed for it, the cost of *not* releasing it
is not any higher.

-k
-- 
If I haven't seen further, it is by standing in the footprints of giants
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-26 Thread John Lato
 John Lato jwl...@gmail.com writes:

 Brandon Allbery wrote:
 On 2009 Feb 21, at 20:47, Jonathan Cast wrote:
 On Sat, 2009-02-21 at 07:25 -0700, John A. De Goes wrote:

 Not showing platform-specific packages by default *might* make
 package writers more likely to develop cross-platform
 packages.

 You're saying a developer would think, oh, I need to test this on
 windows, or else Hoogle won't index it?

 I think it is way more likely that not showing platform-specific
 packages will result in yet another platform-specific library
 duplicating (the necessary) part of the functionality.

 On the other hand, displaying platfom-specific libraries might lead to
 them being more used, and in turn being ported.

I agree with both of these points.  I think at least the first would
be adequately addressed if Hoogle categorized results by platform
compatibility in some way.  Then a person looking for, e.g. a
BSD-Sockets package should be able to find it more quickly.


 We've heard many times someone say, I don't know if it
 works on Windows, never really thought of that.

 I'd say it.  I'd be happy to accept patches for Windows compatibility,
 but I'm not going to go out and buy an OS, install it, install all the
 required software and so on - just to tick a checkbox I'm not sure
 anybody - a potential user of software, that is, not a user of
 checkboxes - even cares about.

I certainly don't expect every developer to run out and buy Windows
just to test their stuff.  I have access to a Windows box, and I hate
testing my code on it because I have to reboot to do so.  I'll freely
admit it's a pain.  That's not the point, though.

In my experience, most haskell code works on windows, unless you have
a Unix or FFI dependency.  In those cases, yes, it's a lot more work
to port and test.  But if you don't, or could use a cross-platform
equivalent, then there's a good chance your code will work on Windows
*with no extra effort.*  That's what I'm arguing for: making it easier
to make cross-platform choices without any extra work on the
developer's part.


 1.  It's often easier (and almost never more difficult) to design for
 cross-platform support from the beginning than to add it later.

 I don't entirely agree.  I have no particular experience writing
 cross-platform software, and no way to test it - chances are I'd just
 mess it up anyway.  Better that an expert, with a real need to cater
 to, do this later on.

I didn't phrase this well.  In the context of my argument, design for
cross-platform meant avoid platform-limiting choices in the absence
of any compelling reasons otherwise, which really isn't the same.

In the specific case of Haskell software, I argue that this goes a
long way to ensuring ease of porting (if necessary at at all).  Again,
with very little impact on the actual work that you need to do.  Note
that compelling reasons would include better features, better API,
industry standards compliance, etc.  I wouldn't say that a
half-implemented, poorly documented cross-platform library is
functionally equivalent to an alternative well-supported product.


 2.  As of now, the Windows Group seems to be mostly Duncan.  And
 while I greatly appreciate all the time and effort he continues to put
 into Windows support, he's got a lot to do and could use some help.
 If you can't help by joining the Windows group, at least you could
 make your own packages cross-platform.

 If you care about Windows support, the least you can do is to install
 my stuff, and mail me the required patches to make it work - or let me
 know if it works already.

I am most definitely not a Windows programmer, so I'm in only a
slightly better position than you to make such patches if necessary.
I will test your code, though.


 As far as I know, none of those 80% of users even know I exist.


In your case, I suppose that 80% of users don't care about
bioinformatics, which seems to be your area of specialization.  Fine.
Even when coding for a broad audience, as opposed to coding for
oneself, it's not true that you're coding for *everyone*.


 4.  Cross-platform concerns are something that responsible developers
 need to consider, just like localization and i18n.  I.e., why
 *shouldn't* you think of that?

 I don't consider those other two either, for about the same reasons.
 I don't need it for the software I'm writing, and I have no reason to
 believe anybody else does either.

 I suppose that one might think that my views here are quite selfish.
 Where's the community spirit?  Where is social responsibility?  In a
 way you'd be right, but I also think that if you start *imposing* this
 kind of responsibility and community spirit, you'd start to se less
 free software out there.  The cost of releasing software is low, but
 hell, if I'm going to be flamed for it, the cost of *not* releasing it
 is not any higher.

I'm really not trying to argue that this should be imposed upon
developers, for exactly the reasons you give.  One of the 

Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-26 Thread Daniel Fischer
Am Donnerstag, 26. Februar 2009 13:41 schrieb John Lato:
 I didn't phrase this well.  In the context of my argument, design for
 cross-platform meant avoid platform-limiting choices in the absence
 of any compelling reasons otherwise, which really isn't the same.


Could we sum that up as:

Do not knowingly make your code unportable unless you have a good reason to?

Are there any objections to that maxim?

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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-26 Thread Thomas DuBuisson
Daniel provided the wisdom:
 Do not knowingly make your code unportable unless you have a good reason to

 Are there any objections to that maxim?

Thanks for bringing some sanity back.  I notice very few people have
bothered to comment on the wiki page Neil has setup.  Incase anyone
has fogotten - this was originally about what packages hoogle should
search and which options should be available (and which should be
default) for returning platform specific results.

Platform specifity:
The suggestion of platform specific flags, which I now support, seems
to be dominante. The only alternate I recall is showing all results
catagorized by platform (with 'portable' being on top) - perhaps that
could be displayed if there are zero results that are portable.

Default packages searched:
I've yet to hear anyone say we should search anything less than the
Haskell Platform by default.  I also don't think anyone has spoke ill
of a +hackage flag.

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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-26 Thread John A. De Goes

On Feb 25, 2009, at 7:49 PM, Achim Schneider wrote:

John A. De Goes j...@n-brain.net wrote:


The problem is that PL research is probably not going to stop
evolving in our lifetimes. Yes, that research needs a venue, but why
should it be Haskell? Haskell is a good language and it's time to
start benefiting from the research that's already gone into it. That
means some tradeoffs.


Why shouldn't it be Haskell?


More, why *can't* it be Haskell. Haskell is already constrained by  
backwards compatibility, which limits future directions. Partial  
functions and dependent typing do not seem to play well together, for  
instance.


Moreover, look at the packages being uploaded to Hackage: they're  
almost all trying to do useful stuff. The direction of Haskell has  
already changed, and I don't see it reverting to its old course.



Not really, look at e.g. type families, which give you much of the
power dependently typed languages give you while saying nah, not yet
to the question of how to deal with non-terminating typechecking.


*Some*, not *much*, and there are dependently typed languages that  
have guaranteed terminating type checking.


About the H' progress... It's hard to tell how many drops are needed  
to

make a bucket overflow, especially if you've got no idea what the
bucket looks like. What certainly isn't happening is people taking a
house, trying to overflow a badly leaking bucket.


As far as I know, H' was supposed to be completed many years ago.  
Likely, it won't be completed for many more years. H2 is probably more  
than a decade away, if it happens at all.


Regards,

John A. De Goes
N-BRAIN, Inc.
The Evolution of Collaboration

http://www.n-brain.net|877-376-2724 x 101


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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-26 Thread Jonathan Cast
On Thu, 2009-02-26 at 13:52 +0100, Daniel Fischer wrote:
 Am Donnerstag, 26. Februar 2009 13:41 schrieb John Lato:
  I didn't phrase this well.  In the context of my argument, design for
  cross-platform meant avoid platform-limiting choices in the absence
  of any compelling reasons otherwise, which really isn't the same.
 
 
 Could we sum that up as:
 
 Do not knowingly make your code unportable unless you have a good reason to?
 
 Are there any objections to that maxim?

Actually, yes.  But it's quite off-topic, not just as per thread but as
per mailing list.

jcc


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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-26 Thread Jonathan Cast
On Thu, 2009-02-26 at 06:30 -0700, John A. De Goes wrote:
 On Feb 25, 2009, at 7:49 PM, Achim Schneider wrote:
  John A. De Goes j...@n-brain.net wrote:
 
  The problem is that PL research is probably not going to stop
  evolving in our lifetimes. Yes, that research needs a venue, but why
  should it be Haskell? Haskell is a good language and it's time to
  start benefiting from the research that's already gone into it. That
  means some tradeoffs.
 
  Why shouldn't it be Haskell?
 
 More, why *can't* it be Haskell. Haskell is already constrained by  
 backwards compatibility, which limits future directions. Partial  
 functions and dependent typing do not seem to play well together, for  
 instance.
 
 Moreover, look at the packages being uploaded to Hackage: they're  
 almost all trying to do useful stuff. The direction of Haskell has  
 already changed, and I don't see it reverting to its old course.
 
  Not really, look at e.g. type families, which give you much of the
  power dependently typed languages give you while saying nah, not yet
  to the question of how to deal with non-terminating typechecking.
 
 *Some*, not *much*, and there are dependently typed languages that  
 have guaranteed terminating type checking.
 
  About the H' progress... It's hard to tell how many drops are needed  
  to
  make a bucket overflow, especially if you've got no idea what the
  bucket looks like. What certainly isn't happening is people taking a
  house, trying to overflow a badly leaking bucket.
 
 As far as I know, H' was supposed to be completed many years ago.  
 Likely, it won't be completed for many more years. H2 is probably more  
 than a decade away, if it happens at all.

Here's to hoping it doesn't.  Practical languages, when they change,
*never* improve.  And that's going from study (although not experience!)
of 40 years of history.

jcc


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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-26 Thread John Lato
On Thu, Feb 26, 2009 at 1:21 PM, Thomas DuBuisson
thomas.dubuis...@gmail.com wrote:
 Daniel provided the wisdom:
 Do not knowingly make your code unportable unless you have a good reason to

 Are there any objections to that maxim?

 Thanks for bringing some sanity back.  I notice very few people have
 bothered to comment on the wiki page Neil has setup.  Incase anyone
 has fogotten - this was originally about what packages hoogle should
 search and which options should be available (and which should be
 default) for returning platform specific results.

Yes, thanks for dragging this back on topic.  I am sorry for my
contribution to moving so far away from it.


 Platform specifity:
 The suggestion of platform specific flags, which I now support, seems
 to be dominante. The only alternate I recall is showing all results
 catagorized by platform (with 'portable' being on top) - perhaps that
 could be displayed if there are zero results that are portable.

 Default packages searched:
 I've yet to hear anyone say we should search anything less than the
 Haskell Platform by default.  I also don't think anyone has spoke ill
 of a +hackage flag.


I would agree with Haskell Platform as default search, and also with a
+hackage flag.  I would also support platform-specific flags if they
were simple to implement.

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


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread John Lato
Brandon Allbery wrote:
 On 2009 Feb 21, at 20:47, Jonathan Cast wrote:
 On Sat, 2009-02-21 at 07:25 -0700, John A. De Goes wrote:
 Not showing platform-specific packages by default *might* make
 package
 writers more likely to develop cross-platform packages. We've heard
 many times someone say, I don't know if it works on Windows, never
 really thought of that.

 Um, why *should* I think of that?

 I have to second this; I'm a Unix sysadmin, 98% of the time if I'm
 writing a program it's for Unix *and* requires POSIX APIxs, and even
 if it could apply to Windows the program needed there would be very
 significantly different.  And we have a Windows group for that.


I completely disagree, for the following reasons:
1.  It's often easier (and almost never more difficult) to design for
cross-platform support from the beginning than to add it later.
2.  As of now, the Windows Group seems to be mostly Duncan.  And
while I greatly appreciate all the time and effort he continues to put
into Windows support, he's got a lot to do and could use some help.
If you can't help by joining the Windows group, at least you could
make your own packages cross-platform.
3.  It contributes to the Avoid success at all costs mantra often
attributed to Haskell.  I'm pretty sure that some people prefer this,
but many (including myself) consider it at best misguided, and
possibly harmful.
4.  Cross-platform concerns are something that responsible developers
need to consider, just like localization and i18n.  I.e., why
*shouldn't* you think of that?

In some situations, it is true that a project is particularly tied to
a Posix (or Windows) feature, and it wouldn't make sense to attempt a
cross-platform version.  If you're a Unix sysadmin and you use
Haskell, that may be true most or all of the time.  But for many
packages, including most packages on hackage, it should be given
consideration.

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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread Jonathan Cast
On Wed, 2009-02-25 at 10:23 +, John Lato wrote:
 4.  Cross-platform concerns are something that responsible developers
 need to consider, just like localization and i18n.  I.e., why
 *shouldn't* you think of that?

Sorry, wtf?  I have a *responsibility* to design software for a
miserably poorly-designed God-awful platform I'd have to pay *extra*
for, and even then couldn't get source to or *fix* if I found a bug?
No.  You don't control me, to the best of my knowledge you haven't done
squat for me, and by trying to force me to develop to *that* platform
you are actively attempting to harm me.

*plonk*

jcc


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


RE: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread Sittampalam, Ganesh
Jonathan Cast wrote:
 On Wed, 2009-02-25 at 10:23 +, John Lato wrote:
 4.  Cross-platform concerns are something that responsible developers
 need to consider, just like localization and i18n.  I.e., why
 *shouldn't* you think of that?
 
 Sorry, wtf?  I have a *responsibility* to design software for a
 miserably poorly-designed God-awful platform I'd have to pay *extra*
 for, and even then couldn't get source to or *fix* if I found a bug?

I think there's a distinction between actively trying to support a
specific platform, and simply trying to work in a cross-platform way,
i.e. using the appropriate cross-platform APIs and packages where
possible. Other people will already have done the work of making those
things work on a specific platform, and if they don't work the issue can
be raised with those people rather than you.

 No.  You don't control me, to the best of my knowledge you haven't
 done squat for me, and by trying to force me to develop to *that*
 platform you are actively attempting to harm me.
 
 *plonk*

Please could you moderate your tone? The original post wasn't aimed at
you personally, it just expressed a general opinion about development
practices, and certainly made no mention of forcing you or anyone else
to do anything. By making it personal and expressing your response in
rather intemperate language, you are adding more heat than light.

In addition, the original subject of this thread is Hoogle, and if we
take your comments in that context (and I do realise that your comments
may have been generic rather than specific to Hoogle), then you have the
choice of not using it at all, in which case you are not affected at all
by its design choices; but if you do use it then the author certainly
has 
done something for you, and his feeling that people should be encouraged

to use cross-platform APIs where possible should certainly be accorded 
some respect.

Cheers,

Ganesh

=== 
 Please access the attached hyperlink for an important electronic 
communications disclaimer: 
 http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html 
 
=== 
 
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread Brandon S. Allbery KF8NH

On 2009 Feb 25, at 5:23, John Lato wrote:

Brandon Allbery wrote:

I have to second this; I'm a Unix sysadmin, 98% of the time if I'm
writing a program it's for Unix *and* requires POSIX APIxs, and even
if it could apply to Windows the program needed there would be very
significantly different.  And we have a Windows group for that.


2.  As of now, the Windows Group seems to be mostly Duncan.  And


Wrong Windows group:  Duncan doesn't work for us.

--
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allb...@kf8nh.com
system administrator [openafs,heimdal,too many hats] allb...@ece.cmu.edu
electrical and computer engineering, carnegie mellon universityKF8NH




PGP.sig
Description: This is a digitally signed message part
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread John Lato
On Wed, Feb 25, 2009 at 4:45 PM, Brandon S. Allbery KF8NH
allb...@ece.cmu.edu wrote:
 On 2009 Feb 25, at 5:23, John Lato wrote:

 Brandon Allbery wrote:

 I have to second this; I'm a Unix sysadmin, 98% of the time if I'm
 writing a program it's for Unix *and* requires POSIX APIxs, and even
 if it could apply to Windows the program needed there would be very
 significantly different.  And we have a Windows group for that.

 2.  As of now, the Windows Group seems to be mostly Duncan.  And

 Wrong Windows group:  Duncan doesn't work for us.


Sorry, I misunderstood you.  I thought you meant a Windows group
within the Haskell community, not within your company.

Honestly, what I wrote wasn't directed at you.  As I mentioned before,
writing code as a Unix sysadmin has very different priorities than
writing for many other problem domains.  Most of your code wouldn't
make sense outside a Unix context, whereas bytestrings, tries, or
graph libraries would.

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


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread Achim Schneider
John Lato jwl...@gmail.com wrote:

 On Wed, Feb 25, 2009 at 4:45 PM, Brandon S. Allbery KF8NH
 allb...@ece.cmu.edu wrote:
  On 2009 Feb 25, at 5:23, John Lato wrote:
 
  Brandon Allbery wrote:
 
  I have to second this; I'm a Unix sysadmin, 98% of the time if I'm
  writing a program it's for Unix *and* requires POSIX APIxs, and
  even if it could apply to Windows the program needed there would
  be very significantly different. __And we have a Windows group for
  that.
 
  2. __As of now, the Windows Group seems to be mostly Duncan. __And
 
  Wrong Windows group: __Duncan doesn't work for us.
 
 
 Sorry, I misunderstood you.  I thought you meant a Windows group
 within the Haskell community, not within your company.
 
 Honestly, what I wrote wasn't directed at you.  As I mentioned before,
 writing code as a Unix sysadmin has very different priorities than
 writing for many other problem domains.  Most of your code wouldn't
 make sense outside a Unix context, whereas bytestrings, tries, or
 graph libraries would.
 
I don't think it makes sense to talk about missing support on any
platform: In a strict sense, how well a platform is supported is a
function of how many people care to use it. While there seems to be a
disparity between people developing programs on/for Windoze and people
working on Windoze's cross-platform capabilities wrt. Haskell, this
does not mean that you can rightfully expect people who chose not to use
your favourite platform to give a damn about it. Search for allies
amidst your pals.

I honestly doubt that iff a viable[1] way to support multiple platforms
exists any developer aware of it would choose a platform-locked in
alternative. This is the only thing you can hope for, and the only
thing you need to provide to other developers to get platform support
for free. There's a free lunch, after all, but you gotta bring your own
dishes. Or pay someone to spoon-feed you, but that's another issue.


[1] Which mostly means negligible additional work for the developer

-- 
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.


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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread John Lato
On Wed, Feb 25, 2009 at 3:49 PM, Jonathan Cast
jonathancc...@fastmail.fm wrote:
 On Wed, 2009-02-25 at 10:23 +, John Lato wrote:
 4.  Cross-platform concerns are something that responsible developers
 need to consider, just like localization and i18n.  I.e., why
 *shouldn't* you think of that?

 Sorry, wtf?  I have a *responsibility* to design software for a
 miserably poorly-designed God-awful platform I'd have to pay *extra*
 for, and even then couldn't get source to or *fix* if I found a bug?
 No.  You don't control me, to the best of my knowledge you haven't done
 squat for me, and by trying to force me to develop to *that* platform
 you are actively attempting to harm me.


I'm not trying to force you (or anyone else) to do anything.  All I'm
saying is that, as a developer, you should consider that your
unix-dependent software will never reach over 80% of the computer
users available.  Now, I don't know anything about what sort of
software you write, maybe your market segment is big iron so you've
already made a decision to ignore Windows.  Maybe you hate Windows so
much you want to deprive its users of your code.  I honestly don't
care.  As a former ASP.Net developer, I can assure you I have no love
for MS.

By responsible developer, I meant accountable for decisions made
during development.  It's fine to say you don't know if your code
doesn't run on Windows because you've made a decision to not support
it (or actively work against it, as the case may be).  It's not fine
to say you don't know because you never thought about it.

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


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread Achim Schneider
John Lato jwl...@gmail.com wrote:

 you should consider that your unix-dependent software will never
 reach over 80% of the computer users available.

Now it's me...

wtf? Why should I care? If those users are not even willing to bend
their little finger to safe me from breaking my back attempting to
support their wretched pile of junk that is being deliberately trying
to boycott cross-platform compability, may they rot away, together with
any notion of software quality or sense of responsibility to care about
stuff you deem important that _might_ be left in the camp of
microslaves. And Microsoft itself, while I'm at it.

Being helpful and contributing to a gift society is all Good and Great,
but there's a line that has to be drawn to prevent it from collapsing:
Never, ever, let your actions be dictated by parasitary leeches. If you
want it done, do it. Let your actions tell others that you are standing
on the right side of that line, and you _will_ benefit from society. If
not, STFU or GTFO.

-- 
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.


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


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread John Lato
Achim Schneider wrote:
 John Lato jwl...@gmail.com wrote:
 On Wed, Feb 25, 2009 at 4:45 PM, Brandon S. Allbery KF8NH
 allb...@ece.cmu.edu wrote:
  On 2009 Feb 25, at 5:23, John Lato wrote:
 
  Brandon Allbery wrote:
 
  I have to second this; I'm a Unix sysadmin, 98% of the time if I'm
  writing a program it's for Unix *and* requires POSIX APIxs, and
  even if it could apply to Windows the program needed there would
  be very significantly different. __And we have a Windows group for
  that.
 
  2. __As of now, the Windows Group seems to be mostly Duncan. __And
 
  Wrong Windows group: __Duncan doesn't work for us.
 

 Sorry, I misunderstood you.  I thought you meant a Windows group
 within the Haskell community, not within your company.

 Honestly, what I wrote wasn't directed at you.  As I mentioned before,
 writing code as a Unix sysadmin has very different priorities than
 writing for many other problem domains.  Most of your code wouldn't
 make sense outside a Unix context, whereas bytestrings, tries, or
 graph libraries would.

 I don't think it makes sense to talk about missing support on any
 platform: In a strict sense, how well a platform is supported is a
 function of how many people care to use it. While there seems to be a
 disparity between people developing programs on/for Windoze and people
 working on Windoze's cross-platform capabilities wrt. Haskell, this
 does not mean that you can rightfully expect people who chose not to use
 your favourite platform to give a damn about it. Search for allies
 amidst your pals.

Somehow I really gave off the wrong impression.  Windows is most
definitely not my favorite platform.  My primary development computer
is currently a MacBook, and my secondary system runs Linux.  I'm
advocating for Windows for two reasons:

1.  There are a non-trivial number of Windows Haskellers, and they
frequently post about problems on this list.  I would like to make
their lives a little better..

2.  A substantial portion of computer users are on Windows.  If I want
them to use my software, or even expose them to the glory of Haskell,
I need to speak their language.

A possible third reason is that I have used some number of
gnu-toolchain-developed programs on Windows (using mingw), and the
experience is frequently miserable.  Graphics libraries lag, all sorts
of configuration errors, missing packages, etc.  Compared to that, the
GHC compiler chain and libraries are fantastic.  It pretty much works,
and I think it can be better.  I would like to see a wider adoption of
Haskell in general, and improving Haskell support for windows is would
definitely help.


 I honestly doubt that iff a viable[1] way to support multiple platforms
 exists any developer aware of it would choose a platform-locked in
 alternative. This is the only thing you can hope for, and the only
 thing you need to provide to other developers to get platform support
 for free. There's a free lunch, after all, but you gotta bring your own
 dishes. Or pay someone to spoon-feed you, but that's another issue.


I think Haskell is a lot closer to this than many other languages.
Generally, Haskell packages that don't work on Windows fall into one
of three categories:

1.  Packages that link to a C library, in which case it depends on the
underlying library.
2.  Packages that are closely tied to Unix/Posix.
3.  Packages that depend on one of the above (or another in this category).

It's the third category that's mostly under discussion here.  If
Package A is posix-dependent, but a cross-platform alternative is
available, then by using the cross-platform alternative Package B
really can get Windows compatibility for free (assuming equivalent
functionality between alternatives).  I really don't see anything
wrong with using Hoogle to increase awareness (although I would
appreciate it if platform-specific packages were searched as an
option).

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


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread Achim Schneider
John Lato jwl...@gmail.com wrote:

 I really don't see anything wrong with using Hoogle to increase
 awareness (although I would appreciate it if platform-specific
 packages were searched as an option).

You won't hear me argue against it, in fact, I argued in favour of it.
Increasing awareness of cross-platform solutions, as well as providing
them, is a very different thing than demanding cross-platform support.

If 80% of all computer users use Windows, there shouldn't be any
problems recruiting a decent number of volunteers to care about
Haskell's Windoze support, should there?

-- 
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.


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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread John A. De Goes


It's a chicken-egg thing. A Linux or OS X developer tries Haskell and  
finds he can write useful programs right away, with a minimum of fuss.  
But a Windows user tries Haskell and finds he has access to very few  
of the really good libraries, and even the cross-platform libraries  
won't build without substantial effort. As a result, I bet it's easier  
for a Linux or OS X developer to like Haskell than a Windows developer.


I use OS X exclusively myself, but I'll ensure my first published  
Haskell library is cross-platform compatible, because I think it's  
good for the community. The more people using Haskell, the more  
libraries that will be written, the more bugs that will be fixed, the  
more creativity that will be poured into development of libraries and  
the language itself.


Regards,

John A. De Goes
N-BRAIN, Inc.
The Evolution of Collaboration

http://www.n-brain.net|877-376-2724 x 101

On Feb 25, 2009, at 5:29 PM, Achim Schneider wrote:


John Lato jwl...@gmail.com wrote:


I really don't see anything wrong with using Hoogle to increase
awareness (although I would appreciate it if platform-specific
packages were searched as an option).


You won't hear me argue against it, in fact, I argued in favour of it.
Increasing awareness of cross-platform solutions, as well as providing
them, is a very different thing than demanding cross-platform support.

If 80% of all computer users use Windows, there shouldn't be any
problems recruiting a decent number of volunteers to care about
Haskell's Windoze support, should there?

--
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.


___
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] Re: Hoogle and Network.Socket

2009-02-25 Thread Jonathan Cast
On Wed, 2009-02-25 at 17:54 -0700, John A. De Goes wrote:
 It's a chicken-egg thing. A Linux or OS X developer tries Haskell and  
 finds he can write useful programs right away, with a minimum of fuss.  
 But a Windows user tries Haskell and finds he has access to very few  
 of the really good libraries, and even the cross-platform libraries  
 won't build without substantial effort. As a result, I bet it's easier  
 for a Linux or OS X developer to like Haskell than a Windows developer.
 
 I use OS X exclusively myself, but I'll ensure my first published  
 Haskell library is cross-platform compatible, because I think it's  
 good for the community. The more people using Haskell, the more  
 libraries that will be written, the more bugs that will be fixed, the  
 more creativity that will be poured into development of libraries and  
 the language itself.

I don't think this is founded in experience.  The experience of the last
5 years is that the more people use Haskell, the more important
backward-compatibility concerns become, and the harder it becomes for
Haskell to continue evolving.

Creativity being poured into a language doesn't do much good if the
result is the language moving sideways, still less the language growing
sideways.

jcc


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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread John A. De Goes


I don't think it's that black and white.

At the lower end, when the language is controlled by a few, there's  
not much innovation poured into the language or libraries, and there  
are no tools to support development. As the community grows, you see  
much more innovation in language and libraries, and maybe a few  
primitive tools. With much greater, the community demands backward  
compatibility, so the language itself may only evolve in highly  
constrained ways (ways that are usually detrimental to consistency),  
but the library space explodes with innovation, and the tools become  
extremely powerful.


Personally, I'd be happy to see that explosion of innovation in the  
library and tool spaces, even if it means the language itself stops  
evolving (for the most part). It will make it a lot easier do use  
Haskell commercially, and the innovators in the language space will  
find or invent a new target to keep themselves occupied.


Regards,

John A. De Goes
N-BRAIN, Inc.
The Evolution of Collaboration

http://www.n-brain.net|877-376-2724 x 101

On Feb 25, 2009, at 5:52 PM, Jonathan Cast wrote:


On Wed, 2009-02-25 at 17:54 -0700, John A. De Goes wrote:

It's a chicken-egg thing. A Linux or OS X developer tries Haskell and
finds he can write useful programs right away, with a minimum of  
fuss.

But a Windows user tries Haskell and finds he has access to very few
of the really good libraries, and even the cross-platform libraries
won't build without substantial effort. As a result, I bet it's  
easier
for a Linux or OS X developer to like Haskell than a Windows  
developer.


I use OS X exclusively myself, but I'll ensure my first published
Haskell library is cross-platform compatible, because I think it's
good for the community. The more people using Haskell, the more
libraries that will be written, the more bugs that will be fixed, the
more creativity that will be poured into development of libraries and
the language itself.


I don't think this is founded in experience.  The experience of the  
last

5 years is that the more people use Haskell, the more important
backward-compatibility concerns become, and the harder it becomes for
Haskell to continue evolving.

Creativity being poured into a language doesn't do much good if the
result is the language moving sideways, still less the language  
growing

sideways.

jcc




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


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread Achim Schneider
John A. De Goes j...@n-brain.net wrote:

 Personally, I'd be happy to see that explosion of innovation in the  
 library and tool spaces, even if it means the language itself stops  
 evolving (for the most part). It will make it a lot easier do use  
 Haskell commercially, and the innovators in the language space will  
 find or invent a new target to keep themselves occupied.

And this is why we must avoid success: It would mean instant failure.
There are already enough hype-languages around, there's not too much of
a point to add one to them. Haskell won't stop evolving and
(conservatively) keeping up with PL research until that's done, or
Dependent Typing is well-understood, whatever comes first.

-- 
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.


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


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread Achim Schneider
Achim Schneider bars...@web.de wrote:

 whatever comes first.

uhhh, make that whatever comes last 


-- 
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.


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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread John A. De Goes


The problem is that PL research is probably not going to stop evolving  
in our lifetimes. Yes, that research needs a venue, but why should it  
be Haskell? Haskell is a good language and it's time to start  
benefiting from the research that's already gone into it. That means  
some tradeoffs.


Haskell is already behind state-of-the art in PL research and it seems  
unlikely to catch up (witness the slow evolution of Haskell' and the  
non-existent progress on Haskell2). Of course, I could be wrong.


Regards,

John A. De Goes
N-BRAIN, Inc.
The Evolution of Collaboration

http://www.n-brain.net|877-376-2724 x 101

On Feb 25, 2009, at 6:19 PM, Achim Schneider wrote:


John A. De Goes j...@n-brain.net wrote:


Personally, I'd be happy to see that explosion of innovation in the
library and tool spaces, even if it means the language itself stops
evolving (for the most part). It will make it a lot easier do use
Haskell commercially, and the innovators in the language space will
find or invent a new target to keep themselves occupied.


And this is why we must avoid success: It would mean instant failure.
There are already enough hype-languages around, there's not too much  
of

a point to add one to them. Haskell won't stop evolving and
(conservatively) keeping up with PL research until that's done, or
Dependent Typing is well-understood, whatever comes first.

--
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.


___
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


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-25 Thread Achim Schneider
John A. De Goes j...@n-brain.net wrote:

 The problem is that PL research is probably not going to stop
 evolving in our lifetimes. Yes, that research needs a venue, but why
 should it be Haskell? Haskell is a good language and it's time to
 start benefiting from the research that's already gone into it. That
 means some tradeoffs.
 
Why shouldn't it be Haskell?
So then, build an enterprise-style language using it, noone is going to
stop you. Noone is going to stop you benefiting from it, either. You
might have to have to pay the price of a moving target, though, as
people just won't stop innovating. Tradeoffs, everywhere...

 Haskell is already behind state-of-the art in PL research and it
 seems unlikely to catch up (witness the slow evolution of Haskell'
 and the non-existent progress on Haskell2). Of course, I could be
 wrong.

Not really, look at e.g. type families, which give you much of the
power dependently typed languages give you while saying nah, not yet
to the question of how to deal with non-terminating typechecking.
Haskell walks the line between well-understood and bleeding edge,
leaning a bit towards well-understood, for sanity's and stability's
sake. 

About the H' progress... It's hard to tell how many drops are needed to
make a bucket overflow, especially if you've got no idea what the
bucket looks like. What certainly isn't happening is people taking a
house, trying to overflow a badly leaking bucket.

-- 
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.


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


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-23 Thread Achim Schneider
Thomas DuBuisson thomas.dubuis...@gmail.com wrote:

 I still prefer showing all platform results sorted into separate
 sections with headers, but understand that I am in the minority.

You aren't alone. Labelling them prominently with POSIX, UNIX, Linux,
*BSD, OSX resp. Windoze is a Good Thing: That way, noone has to dig
into package docs. Show N more results specific to platform Foo-links
would be a good idea, too.

-- 
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.


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


Re: [Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-23 Thread wren ng thornton

Achim Schneider wrote:

Thomas DuBuisson thomas.dubuis...@gmail.com wrote:

 I still prefer showing all platform results sorted into separate
 sections with headers, but understand that I am in the minority.

You aren't alone. Labelling them prominently with POSIX, UNIX, Linux,
*BSD, OSX resp. Windoze is a Good Thing: That way, noone has to dig
into package docs. Show N more results specific to platform Foo-links
would be a good idea, too.



Indeed, you are not alone.

Though, I think it might be easier to have an icon next to the search 
hits, rather than segregating by platform--- since 
segregating/sectioning runs counter to relevance ranking. Of course 
icons clutter things up (though we can be innovative about what icon 
means and use them to colorize text or similar; since we have so few of 
them). But then there's a whole literature on clustered search engines 
that we could delve into for UI considerations (clustered-search folks 
tend to care about such things).


The main point is that I think even arch/os/compiler-specific packages 
should be searched by default and simply annotated as being 
platform-specific, rather than requiring flags (a hitherto undocumented 
feature). Cookies should be used to facilitate or suppress such platform 
specificities (with a URL interface to adjust the cookie).



Lacking a wiki account,
~wren
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-23 Thread Peter Hercek

wren ng thornton wrote:

Lacking a wiki account,
~wren


From HWN:

HaskellWiki Accounts. Ashley Yakeley can [12]create a HaskellWiki
account for anyone who wants one (account creation has been disabled as
a spam-fighting measure).
http://article.gmane.org/gmane.comp.lang.haskell.general/16846

Peter

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


[Haskell-cafe] Re: Hoogle and Network.Socket

2009-02-23 Thread Achim Schneider
wren ng thornton w...@freegeek.org wrote:

 Though, I think it might be easier to have an icon next to the search 
 hits, rather than segregating by platform--- since 
 segregating/sectioning runs counter to relevance ranking.

While OTOH, this approach might rank low-level POSIX/Windoze libraries
higher than cross-platform wrappers, which arguably isn't the best way
to promote platform-independence.

I really do think that show N more results from platform Foo and
show N more platform-specific results is the way to go: clicking them
would repeat the search with (+platform | +all) -cross-platform tags,
which has the benefit of implicitly documenting how to do specific
searches: No documentation needed, no GUI if you don't care.

-- 
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.


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