This page is no longer maintained — Please continue to the home page at www.scala-lang.org

Re: Scaladoc that is actually useful?

129 replies
geoff
Joined: 2008-08-20,
User offline. Last seen 1 year 25 weeks ago.
Re: Scaladoc that is actually useful?

On Fri, Nov 13, 2009 at 10:25:01AM -0500, Rex Kerr said
> On Fri, Nov 13, 2009 at 9:33 AM, Daniel Sobral wrote:
>
> > Scala recommends not using isInstanceOf/asInstanceOf, because you may
> > accidentally lie about types when you use them.
> >
> > Which proves the point.
> >
>
> No, all it proves is that you can misuse the constructs that have been
> supplied.
>
> If you use them to make a whenInstanceOf construct:
>
> def whenInstanceOf[A,B,C](a:A)(f:B=>C):Option[C] = {
> if (a.isInstanceOf[B]) Some(f(a.asInstanceOf[B]))
> else None
> }
>
> then you're perfectly typesafe at least as far as set-inclusion goes, unless
> "isInstanceOf" can't manage to tell what set an object belongs to.

Bzzt.

scala> def whenInstanceOf[A,B,C](a:A)(f:B=>C):Option[C] = {
| if (a.isInstanceOf[B]) Some(f(a.asInstanceOf[B]))
| else None
| }
warning: there were unchecked warnings; re-run with -unchecked for
details
whenInstanceOf: [A,B,C](A)((B) => C)Option[C]

scala> whenInstanceOf(123){x:String => x}
java.lang.ClassCastException: java.lang.Integer cannot be cast to
java.lang.String

Ignoring the possibility of using a manifest to recover a runtime type
of B, or some hypothetical runtime with built-in reification of type
parameters.

forall A. B. C. A => (B=>C) => Option[C] is inhabited only by
None.

The forall qualifier of a type parameter truly means that the body of
the method has no information about the concrete type of any values of
the parameterized type. Therefore, any dynamic type-checks within a
method subvert the method's signature. Yes, these sorts of things can
be useful in practice, but they are abhorrent from the point of view of
static type safety, Curry-Howard correspondence, etc.

>
> But you can use this whenInstanceOf construct to do things that break the
> nice this-must-be-function-composition property of Tony's boo-function.
>
> Anyway, I think I've said enough here. If learning type theory makes one
> forget what a mathematical function is, that's a pity,

Nothing could be further from the truth. It is impossible to write a
mathematical function f(x) that maps x in some unknown set A to a value
in some other unknown set B. You cannot ask a number what set it belongs
to! In fact set B could be the empty set, what then.

> but arguing about various sorts of lack of education is a lot less
> productive than writing better documentation. So I figure if I'm not
> going to do the latter, I should be quiet.

For the record, I believe that everyone here just wants to help broaden
your understanding of what types really mean. No amount of API
documentation will confer that knowledge. This thread is more a
statement that what the type of a method proves about the behavior is
more important than and must be understood before some prose description
of the function that may be incorrect or incomplete.

Randall R Schulz
Joined: 2008-12-16,
User offline. Last seen 1 year 29 weeks ago.
Re: Scaladoc that is actually useful?

On Friday November 13 2009, Geoff Reedy wrote:
> On Fri, Nov 13, 2009 at 10:25:01AM -0500, Rex Kerr said
> ...
>
> For the record, I believe that everyone here just wants to help
> broaden your understanding of what types really mean. No amount of
> API documentation will confer that knowledge. This thread is more a
> statement that what the type of a method proves about the behavior is
> more important than and must be understood before some prose
> description of the function that may be incorrect or incomplete.

Bingo!

And for my addition to the record, I _do not_ claim good understanding
of these things, but I made what "contributions" I did to this thread
in equal parts to force myself to think about what's afoot and to
convey that understanding (modulo necessary corrections) to anyone else
who cares.

I also feel the ongoing and seemingly perpetual pull of
that "pragmatism" Tony so decries. But given the sorry state of
software in general and the obvious fact that my own could be immensely
improved if I understood these things better, I must keep pushing to
understand this stuff until it finally permeates my thick skull.

ichoran
Joined: 2009-08-14,
User offline. Last seen 2 years 3 weeks ago.
Re: Scaladoc that is actually useful?
On Fri, Nov 13, 2009 at 11:07 AM, Geoff Reedy <geoff [at] programmer-monk [dot] net> wrote:
scala> def whenInstanceOf[A,B,C](a:A)(f:B=>C):Option[C] = {
    |   if (a.isInstanceOf[B]) Some(f(a.asInstanceOf[B]))
    |   else None
    | }
warning: there were unchecked warnings; re-run with -unchecked for
details
whenInstanceOf: [A,B,C](A)((B) => C)Option[C]

scala> whenInstanceOf(123){x:String => x}
java.lang.ClassCastException: java.lang.Integer cannot be cast to
java.lang.String

Ugh, yes, I forgot about erasure making asInstanceOf half-useless.  Fine.  Replace with a cast and return None instead if you catch the ClassCastException.  Any of that is valid inside a mathematical function.  It's just a set mapping inputs to outputs.  Any way you can come up with an output--including random generation--is completely fine.  (Maybe it's not useful to build functions that way, but it doesn't make it not-a-function.)
 
Therefore, any dynamic type-checks within a
method subvert the method's signature.  Yes, these sorts of things can
be useful in practice, but they are abhorrent from the point of view of
static type safety, Curry-Howard correspondence, etc.

I've not argued that--I'm only arguing that type theory gives a different idea of a function from mathematics.  It restricts it to avoid things that are "abhorrent from the point of view of static type safety".
 
> But you can use this whenInstanceOf construct to do things that break the
> nice this-must-be-function-composition property of Tony's boo-function.
>
> Anyway, I think I've said enough here.  If learning type theory makes one
> forget what a mathematical function is, that's a pity,

Nothing could be further from the truth. It is impossible to write a
mathematical function f(x) that maps x in some unknown set A to a value
in some other unknown set B. You cannot ask a number what set it belongs
to! In fact set B could be the empty set, what then.

I already have a function that does this--the question is whether I can intercept values from set A and change them *in some cases*.  It depends on what the function is allowed to know.  Suppose we have a set
  F(A,B) = { f : A -> B }
and a set of composable functions
  CF2(A,B,C) = { (f1,f2) | f1 in F(A,B) & f2 in F(B,C) }
and
  c = { ((f1,f2) in CF2(A,B,C) , g in F(A,C)) | A,B,C are sets and foreach (f1,f2) there exists unique ((f1,f2),g) }
then it *doesn't matter* how I come up with elements of F(A,C).  In particular, if I happen to notice that in one special case the set C contains the string "Constant" and in such cases g is always the mapping from A to "Constant", c is still a function from CF2 to F.

Now, depending on how you construct things, you can make it so that you _cannot tell_ whether an element belongs to one set or another--if you throw away the idea of the universal set (and set complement).  I can't quite tell from the axioms of constructive type theory whether or not this is true there (I believe is true; there is no universal set). 

Normally, in set theory with universal sets, you can divide functions into special cases based upon the set into which the argument falls.  For example, if f1 is a function from the reals to the rationals, and f2 is from the rationals to the elements of Z9, I could have a special case for my function c that always returned just the numerator of the rational.

And it turns out that the JVM can tell perfectly well which type is which, even if you need to catch an exception when things go awry.

  --Rex

Dave Griffith
Joined: 2009-01-14,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

Geoff Reedy wrote:
>
> For the record, I believe that everyone here just wants to help broaden
> your understanding of what types really mean.
>

Well, no actually. I don't have any interest in that, and would really
rather help explore his original
question about documenting Scala-as-it-actually-exists. The results of
that are likely to be a lot more
valuable than whatever agenda y'all are pursuing.

--Dave Griffith

Tony Morris 2
Joined: 2009-03-20,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

Believe what you will Dimitris. It has been very fruitful, as others
have testified on the list, in private email and other forms of
communication, and for that I am glad.

Since this topic is quite interesting, not debatable at all (see proof
by parametricity and theorems for free) and highly relevant to the topic
at hand, I am prepared to take it further for those who are fond of
learning, however, I shall await the outcome of discussions of how it is
most appropriate to do so. For example, the question was raised "what
about signatures with multiple inhabitants?", which is itself interesting.

I hope I don't come up against so much resistance to a provable and
proven basic tenet of computational theory again, but I am regularly
surprised (appalled?) at what appeasing "the average programmer" has
achieved in our industry. I suggest we stop doing that now (please oh
please?), but that's another topic!

Apologies for the noise to those who are well aware of the fact at hand
(and thanks for the emails and suggestions (except for "bash them over
the head" which is just a resignation to the pursuit)), but ultimately,
I am glad I pursued the matter for those who got some benefit in
learning, despite the recursive nature of the discussion.

Please let me know if you are interested in understanding this topic
further and I will see what I can do, but as I indicated in one comment,
I am currently overwhelmed with preparations for writing an essay
(book?) to the state medical health board regarding other matters.

I shall depart from this discussion pending aforementioned outcomes and
with even greater compulsion for improved education in our computer
science classrooms. Sorry again for the noise. Have an awesome weekend!

* Theorems for Free, Philip Wadler
http://homepages.inf.ed.ac.uk/wadler/papers/free/free.ps
* Haskell implementation of free theorems
http://hackage.haskell.org/package/free-theorems
* Example usage of Haskell implementation of free theorems using
lambdabot (Freenode IRC)
@free cmp :: (a -> b) -> (b -> a) -> a -> c
lambdabot> g . k = p . f => f . q = f1 . g => h . cmp k q = cmp p f1 . f

Dimitris Andreou wrote:
> 2009/11/13 Tony Morris :
>
>> Unfortunately you have subverted the types. There is no ability to print
>> a universal type. This is an unfortunate part of the Java legacy.
>>
>
> So that was the implicit assumption all along. I hope this helps
> ending this rather fruitless discussion.
>
> As I said yesterday too, Tony is not really talking about scala, as
> you can see above, about the "unfortunate part of the Java legacy". He
> talks about an abstraction that he wishes is equivalent to scala. Only
> through those glasses/assumptions some docs seem redundant. Yet, Tony
> is somehow against documenting assumptions, which is basically a
> wishful thinking that the whole scala community will just adopt the
> same set of assumptions as he, so he does not need to mention them.
>
> _In scala_, which is the context of discussion, there is a type
> hierarchy rooted at Any. For all A, A<:Any. Now, Any is proven to have
> a whole range of methods applicable to it, like like hashCode(), like
> toString(). So, for all A, one can safely call toString(). I'm sure
> someone might scream "subverting!" or "lying!" or "goosfraba!" again
> and again but that is completely irrelevant. Point is: in scala, a
> signature, even as generic as the aptly named "boo" signature, has
> *infinite* different implementations. Knock knock, this is the real
> world hitting the door. Now, we can all pretend instead that the real
> world is irrelevant, and we could rather reason only through our neat
> abstractions, but as someone said, this is kind of Platonic. But
> again, Plato was Plato for all his life, wasn't he?
>
> Dimitris
>
>
>> There is only *one possible answer*.
>>
>> Rex Kerr wrote:
>>
>>> On Thu, Nov 12, 2009 at 3:55 PM, Tony Morris >> > wrote:
>>>
>>> e.g. What would you (could you possibly) write for this function?
>>> def boo[A, B, C](f: A => B, g: B => C): A => C
>>>
>>>
>>> That one? I don't know--it's titled "boo", so it should be a
>>> surprise. Maybe it returns a function that prints out "Boo!" and
>>> returns null. Maybe it returns the BooException and never completes
>>> normally.
>>>
>>> How about this one?
>>>
>>> def printIntermediate[A,B,C](f: A => B, g: B => C): A => C
>>>
>>> Same type signature. Maybe it, I don't know, creates a function that
>>> prints out the intermediate result of type B in addition to doing the
>>> function composition?
>>>
>>> How about
>>>
>>> def nullCatch[A,B,C](f: A => B, g: B => C): A => C
>>>
>>> Same type signature again. This might possibly catch if inputs are
>>> null and throw null outputs rather than throwing exceptions, in
>>> addition to composing the functions.
>>>
>>> If you don't document your functions, how are people supposed to know
>>> whether and what side effects there are, and whether the function is
>>> value-added (as in nullCatch) or not (as in the straightforward
>>> function-composition boo that I assume you were imagining)?
>>>
>>> --Rex
>>>
>>>
>> --
>> Tony Morris
>> http://tmorris.net/
>>
>>
>>
>>
>
>

Cay Horstmann
Joined: 2009-09-04,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

I understand the value of having the traits, but that doesn't mean
they need to be the only navigation path. I'd like the option of an
alpha listing of all methods. I'd like the option of a listing by
trait, with a comment next to the method, to help me decide whether it
is worth drilling down. Maybe the trait docs could be inline expanded
rather than replacing the current page.

Javadoc worked fine for Java--single inheritance, a few small
interfaces here and there. For Scala, let's think out of the box and
come up with a doc system that plays to the strengths of Scala.

Cheers,

Cay

On Fri, Nov 13, 2009 at 5:54 AM, Daniel Sobral wrote:
> It seems I only reply to you on this thread. :-)
>
> Ok, without dismissing the problems with Scala API docs, which I do think it
> is an important topic, I think the problem here is not quite what you
> perceive it to be.
>
> Java has relatively small (poor) interfaces, because the language makes it
> hard to have rich interfaces. Scala, on the other hand, enables very rich
> interfaces with a low implementation cost.
>
> So, I ask you to consider this... how would you feel if all the methods for
> all these traits were simply listed one after the other, with their type
> signatures and descriptions? I don't know about you, but I'd feel tired just
> by looking at it, before even trying to read it.
>
> When the class makes such extensive use of traits, however, I make use of
> previous knowledge. It won't help absolute beginners at first, but, at
> least, you get to reuse the knowledge you have previously acquired.
>
> For instance, I have a fair knowledge of what I can do with an Iterable, so,
> knowing this class is IterableLike and TraversableLike already tells me a
> lot of things, without having to look up anything else. The same goes for
> PartialFunction and Function1.
>
> And that means that, very much contrary to what you have stated, I *only*
> have to concentrate on:
>
> ResizableArray
> Builder
> IndexedSeqLike
> IndexedSeqLike (again, but this time not mutable)
> BufferLike
> Shrinkable
> Growable
> This is a huge decrease in the number of methods I have to look up.
> Furthermore, I know a lot of methods I'm used to are present as well.
>
> The alternative, of course, is not having most of these methods and having
> to reinvent the wheel each time I need something like them.
> On Fri, Nov 13, 2009 at 2:36 AM, Cay Horstmann
> wrote:
>>
>> Earlier today I agreed with the original poster that there is a
>> problem with Scaladoc, in that it makes seemingly simple tasks
>> excessively complex for the programmer who has to get work done. That
>> discussion went off on some odd tangent about type systems that I will
>> ignore.
>>
>> Back to the original complaint...suppose I want to use an ArrayBuffer
>> in 2.8. The scaladoc sends me to
>>
>> ResizableArray
>> Builder
>> IndexedSeqLike
>> IndexedSeqLike (again, but this time not mutable)
>> BufferLike
>> Shrinkable
>> Growable
>> SeqLike
>> PartialFunction
>> Function1
>> iterableLike
>> GenericTraversableTemplate
>> TraversableLike
>> AnyRef
>> Any
>>
>> Ok, maybe it's the Scala way to pick up lots of fragmentary traits.
>> But then the Scaladoc could have a friendlier way of helping the new
>> user, such as inline expanding the docs for the traits, or at least,
>> copying out the summary method statements.
>>
>> This really needs some fresh thinking without detours into "my mother
>> knows more type theory than your mother".
>
>
>
> --
> Daniel C. Sobral
>
> Veni, vidi, veterni.
>

pchapin
Joined: 2009-01-18,
User offline. Last seen 3 years 12 weeks ago.
Re: Scaladoc that is actually useful?

Tony Morris wrote
in news:4AFC9602 [dot] 4090200 [at] gmail [dot] com:

> You've subverted the types again. forall A B. A -> B is not a theorem.
>
> I assure you, there is only one possible solution and I didn't just
> make it up. I refer back to my lobbying for basic type theory in
> schools. I predict we wouldn't be having this discussion, but a more
> interesting one.

This is legal Scala

def boo[A, B, C](f : A=>B, g : B=>C) : A=>C = {
println("Hello")
(x : A) => (g(f(x)))
}

Thus boo can have aribtrary side effects. Those side effects (or lack
thereof) must be documented. The type signature does not describe them.

Peter

Tony Morris 2
Joined: 2009-03-20,
User offline. Last seen 42 years 45 weeks ago.
Re: Re: Scaladoc that is actually useful?

It may legal Scala but it explicitly violates what I said. I didn't say
that Scala disallows subversion of the type signature. It's amazing that
I have said this about 6 times now, yet there are people who insist on
"disagreeing" with a mathematically proven fact. It's not there to be
disagreed with, unless you have found an error in the proof.

I offer nothing but resent and disgust at any future suggestions that we
should "try to make it easier for the typical programmer." No we should
flamin' well educate them!

Peter C. Chapin wrote:
> Tony Morris wrote
> in news:4AFC9602 [dot] 4090200 [at] gmail [dot] com:
>
>
>> You've subverted the types again. forall A B. A -> B is not a theorem.
>>
>> I assure you, there is only one possible solution and I didn't just
>> make it up. I refer back to my lobbying for basic type theory in
>> schools. I predict we wouldn't be having this discussion, but a more
>> interesting one.
>>
>
> This is legal Scala
>
> def boo[A, B, C](f : A=>B, g : B=>C) : A=>C = {
> println("Hello")
> (x : A) => (g(f(x)))
> }
>
>
> Thus boo can have aribtrary side effects. Those side effects (or lack
> thereof) must be documented. The type signature does not describe them.
>
> Peter
>
>
>
>

Dave Griffith
Joined: 2009-01-14,
User offline. Last seen 42 years 45 weeks ago.
Re: Re: Scaladoc that is actually useful?

Tony Morris-4 wrote:
>
> No we should flamin' well educate them!
>

And you believe this educational process is best done by screaming,
sneering, belittling, ignoring, and obfuscating? Cause there's sure been a
lot of all of those in this thread.

--Dave Griffith

Dave Griffith
Joined: 2009-01-14,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

I was. If you really don't want to you how your behaviour in this thread
has been perceived, that's your prerogative, of course.

--Dave Griffith

Tony Morris-4 wrote:
>
> No there hasn't. Be honest.
>
> Dave Griffith wrote:
>>
>> Tony Morris-4 wrote:
>>
>>> No we should flamin' well educate them!
>>>
>>>
>>
>> And you believe this educational process is best done by screaming,
>> sneering, belittling, ignoring, and obfuscating? Cause there's sure
>> been a
>> lot of all of those in this thread.
>>
>> --Dave Griffith
>>
>

Tony Morris 2
Joined: 2009-03-20,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

No there hasn't. Be honest.

Dave Griffith wrote:
>
> Tony Morris-4 wrote:
>
>> No we should flamin' well educate them!
>>
>>
>
> And you believe this educational process is best done by screaming,
> sneering, belittling, ignoring, and obfuscating? Cause there's sure been a
> lot of all of those in this thread.
>
> --Dave Griffith
>

Tony Morris 2
Joined: 2009-03-20,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

Email me in private and let me know.

As far as I see, I have certainly not been "sneering" unless that is
synonymous with "repeating yourself in a different manner for those who
have failed to comprehend." I have not "belittled" anyone, though I have
pointed out that we are dealing with a provable and proven fact. It's
also falsifiable -- simply provide a counter-example; observe how this
has not occurred (despite failed attempts). Ignoring! Haha! I think
you're on your own in believing that one -- 150-email thread and I have
been "ignoring." Uh huh. Obfuscating? I stated a very simple exercise in
a very small paragraph. It truly doesn't get any easier.

So Dave, if you think this is all or partly untrue, email me in private.
I'm keen to hear where you think I am wrong. Be honest and don't make
shit up.

Dave Griffith wrote:
> I was. If you really don't want to you how your behaviour in this thread
> has been perceived, that's your prerogative, of course.
>
> --Dave Griffith
>
>
> Tony Morris-4 wrote:
>
>> No there hasn't. Be honest.
>>
>> Dave Griffith wrote:
>>
>>> Tony Morris-4 wrote:
>>>
>>>
>>>> No we should flamin' well educate them!
>>>>
>>>>
>>>>
>>> And you believe this educational process is best done by screaming,
>>> sneering, belittling, ignoring, and obfuscating? Cause there's sure
>>> been a
>>> lot of all of those in this thread.
>>>
>>> --Dave Griffith
>>>
>>>

Dave Griffith
Joined: 2009-01-14,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

I thought about this for a bit, and honestly have neither the time nor the
energy to do so.
You can claim internet victory because of that if you wish, and I'd bet good
money that you will. Alternatively, you could read back through the rather
thuggishly hijacked thread and try
to imagine how you must sound to others. In particular, how you must sound
others
who don't share your priors about what the appropriate domain of
discourse of a Scala
mailing list should be. For extra points, imagine it from the point of
view of someone
outside the community, trying to decide whether to use Scala or not. How
effective do you
really think you've been at "educating" them?

--Dave Griffith

Tony Morris 2
Joined: 2009-03-20,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

Your motives are exposed. There is no "internet victory." I stated my
motives up front. I wish to educate. I succeeded. I have personal
testimonies to that effect. I even have people that got off first base
and explored interesting questions down the path! Yes this excites me,
"internet victory" (whatever that means) doesn't. I'll hand that over to
you for whatever purpose it serves.

I'll read back through it some day, but it is rather uninteresting.
Consider my possible motivations for reading myself repeating a well
established fact, to appease what I can only consider is a lack of
comprehension. There is nothing for me to gain here, neither to learn
nor for teaching.

You are right that the thread may have turned people off. I know 2
people who have thought, to paraphrase, "how can programmers be that
stupid!?" I discourage that type of discourse and I think it is unfair,
but they think it nonetheless. I'm sure it affected their prejudices of
using Scala. I also think it is unfair that while stating highly
relevant, proven, educational facts may or may not be contrary to
"appeasing the point of view of someone outside the community" (is it
really?), then there should be any apprehension of doing exactly that.

Do you find it offensive that there are people who learned by thinking
about it?

Dave Griffith wrote:
> I thought about this for a bit, and honestly have neither the time nor the
> energy to do so.
> You can claim internet victory because of that if you wish, and I'd bet good
> money that you will. Alternatively, you could read back through the rather
> thuggishly hijacked thread and try
> to imagine how you must sound to others. In particular, how you must sound
> others
> who don't share your priors about what the appropriate domain of
> discourse of a Scala
> mailing list should be. For extra points, imagine it from the point of
> view of someone
> outside the community, trying to decide whether to use Scala or not. How
> effective do you
> really think you've been at "educating" them?
>
> --Dave Griffith
>
>
>

Tony Morris 2
Joined: 2009-03-20,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

Sorry Dave and list, I meant to reply off list. If you could that I Dave
I'd appreciate it.

Tony Morris wrote:
> Your motives are exposed. There is no "internet victory." I stated my
> motives up front. I wish to educate. I succeeded. I have personal
> testimonies to that effect. I even have people that got off first base
> and explored interesting questions down the path! Yes this excites me,
> "internet victory" (whatever that means) doesn't. I'll hand that over to
> you for whatever purpose it serves.
>
> I'll read back through it some day, but it is rather uninteresting.
> Consider my possible motivations for reading myself repeating a well
> established fact, to appease what I can only consider is a lack of
> comprehension. There is nothing for me to gain here, neither to learn
> nor for teaching.
>
> You are right that the thread may have turned people off. I know 2
> people who have thought, to paraphrase, "how can programmers be that
> stupid!?" I discourage that type of discourse and I think it is unfair,
> but they think it nonetheless. I'm sure it affected their prejudices of
> using Scala. I also think it is unfair that while stating highly
> relevant, proven, educational facts may or may not be contrary to
> "appeasing the point of view of someone outside the community" (is it
> really?), then there should be any apprehension of doing exactly that.
>
> Do you find it offensive that there are people who learned by thinking
> about it?
>
> Dave Griffith wrote:
>
>> I thought about this for a bit, and honestly have neither the time nor the
>> energy to do so.
>> You can claim internet victory because of that if you wish, and I'd bet good
>> money that you will. Alternatively, you could read back through the rather
>> thuggishly hijacked thread and try
>> to imagine how you must sound to others. In particular, how you must sound
>> others
>> who don't share your priors about what the appropriate domain of
>> discourse of a Scala
>> mailing list should be. For extra points, imagine it from the point of
>> view of someone
>> outside the community, trying to decide whether to use Scala or not. How
>> effective do you
>> really think you've been at "educating" them?
>>
>> --Dave Griffith
>>
>>
>>
>>
>
>

Viktor Klang
Joined: 2008-12-17,
User offline. Last seen 1 year 27 weeks ago.
Re: Scaladoc that is actually useful?
It a rare occurrence, but I have to say that I'm with Tony on this one.

One might not appreciate the tone of Tony in this series of e-mails, but he's kept it balanced throughout his correspondence.

On Sun, Nov 15, 2009 at 10:24 PM, Tony Morris <tonymorris [at] gmail [dot] com> wrote:
Sorry Dave and list, I meant to reply off list. If you could that I Dave
I'd appreciate it.

Tony Morris wrote:
> Your motives are exposed. There is no "internet victory." I stated my
> motives up front. I wish to educate. I succeeded. I have personal
> testimonies to that effect. I even have people that got off first base
> and explored interesting questions down the path! Yes this excites me,
> "internet victory" (whatever that means) doesn't. I'll hand that over to
> you for whatever purpose it serves.
>
> I'll read back through it some day, but it is rather uninteresting.
> Consider my possible motivations for reading myself repeating a well
> established fact, to appease what I can only consider is a lack of
> comprehension. There is nothing for me to gain here, neither to learn
> nor for teaching.
>
> You are right that the thread may have turned people off. I know 2
> people who have thought, to paraphrase, "how can programmers be that
> stupid!?" I discourage that type of discourse and I think it is unfair,
> but they think it nonetheless. I'm sure it affected their prejudices of
> using Scala. I also think it is unfair that while stating highly
> relevant, proven, educational facts may or may not be contrary to
> "appeasing the point of view of someone outside the community" (is it
> really?), then there should be any apprehension of doing exactly that.
>
> Do you find it offensive that there are people who learned by thinking
> about it?
>
> Dave Griffith wrote:
>
>> I thought about this for a bit, and honestly have neither the time nor the
>> energy to do so.
>> You can claim internet victory because of that if you wish, and I'd bet good
>> money that you will.  Alternatively, you could read back through the rather
>> thuggishly hijacked thread and try
>> to imagine how you must  sound to others.  In particular, how you must sound
>> others
>> who don't  share your priors  about what the  appropriate domain of
>> discourse of a Scala
>> mailing list should be.   For extra points, imagine it from the point of
>> view of someone
>> outside the community, trying to decide whether to use Scala or not.  How
>> effective do you
>> really think you've been at "educating" them?
>>
>> --Dave Griffith
>>
>>
>>
>>
>
>

--
Tony Morris
http://tmorris.net/





--
Viktor Klang
| "A complex system that works is invariably
| found to have evolved from a simple system
| that worked." - John Gall

Blog: klangism.blogspot.com
Twttr: twitter.com/viktorklang
Code: github.com/viktorklang
loverdos
Joined: 2008-11-18,
User offline. Last seen 2 years 27 weeks ago.
Re: Scaladoc that is actually useful?

On Nov 16, 2009, at 24:47, Viktor Klang wrote:
It a rare occurrence, but I have to say that I'm with Tony on this one.

One might not appreciate the tone of Tony in this series of e-mails, but he's kept it balanced throughout his correspondence.

Count me in on this one. My thoughts exactly.
I believe the crucial observation is "one might not appreciate the tone of Tony". A failure to see the big picture behind one's wording is a micro-social phenomenon. If, instead of getting ready to go to war, we could all just get better prepared to listen (and provided the one that speaks has good motives), then the outcome would be much more productive.
Thank you Viktor. I thought I should not go public, but your phrase that I quoted resonated with my thoughts on the matter [stated in private elsewhere].

On Sun, Nov 15, 2009 at 10:24 PM, Tony Morris <tonymorris [at] gmail [dot] com> wrote:
Sorry Dave and list, I meant to reply off list. If you could that I Dave
I'd appreciate it.

Tony Morris wrote:
> Your motives are exposed. There is no "internet victory." I stated my
> motives up front. I wish to educate. I succeeded. I have personal
> testimonies to that effect. I even have people that got off first base
> and explored interesting questions down the path! Yes this excites me,
> "internet victory" (whatever that means) doesn't. I'll hand that over to
> you for whatever purpose it serves.
>
> I'll read back through it some day, but it is rather uninteresting.
> Consider my possible motivations for reading myself repeating a well
> established fact, to appease what I can only consider is a lack of
> comprehension. There is nothing for me to gain here, neither to learn
> nor for teaching.
>
> You are right that the thread may have turned people off. I know 2
> people who have thought, to paraphrase, "how can programmers be that
> stupid!?" I discourage that type of discourse and I think it is unfair,
> but they think it nonetheless. I'm sure it affected their prejudices of
> using Scala. I also think it is unfair that while stating highly
> relevant, proven, educational facts may or may not be contrary to
> "appeasing the point of view of someone outside the community" (is it
> really?), then there should be any apprehension of doing exactly that.
>
> Do you find it offensive that there are people who learned by thinking
> about it?
>
> Dave Griffith wrote:
>
>> I thought about this for a bit, and honestly have neither the time nor the
>> energy to do so.
>> You can claim internet victory because of that if you wish, and I'd bet good
>> money that you will.  Alternatively, you could read back through the rather
>> thuggishly hijacked thread and try
>> to imagine how you must  sound to others.  In particular, how you must sound
>> others
>> who don't  share your priors  about what the  appropriate domain of
>> discourse of a Scala
>> mailing list should be.   For extra points, imagine it from the point of
>> view of someone
>> outside the community, trying to decide whether to use Scala or not.  How
>> effective do you
>> really think you've been at "educating" them?
>>
>> --Dave Griffith
>>
>>
>>
>>
>
>

--
Tony Morris
http://tmorris.net/





--
Viktor Klang
| "A complex system that works is invariably
| found to have evolved from a simple system
| that worked." - John Gall

Blog: klangism.blogspot.com
Twttr: twitter.com/viktorklang
Code: github.com/viktorklang

Christos
-- 
   __~O
  -\ <,       Christos KK Loverdos
(*)/ (*)      http://ckkloverdos.com





Chris Marshall
Joined: 2009-06-17,
User offline. Last seen 44 weeks 3 days ago.
RE: Scaladoc that is actually useful?
This is what Tony said to the *first* person who said that he disagreed that Tony's boo function should be commented as it would not be clear to all (which he had written quite "passively"):

"I think you should seriously consider your position, since your apathy and indirect advocacy for poor education is part of the problem, not the solution"

I'm sorry, but I happen to find this sort of language and approach unwarranted, unnecessary and does not belong on a professional mailing list. It has all the hallmarks of a troll: i.e. it falls short of direct personal abuse but can largely be read/interpreted as such.

I think it was this initial attitude that largely set the combative and confrontational tone for the rest of the discussion.

Chris

Date: Sun, 15 Nov 2009 23:47:19 +0100
Subject: Re: [scala-user] Scaladoc that is actually useful?
From: viktor [dot] klang [at] gmail [dot] com
To: tonymorris [at] gmail [dot] com
CC: dave [dot] l [dot] griffith [at] gmail [dot] com; scala-user [at] listes [dot] epfl [dot] ch

It a rare occurrence, but I have to say that I'm with Tony on this one.

One might not appreciate the tone of Tony in this series of e-mails, but he's kept it balanced throughout his correspondence.

On Sun, Nov 15, 2009 at 10:24 PM, Tony Morris <tonymorris [at] gmail [dot] com> wrote:
Sorry Dave and list, I meant to reply off list. If you could that I Dave
I'd appreciate it.

Tony Morris wrote:
> Your motives are exposed. There is no "internet victory." I stated my
> motives up front. I wish to educate. I succeeded. I have personal
> testimonies to that effect. I even have people that got off first base
> and explored interesting questions down the path! Yes this excites me,
> "internet victory" (whatever that means) doesn't. I'll hand that over to
> you for whatever purpose it serves.
>
> I'll read back through it some day, but it is rather uninteresting.
> Consider my possible motivations for reading myself repeating a well
> established fact, to appease what I can only consider is a lack of
> comprehension. There is nothing for me to gain here, neither to learn
> nor for teaching.
>
> You are right that the thread may have turned people off. I know 2
> people who have thought, to paraphrase, "how can programmers be that
> stupid!?" I discourage that type of discourse and I think it is unfair,
> but they think it nonetheless. I'm sure it affected their prejudices of
> using Scala. I also think it is unfair that while stating highly
> relevant, proven, educational facts may or may not be contrary to
> "appeasing the point of view of someone outside the community" (is it
> really?), then there should be any apprehension of doing exactly that.
>
> Do you find it offensive that there are people who learned by thinking
> about it?
>
> Dave Griffith wrote:
>
>> I thought about this for a bit, and honestly have neither the time nor the
>> energy to do so.
>> You can claim internet victory because of that if you wish, and I'd bet good
>> money that you will.  Alternatively, you could read back through the rather
>> thuggishly hijacked thread and try
>> to imagine how you must  sound to others.  In particular, how you must sound
>> others
>> who don't  share your priors  about what the  appropriate domain of
>> discourse of a Scala
>> mailing list should be.   For extra points, imagine it from the point of
>> view of someone
>> outside the community, trying to decide whether to use Scala or not.  How
>> effective do you
>> really think you've been at "educating" them?
>>
>> --Dave Griffith
>>
>>
>>
>>
>
>

--
Tony Morris
http://tmorris.net/





--
Viktor Klang
| "A complex system that works is invariably
| found to have evolved from a simple system
| that worked." - John Gall

Blog: klangism.blogspot.com
Twttr: twitter.com/viktorklang
Code: github.com/viktorklang

New! Receive and respond to mail from other email accounts from within Hotmail Find out how.
Tony Morris 2
Joined: 2009-03-20,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

It's actually a parody of precisely what you wrote after you denied a fact.

christopher marshall wrote:
> This is what Tony said to the *first* person who said that he
> disagreed that Tony's boo function should be commented as it would not
> be clear to all (which he had written quite "passively"):
>
> "I think you should seriously consider your position, since your
> apathy and indirect advocacy for poor education is part of the
> problem, not the solution"
>
> I'm sorry, but I happen to find this sort of language and approach
> unwarranted, unnecessary and does not belong on a professional mailing
> list. It has all the hallmarks of a troll: i.e. it falls short of
> direct personal abuse but can largely be read/interpreted as such.
>
> I think it was this initial attitude that largely set the combative
> and confrontational tone for the rest of the discussion.
>
> Chris
>
> ------------------------------------------------------------------------
> Date: Sun, 15 Nov 2009 23:47:19 +0100
> Subject: Re: [scala-user] Scaladoc that is actually useful?
> From: viktor [dot] klang [at] gmail [dot] com
> To: tonymorris [at] gmail [dot] com
> CC: dave [dot] l [dot] griffith [at] gmail [dot] com; scala-user [at] listes [dot] epfl [dot] ch
>
> It a rare occurrence, but I have to say that I'm with Tony on this one.
>
> One might not appreciate the tone of Tony in this series of e-mails,
> but he's kept it balanced throughout his correspondence.
>
> On Sun, Nov 15, 2009 at 10:24 PM, Tony Morris > wrote:
>
> Sorry Dave and list, I meant to reply off list. If you could that
> I Dave
> I'd appreciate it.
>
> Tony Morris wrote:
> > Your motives are exposed. There is no "internet victory." I
> stated my
> > motives up front. I wish to educate. I succeeded. I have personal
> > testimonies to that effect. I even have people that got off
> first base
> > and explored interesting questions down the path! Yes this
> excites me,
> > "internet victory" (whatever that means) doesn't. I'll hand that
> over to
> > you for whatever purpose it serves.
> >
> > I'll read back through it some day, but it is rather uninteresting.
> > Consider my possible motivations for reading myself repeating a well
> > established fact, to appease what I can only consider is a lack of
> > comprehension. There is nothing for me to gain here, neither to
> learn
> > nor for teaching.
> >
> > You are right that the thread may have turned people off. I know 2
> > people who have thought, to paraphrase, "how can programmers be that
> > stupid!?" I discourage that type of discourse and I think it is
> unfair,
> > but they think it nonetheless. I'm sure it affected their
> prejudices of
> > using Scala. I also think it is unfair that while stating highly
> > relevant, proven, educational facts may or may not be contrary to
> > "appeasing the point of view of someone outside the community"
> (is it
> > really?), then there should be any apprehension of doing exactly
> that.
> >
> > Do you find it offensive that there are people who learned by
> thinking
> > about it?
> >
> > Dave Griffith wrote:
> >
> >> I thought about this for a bit, and honestly have neither the
> time nor the
> >> energy to do so.
> >> You can claim internet victory because of that if you wish, and
> I'd bet good
> >> money that you will. Alternatively, you could read back
> through the rather
> >> thuggishly hijacked thread and try
> >> to imagine how you must sound to others. In particular, how
> you must sound
> >> others
> >> who don't share your priors about what the appropriate domain of
> >> discourse of a Scala
> >> mailing list should be. For extra points, imagine it from the
> point of
> >> view of someone
> >> outside the community, trying to decide whether to use Scala or
> not. How
> >> effective do you
> >> really think you've been at "educating" them?
> >>
> >> --Dave Griffith
> >>
> >>
> >>
> >>
> >
> >
>
> --
> Tony Morris
> http://tmorris.net/
>
>
>
>
>

Tony Morris 2
Joined: 2009-03-20,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

Gah, sorry again list. Can we take this offline please?

By "you" I mean whoever it was I was parodying.

Tony Morris wrote:
> It's actually a parody of precisely what you wrote after you denied a fact.
>
> christopher marshall wrote:
>
>> This is what Tony said to the *first* person who said that he
>> disagreed that Tony's boo function should be commented as it would not
>> be clear to all (which he had written quite "passively"):
>>
>> "I think you should seriously consider your position, since your
>> apathy and indirect advocacy for poor education is part of the
>> problem, not the solution"
>>
>> I'm sorry, but I happen to find this sort of language and approach
>> unwarranted, unnecessary and does not belong on a professional mailing
>> list. It has all the hallmarks of a troll: i.e. it falls short of
>> direct personal abuse but can largely be read/interpreted as such.
>>
>> I think it was this initial attitude that largely set the combative
>> and confrontational tone for the rest of the discussion.
>>
>> Chris
>>
>> ------------------------------------------------------------------------
>> Date: Sun, 15 Nov 2009 23:47:19 +0100
>> Subject: Re: [scala-user] Scaladoc that is actually useful?
>> From: viktor [dot] klang [at] gmail [dot] com
>> To: tonymorris [at] gmail [dot] com
>> CC: dave [dot] l [dot] griffith [at] gmail [dot] com; scala-user [at] listes [dot] epfl [dot] ch
>>
>> It a rare occurrence, but I have to say that I'm with Tony on this one.
>>
>> One might not appreciate the tone of Tony in this series of e-mails,
>> but he's kept it balanced throughout his correspondence.
>>
>> On Sun, Nov 15, 2009 at 10:24 PM, Tony Morris > > wrote:
>>
>> Sorry Dave and list, I meant to reply off list. If you could that
>> I Dave
>> I'd appreciate it.
>>
>> Tony Morris wrote:
>> > Your motives are exposed. There is no "internet victory." I
>> stated my
>> > motives up front. I wish to educate. I succeeded. I have personal
>> > testimonies to that effect. I even have people that got off
>> first base
>> > and explored interesting questions down the path! Yes this
>> excites me,
>> > "internet victory" (whatever that means) doesn't. I'll hand that
>> over to
>> > you for whatever purpose it serves.
>> >
>> > I'll read back through it some day, but it is rather uninteresting.
>> > Consider my possible motivations for reading myself repeating a well
>> > established fact, to appease what I can only consider is a lack of
>> > comprehension. There is nothing for me to gain here, neither to
>> learn
>> > nor for teaching.
>> >
>> > You are right that the thread may have turned people off. I know 2
>> > people who have thought, to paraphrase, "how can programmers be that
>> > stupid!?" I discourage that type of discourse and I think it is
>> unfair,
>> > but they think it nonetheless. I'm sure it affected their
>> prejudices of
>> > using Scala. I also think it is unfair that while stating highly
>> > relevant, proven, educational facts may or may not be contrary to
>> > "appeasing the point of view of someone outside the community"
>> (is it
>> > really?), then there should be any apprehension of doing exactly
>> that.
>> >
>> > Do you find it offensive that there are people who learned by
>> thinking
>> > about it?
>> >
>> > Dave Griffith wrote:
>> >
>> >> I thought about this for a bit, and honestly have neither the
>> time nor the
>> >> energy to do so.
>> >> You can claim internet victory because of that if you wish, and
>> I'd bet good
>> >> money that you will. Alternatively, you could read back
>> through the rather
>> >> thuggishly hijacked thread and try
>> >> to imagine how you must sound to others. In particular, how
>> you must sound
>> >> others
>> >> who don't share your priors about what the appropriate domain of
>> >> discourse of a Scala
>> >> mailing list should be. For extra points, imagine it from the
>> point of
>> >> view of someone
>> >> outside the community, trying to decide whether to use Scala or
>> not. How
>> >> effective do you
>> >> really think you've been at "educating" them?
>> >>
>> >> --Dave Griffith
>> >>
>> >>
>> >>
>> >>
>> >
>> >
>>
>> --
>> Tony Morris
>> http://tmorris.net/
>>
>>
>>
>>
>>

Chris Marshall
Joined: 2009-06-17,
User offline. Last seen 44 weeks 3 days ago.
RE: Scaladoc that is actually useful?
http://en.wikipedia.org/wiki/Parody

Hmmm, I don't quite see it. Perhaps there is a proof?

> Date: Mon, 16 Nov 2009 19:07:20 +1000
> From: tonymorris [at] gmail [dot] com
> To: oxbow_lakes [at] hotmail [dot] com
> CC: viktor [dot] klang [at] gmail [dot] com; dave [dot] l [dot] griffith [at] gmail [dot] com; scala-user [at] listes [dot] epfl [dot] ch
> Subject: Re: [scala-user] Scaladoc that is actually useful?
>
> Gah, sorry again list. Can we take this offline please?
>
> By "you" I mean whoever it was I was parodying.
>
> Tony Morris wrote:
> > It's actually a parody of precisely what you wrote after you denied a fact.
> >
> > christopher marshall wrote:
> >
> >> This is what Tony said to the *first* person who said that he
> >> disagreed that Tony's boo function should be commented as it would not
> >> be clear to all (which he had written quite "passively"):
> >>
> >> "I think you should seriously consider your position, since your
> >> apathy and indirect advocacy for poor education is part of the
> >> problem, not the solution"
> >>
> >> I'm sorry, but I happen to find this sort of language and approach
> >> unwarranted, unnecessary and does not belong on a professional mailing
> >> list. It has all the hallmarks of a troll: i.e. it falls short of
> >> direct personal abuse but can largely be read/interpreted as such.
> >>
> >> I think it was this initial attitude that largely set the combative
> >> and confrontational tone for the rest of the discussion.
> >>
> >> Chris
> >>
> >> ------------------------------------------------------------------------
> >> Date: Sun, 15 Nov 2009 23:47:19 +0100
> >> Subject: Re: [scala-user] Scaladoc that is actually useful?
> >> From: viktor [dot] klang [at] gmail [dot] com
> >> To: tonymorris [at] gmail [dot] com
> >> CC: dave [dot] l [dot] griffith [at] gmail [dot] com; scala-user [at] listes [dot] epfl [dot] ch
> >>
> >> It a rare occurrence, but I have to say that I'm with Tony on this one.
> >>
> >> One might not appreciate the tone of Tony in this series of e-mails,
> >> but he's kept it balanced throughout his correspondence.
> >>
> >> On Sun, Nov 15, 2009 at 10:24 PM, Tony Morris <tonymorris [at] gmail [dot] com
> >> <mailto:tonymorris [at] gmail [dot] com>> wrote:
> >>
> >> Sorry Dave and list, I meant to reply off list. If you could that
> >> I Dave
> >> I'd appreciate it.
> >>
> >> Tony Morris wrote:
> >> > Your motives are exposed. There is no "internet victory." I
> >> stated my
> >> > motives up front. I wish to educate. I succeeded. I have personal
> >> > testimonies to that effect. I even have people that got off
> >> first base
> >> > and explored interesting questions down the path! Yes this
> >> excites me,
> >> > "internet victory" (whatever that means) doesn't. I'll hand that
> >> over to
> >> > you for whatever purpose it serves.
> >> >
> >> > I'll read back through it some day, but it is rather uninteresting.
> >> > Consider my possible motivations for reading myself repeating a well
> >> > established fact, to appease what I can only consider is a lack of
> >> > comprehension. There is nothing for me to gain here, neither to
> >> learn
> >> > nor for teaching.
> >> >
> >> > You are right that the thread may have turned people off. I know 2
> >> > people who have thought, to paraphrase, "how can programmers be that
> >> > stupid!?" I discourage that type of discourse and I think it is
> >> unfair,
> >> > but they think it nonetheless. I'm sure it affected their
> >> prejudices of
> >> > using Scala. I also think it is unfair that while stating highly
> >> > relevant, proven, educational facts may or may not be contrary to
> >> > "appeasing the point of view of someone outside the community"
> >> (is it
> >> > really?), then there should be any apprehension of doing exactly
> >> that.
> >> >
> >> > Do you find it offensive that there are people who learned by
> >> thinking
> >> > about it?
> >> >
> >> > Dave Griffith wrote:
> >> >
> >> >> I thought about this for a bit, and honestly have neither the
> >> time nor the
> >> >> energy to do so.
> >> >> You can claim internet victory because of that if you wish, and
> >> I'd bet good
> >> >> money that you will. Alternatively, you could read back
> >> through the rather
> >> >> thuggishly hijacked thread and try
> >> >> to imagine how you must sound to others. In particular, how
> >> you must sound
> >> >> others
> >> >> who don't share your priors about what the appropriate domain of
> >> >> discourse of a Scala
> >> >> mailing list should be. For extra points, imagine it from the
> >> point of
> >> >> view of someone
> >> >> outside the community, trying to decide whether to use Scala or
> >> not. How
> >> >> effective do you
> >> >> really think you've been at "educating" them?
> >> >>
> >> >> --Dave Griffith
> >> >>
> >> >>
> >> >>
> >> >>
> >> >
> >> >
> >>
> >> --
> >> Tony Morris
> >> http://tmorris.net/
> >>
> >>
> >>
> >>
> >>
> >> --
> >> Viktor Klang
> >> | "A complex system that works is invariably
> >> | found to have evolved from a simple system
> >> | that worked." - John Gall
> >>
> >> Blog: klangism.blogspot.com <http://klangism.blogspot.com>
> >> Twttr: twitter.com/viktorklang <http://twitter.com/viktorklang>
> >> Code: github.com/viktorklang <http://github.com/viktorklang>
> >>
> >> ------------------------------------------------------------------------
> >> New! Receive and respond to mail from other email accounts from within
> >> Hotmail Find out how.
> >> <http://clk.atdmt.com/UKM/go/186394593/direct/01/%20>
> >>
> >
> >
>
> --
> Tony Morris
> http://tmorris.net/
>
>

Add other email accounts to Hotmail in 3 easy steps. Find out how.
Burkhard Ludwig
Joined: 2009-04-18,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?

Victor,
Haven typed all this below, I am concerned that you might feel attacked by me since I started this in respond to you. This is not my intent. But in order not to type this once more, I leave it as it is, but want to emphasize that I respond to you, just because the sentence below made me start to type in the first place.

2009/11/15 Viktor Klang <viktor [dot] klang [at] gmail [dot] com>

One might not appreciate the tone of Tony in this series of e-mails, but he's kept it balanced throughout his correspondence.
 I cannot  really agree to this. When I try do describe why I must recap the approximate course of this thread.
  • Somebody started a thread on order to discuss necessity and directions to improve the documentation (as it is now) of the API (as it is now) of a language named scala (as it is now)
  • Mr. Morris stepped in and presented a mathematical fact in a way that some readers (me included) did not recognize that he was talking about mathematics. And he adorned this with an argument what I read as: "To anybody who does not understand that: please read a good book and then come back".
  • People who did not agree where now easily be shown in error since it is difficult to argue against mathematics.
  • Occasional attempts of posters to come back to the topic of improving the API-documentation where washed away by the "traffic" on function types.
If I analyze this, I see that this is based on a double hijack and a well know rhetoric technique, namely hide your premises and thus make people accept them unknowingly.
  • The original posters concern (and the concern of responders who cared for that) has been occupied for a different agenda. Even if Mr. Morris felt obliged to pursue his agenda and needed an eye catcher for this, he would have been responsible to refactor the topic into a different thread. Instead, people together and their intent-to-discuss and their topic I had in effect been bodychecked away [http://en.wikipedia.org/wiki/Bodycheck
  • To explain the other hijack, I rephrase the structure of Mr. Morris argument and then prove it in the context of scala: Premise: "You have a function type like this ..." Conclusion: "There is only one function individual which fulfills it".  Proof: "That is correct, since the premise is always false because there are no functions in scala at all, there are just methods of objects".  (Remember that some on-topic-posters would have liked another way of documenting a class or trait which among others "is" a mutable container which the prototype of an object with state). This kind of hijack was and is far from obvious for the non-insiders.
  • The remaining plot was based of the unspoken premises of Mr. Morris and what a programmer should do and not do. The explanations where centered about the term "subvert". That translates to: what is admissible and what proves you to be uneducated and.
<off-topic>
To appreciate the connotations I typed "subvert" into LEO [dict.leo.org] and got "zerrüttet" which I typed back into LEO and got "to subvert", "to poison", "to shatter sth.", "to unhinge so.", "war-torn".
</off-topic>
Off-topic but instructive.

I consider this as the opposite of a decent discussion culture. I know that there is always the temptation to go off-topic, and there is no obligation to post with a pair of gold scales at hand, but one should preferably strive for a sense of good taste.
All the arguments are heavily geared to the fact that scala allows object oriented programming, even encourages it. Well yes. I thought this was the language designers' original intent, namely to develop a language which scales across many styles and levels of programming. Is this a legacy to feel bad about?
And as far as "tone" is concerned: Tone is important, "the tone makes the music" (This is a german proverb and my grandmothers used it to true me). In the tone presented here I recognize a practice of making people feel insulted without actually insulting them. That is an art.
Finally, In order not to conclude with a negative statement, I go once more off-topic:
Recently I learned good arguments against programming with state and object oriented program design and, nameley a video by Rich Hickey (I lost the URI, the aruments are to be found on [www.clojure.org], e.g. his notion of indentity) and Tryggve Reenskaug on the DCI_Architcture [http://www.artima.com/articles/dci_vision.html]. Both critiques run on totally different tracks. I did feel educated.
Sincerely Yours
Burkhard.
bmaso
Joined: 2009-10-04,
User offline. Last seen 2 years 40 weeks ago.
Re: Scaladoc that is actually useful?
Chris,

I think you represent the very-large-majority position. But please, don't poke the dogmatic bears -- they are apparently hibernating in this thread. Its best to let them lie; you won't convince them to change their position!

Best regards,
Brian Maso
(949) 395-8551
brian [at] blumenfeld-maso [dot] com
twitter: @bmaso
skype: brian.maso
LinkedIn: http://www.linkedin.com/in/brianmaso

On Mon, Nov 16, 2009 at 12:48 AM, christopher marshall <oxbow_lakes [at] hotmail [dot] com> wrote:
This is what Tony said to the *first* person who said that he disagreed that Tony's boo function should be commented as it would not be clear to all (which he had written quite "passively"):

"I think you should seriously consider your position, since your apathy and indirect advocacy for poor education is part of the problem, not the solution"

I'm sorry, but I happen to find this sort of language and approach unwarranted, unnecessary and does not belong on a professional mailing list. It has all the hallmarks of a troll: i.e. it falls short of direct personal abuse but can largely be read/interpreted as such.

I think it was this initial attitude that largely set the combative and confrontational tone for the rest of the discussion.

Chris

Date: Sun, 15 Nov 2009 23:47:19 +0100
Subject: Re: [scala-user] Scaladoc that is actually useful?
From: viktor [dot] klang [at] gmail [dot] com
To: tonymorris [at] gmail [dot] com
CC: dave [dot] l [dot] griffith [at] gmail [dot] com; scala-user [at] listes [dot] epfl [dot] ch

It a rare occurrence, but I have to say that I'm with Tony on this one.

One might not appreciate the tone of Tony in this series of e-mails, but he's kept it balanced throughout his correspondence.

On Sun, Nov 15, 2009 at 10:24 PM, Tony Morris <tonymorris [at] gmail [dot] com> wrote:
Sorry Dave and list, I meant to reply off list. If you could that I Dave
I'd appreciate it.

Tony Morris wrote:
> Your motives are exposed. There is no "internet victory." I stated my
> motives up front. I wish to educate. I succeeded. I have personal
> testimonies to that effect. I even have people that got off first base
> and explored interesting questions down the path! Yes this excites me,
> "internet victory" (whatever that means) doesn't. I'll hand that over to
> you for whatever purpose it serves.
>
> I'll read back through it some day, but it is rather uninteresting.
> Consider my possible motivations for reading myself repeating a well
> established fact, to appease what I can only consider is a lack of
> comprehension. There is nothing for me to gain here, neither to learn
> nor for teaching.
>
> You are right that the thread may have turned people off. I know 2
> people who have thought, to paraphrase, "how can programmers be that
> stupid!?" I discourage that type of discourse and I think it is unfair,
> but they think it nonetheless. I'm sure it affected their prejudices of
> using Scala. I also think it is unfair that while stating highly
> relevant, proven, educational facts may or may not be contrary to
> "appeasing the point of view of someone outside the community" (is it
> really?), then there should be any apprehension of doing exactly that.
>
> Do you find it offensive that there are people who learned by thinking
> about it?
>
> Dave Griffith wrote:
>
>> I thought about this for a bit, and honestly have neither the time nor the
>> energy to do so.
>> You can claim internet victory because of that if you wish, and I'd bet good
>> money that you will.  Alternatively, you could read back through the rather
>> thuggishly hijacked thread and try
>> to imagine how you must  sound to others.  In particular, how you must sound
>> others
>> who don't  share your priors  about what the  appropriate domain of
>> discourse of a Scala
>> mailing list should be.   For extra points, imagine it from the point of
>> view of someone
>> outside the community, trying to decide whether to use Scala or not.  How
>> effective do you
>> really think you've been at "educating" them?
>>
>> --Dave Griffith
>>
>>
>>
>>
>
>

--
Tony Morris
http://tmorris.net/





--
Viktor Klang
| "A complex system that works is invariably
| found to have evolved from a simple system
| that worked." - John Gall

Blog: klangism.blogspot.com
Twttr: twitter.com/viktorklang
Code: github.com/viktorklang

New! Receive and respond to mail from other email accounts from within Hotmail Find out how.

Erik Engbrecht
Joined: 2008-12-19,
User offline. Last seen 3 years 18 weeks ago.
Re: Scaladoc that is actually useful?
+1

I think Tony has kept it civil and provided genuine insight.

On Sun, Nov 15, 2009 at 5:47 PM, Viktor Klang <viktor [dot] klang [at] gmail [dot] com> wrote:
It a rare occurrence, but I have to say that I'm with Tony on this one.

One might not appreciate the tone of Tony in this series of e-mails, but he's kept it balanced throughout his correspondence.

On Sun, Nov 15, 2009 at 10:24 PM, Tony Morris <tonymorris [at] gmail [dot] com> wrote:
Sorry Dave and list, I meant to reply off list. If you could that I Dave
I'd appreciate it.

Tony Morris wrote:
> Your motives are exposed. There is no "internet victory." I stated my
> motives up front. I wish to educate. I succeeded. I have personal
> testimonies to that effect. I even have people that got off first base
> and explored interesting questions down the path! Yes this excites me,
> "internet victory" (whatever that means) doesn't. I'll hand that over to
> you for whatever purpose it serves.
>
> I'll read back through it some day, but it is rather uninteresting.
> Consider my possible motivations for reading myself repeating a well
> established fact, to appease what I can only consider is a lack of
> comprehension. There is nothing for me to gain here, neither to learn
> nor for teaching.
>
> You are right that the thread may have turned people off. I know 2
> people who have thought, to paraphrase, "how can programmers be that
> stupid!?" I discourage that type of discourse and I think it is unfair,
> but they think it nonetheless. I'm sure it affected their prejudices of
> using Scala. I also think it is unfair that while stating highly
> relevant, proven, educational facts may or may not be contrary to
> "appeasing the point of view of someone outside the community" (is it
> really?), then there should be any apprehension of doing exactly that.
>
> Do you find it offensive that there are people who learned by thinking
> about it?
>
> Dave Griffith wrote:
>
>> I thought about this for a bit, and honestly have neither the time nor the
>> energy to do so.
>> You can claim internet victory because of that if you wish, and I'd bet good
>> money that you will.  Alternatively, you could read back through the rather
>> thuggishly hijacked thread and try
>> to imagine how you must  sound to others.  In particular, how you must sound
>> others
>> who don't  share your priors  about what the  appropriate domain of
>> discourse of a Scala
>> mailing list should be.   For extra points, imagine it from the point of
>> view of someone
>> outside the community, trying to decide whether to use Scala or not.  How
>> effective do you
>> really think you've been at "educating" them?
>>
>> --Dave Griffith
>>
>>
>>
>>
>
>

--
Tony Morris
http://tmorris.net/





--
Viktor Klang
| "A complex system that works is invariably
| found to have evolved from a simple system
| that worked." - John Gall

Blog: klangism.blogspot.com
Twttr: twitter.com/viktorklang
Code: github.com/viktorklang



--
http://erikengbrecht.blogspot.com/
Naftoli Gugenheim
Joined: 2008-12-17,
User offline. Last seen 42 years 45 weeks ago.
RE: Scaladoc that is actually useful?

Not to mention the silliness of the argument.

-------------------------------------
christopher marshall wrote:

This is what Tony said to the *first* person who said that he disagreed that Tony's boo function should be commented as it would not be clear to all (which he had written quite "passively"):

"I think you should seriously consider your position, since your apathy and indirect advocacy for poor education is part of the problem, not the solution"

I'm sorry, but I happen to find this sort of language and approach unwarranted, unnecessary and does not belong on a professional mailing list. It has all the hallmarks of a troll: i.e. it falls short of direct personal abuse but can largely be read/interpreted as such.

I think it was this initial attitude that largely set the combative and confrontational tone for the rest of the discussion.

Chris

Date: Sun, 15 Nov 2009 23:47:19 +0100
Subject: Re: [scala-user] Scaladoc that is actually useful?
From: viktor [dot] klang [at] gmail [dot] com
To: tonymorris [at] gmail [dot] com
CC: dave [dot] l [dot] griffith [at] gmail [dot] com; scala-user [at] listes [dot] epfl [dot] ch

It a rare occurrence, but I have to say that I'm with Tony on this one.

One might not appreciate the tone of Tony in this series of e-mails, but he's kept it balanced throughout his correspondence.

On Sun, Nov 15, 2009 at 10:24 PM, Tony Morris wrote:

Sorry Dave and list, I meant to reply off list. If you could that I Dave

I'd appreciate it.

Tony Morris wrote:

> Your motives are exposed. There is no "internet victory." I stated my

> motives up front. I wish to educate. I succeeded. I have personal

> testimonies to that effect. I even have people that got off first base

> and explored interesting questions down the path! Yes this excites me,

> "internet victory" (whatever that means) doesn't. I'll hand that over to

> you for whatever purpose it serves.

>

> I'll read back through it some day, but it is rather uninteresting.

> Consider my possible motivations for reading myself repeating a well

> established fact, to appease what I can only consider is a lack of

> comprehension. There is nothing for me to gain here, neither to learn

> nor for teaching.

>

> You are right that the thread may have turned people off. I know 2

> people who have thought, to paraphrase, "how can programmers be that

> stupid!?" I discourage that type of discourse and I think it is unfair,

> but they think it nonetheless. I'm sure it affected their prejudices of

> using Scala. I also think it is unfair that while stating highly

> relevant, proven, educational facts may or may not be contrary to

> "appeasing the point of view of someone outside the community" (is it

> really?), then there should be any apprehension of doing exactly that.

>

> Do you find it offensive that there are people who learned by thinking

> about it?

>

> Dave Griffith wrote:

>

>> I thought about this for a bit, and honestly have neither the time nor the

>> energy to do so.

>> You can claim internet victory because of that if you wish, and I'd bet good

>> money that you will. Alternatively, you could read back through the rather

>> thuggishly hijacked thread and try

>> to imagine how you must sound to others. In particular, how you must sound

>> others

>> who don't share your priors about what the appropriate domain of

>> discourse of a Scala

>> mailing list should be. For extra points, imagine it from the point of

>> view of someone

>> outside the community, trying to decide whether to use Scala or not. How

>> effective do you

>> really think you've been at "educating" them?

>>

>> --Dave Griffith

>>

>>

>>

>>

>

>

--

Tony Morris

http://tmorris.net/

Meredith Gregory
Joined: 2008-12-17,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?
Dear All,

After you've heard the ex-chief of a very large software company located in the pacific northwest use the word f#@&%k in every part of speech Tony's tone at it's worst is meek and mild-mannered. i have never been offended by his tone and appreciate his willingness to share his perspective. However, his point is false. i have demonstrated this repeatedly.

There are countably infinitely many inhabitants of the type (A => B) => (B => C) => A => C. They are observably distinguished by running time and space consumption. Here is one infinite subset of that set: for each k in the natural numbers we have

Compose_k( f, g ) = { ( x ) => { var d = computeKthDigitOfPi( k ); g( f( x ) ) } : (A => B) => (B => C) => A => C

There are lots more infinite subsets where that one came from. The differences in complexity are not just manifest by silliness of the kind above. There are materially relevant differences that have to do with the internal representation of function and evaluation.

Beyond that, consider the following function

// provided A, B, C <: T with T supporting a certain algebraic structure
Convolution_tau( f, g ) = { ( t ) => { integrate( f( t ) * g( tau - t ), posInf, negInf ) } } : (A => B) => (B => C) => A => C

For the subset of types supporting a certain algebraic structure -- i.e. we restrict the universe of quantification in the original theorem
Erik Engbrecht
Joined: 2008-12-19,
User offline. Last seen 3 years 18 weeks ago.
Re: Scaladoc that is actually useful?
I find such language is often highly warranted in professional circumstances.  It is all too common for professionals to be utterly lacking some CS and/or technology fundamentals, and to demand that others pander to their lack of knowledge rather than simply making an effort to learn.

It's certainly not a friendly statement, but professionalism is not the same as being friendly.

On Mon, Nov 16, 2009 at 3:48 AM, christopher marshall <oxbow_lakes [at] hotmail [dot] com> wrote:
This is what Tony said to the *first* person who said that he disagreed that Tony's boo function should be commented as it would not be clear to all (which he had written quite "passively"):

"I think you should seriously consider your position, since your apathy and indirect advocacy for poor education is part of the problem, not the solution"

I'm sorry, but I happen to find this sort of language and approach unwarranted, unnecessary and does not belong on a professional mailing list. It has all the hallmarks of a troll: i.e. it falls short of direct personal abuse but can largely be read/interpreted as such.

I think it was this initial attitude that largely set the combative and confrontational tone for the rest of the discussion.

Chris

Date: Sun, 15 Nov 2009 23:47:19 +0100
Subject: Re: [scala-user] Scaladoc that is actually useful?
From: viktor [dot] klang [at] gmail [dot] com
To: tonymorris [at] gmail [dot] com
CC: dave [dot] l [dot] griffith [at] gmail [dot] com; scala-user [at] listes [dot] epfl [dot] ch

It a rare occurrence, but I have to say that I'm with Tony on this one.

One might not appreciate the tone of Tony in this series of e-mails, but he's kept it balanced throughout his correspondence.

On Sun, Nov 15, 2009 at 10:24 PM, Tony Morris <tonymorris [at] gmail [dot] com> wrote:
Sorry Dave and list, I meant to reply off list. If you could that I Dave
I'd appreciate it.

Tony Morris wrote:
> Your motives are exposed. There is no "internet victory." I stated my
> motives up front. I wish to educate. I succeeded. I have personal
> testimonies to that effect. I even have people that got off first base
> and explored interesting questions down the path! Yes this excites me,
> "internet victory" (whatever that means) doesn't. I'll hand that over to
> you for whatever purpose it serves.
>
> I'll read back through it some day, but it is rather uninteresting.
> Consider my possible motivations for reading myself repeating a well
> established fact, to appease what I can only consider is a lack of
> comprehension. There is nothing for me to gain here, neither to learn
> nor for teaching.
>
> You are right that the thread may have turned people off. I know 2
> people who have thought, to paraphrase, "how can programmers be that
> stupid!?" I discourage that type of discourse and I think it is unfair,
> but they think it nonetheless. I'm sure it affected their prejudices of
> using Scala. I also think it is unfair that while stating highly
> relevant, proven, educational facts may or may not be contrary to
> "appeasing the point of view of someone outside the community" (is it
> really?), then there should be any apprehension of doing exactly that.
>
> Do you find it offensive that there are people who learned by thinking
> about it?
>
> Dave Griffith wrote:
>
>> I thought about this for a bit, and honestly have neither the time nor the
>> energy to do so.
>> You can claim internet victory because of that if you wish, and I'd bet good
>> money that you will.  Alternatively, you could read back through the rather
>> thuggishly hijacked thread and try
>> to imagine how you must  sound to others.  In particular, how you must sound
>> others
>> who don't  share your priors  about what the  appropriate domain of
>> discourse of a Scala
>> mailing list should be.   For extra points, imagine it from the point of
>> view of someone
>> outside the community, trying to decide whether to use Scala or not.  How
>> effective do you
>> really think you've been at "educating" them?
>>
>> --Dave Griffith
>>
>>
>>
>>
>
>

--
Tony Morris
http://tmorris.net/





--
Viktor Klang
| "A complex system that works is invariably
| found to have evolved from a simple system
| that worked." - John Gall

Blog: klangism.blogspot.com
Twttr: twitter.com/viktorklang
Code: github.com/viktorklang

New! Receive and respond to mail from other email accounts from within Hotmail Find out how.



--
http://erikengbrecht.blogspot.com/
Meredith Gregory
Joined: 2008-12-17,
User offline. Last seen 42 years 45 weeks ago.
Re: Scaladoc that is actually useful?
Dear Johannes,
You point is well taken which is why i also included convolution as another example.
Best wishes,
--greg

On Mon, Nov 16, 2009 at 9:21 AM, Johannes Rudolph <johannes [dot] rudolph [at] googlemail [dot] com> wrote:
On Mon, Nov 16, 2009 at 5:59 PM, Meredith Gregory
<lgreg [dot] meredith [at] gmail [dot] com> wrote:
> Compose_k( f, g ) = { ( x ) => { var d = computeKthDigitOfPi( k ); g( f( x )
> ) } : (A => B) => (B => C) => A => C

I'm not sure if that's a particular good example, because it computes
d just for the explicit side-effect which (as Tony would say) belongs
very clearly into the subversive type-lies milieu. You are, of course,
right about the implicit side-effects of time and space.

--
Johannes

-----------------------------------------------
Johannes Rudolph
http://virtual-void.net



--
L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117

+1 206.650.3740

http://biosimilarity.blogspot.com
Johannes Rudolph
Joined: 2008-12-17,
User offline. Last seen 29 weeks 19 hours ago.
Re: Scaladoc that is actually useful?

On Mon, Nov 16, 2009 at 5:59 PM, Meredith Gregory
wrote:
> Compose_k( f, g ) = { ( x ) => { var d = computeKthDigitOfPi( k ); g( f( x )
> ) } : (A => B) => (B => C) => A => C

I'm not sure if that's a particular good example, because it computes
d just for the explicit side-effect which (as Tony would say) belongs
very clearly into the subversive type-lies milieu. You are, of course,
right about the implicit side-effects of time and space.

Copyright © 2012 École Polytechnique Fédérale de Lausanne (EPFL), Lausanne, Switzerland