<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala">
    <title>gmane.comp.lang.scala</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26636"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26635"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26634"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26633"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26632"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26631"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26630"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26629"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26628"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26627"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26626"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26625"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26624"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26623"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26622"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26621"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26620"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26619"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26618"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.scala/26617"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26636">
    <title>Interview: Scala creator Martin Odersky - The H Half Hour</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26636</link>
    <description>&lt;pre&gt;Nice interview: 
http://www.h-online.com/open/features/Scala-creator-Martin-Odersky-The-H-Half-Hour-1582445.html
&lt;/pre&gt;</description>
    <dc:creator>Simon Ochsenreither</dc:creator>
    <dc:date>2012-05-25T12:24:30</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26635">
    <title>RE: Re: Scope of Scala's implicit class conversion</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26635</link>
    <description>&lt;pre&gt;'Typed as if' != 'evaluated as if'. It seems to me that the language in 6.4 that you point out is just talking about how typing should proceed for e.x, but e.x can't be typed if x is not a member of the type of e. So the 7.3 rules translate the expression into one that can be typed, and then v(e).x is typed as if it were { val y = v(e); y.x } per the 6.4 rules. I'm not terribly confident I'm not missing some implication of the rest of the spec, though.






(please forgive me my corporate legal disclaimer)

----------------------------------------

This message is intended exclusively for the individual(s) or entity to
which it is addressed. It may contain information that is proprietary, 
privileged or confidential or otherwise legally exempt from disclosure. 
If you are not the named addressee, you are not authorized to read, 
print, retain, copy or disseminate this message or any part of it. 
If you have received this message in error, please notify the sender 
immediately by e-mail and delete all copies&lt;/pre&gt;</description>
    <dc:creator>Ryan Hendrickson</dc:creator>
    <dc:date>2012-05-24T15:42:01</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26634">
    <title>Re: Re: Scope of Scala's implicit class conversion</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26634</link>
    <description>&lt;pre&gt;It's way past midnight here, so no good can come of this, but by 6.4
Designators:

For other expressions e, e.x is typed as if it was { val y = e; y.x }, for

Immediately, this has consequences for how the prefix is typed:

The expected type of a designator’s prefix is always undefined.

But that would also imply that the e in 7.3 is y from 6.4, and goes to the
OP's intuition that the prefix should be evaluated before y is wrapped in a
thunk for the implicit conversion v(y) for v(y).x  where v(=&amp;gt;Y).

On Wed, May 23, 2012 at 4:26 PM, Ryan Hendrickson &amp;lt;
Ryan.Hendrickson&amp;lt; at &amp;gt;bwater.com&amp;gt; wrote:

&lt;/pre&gt;</description>
    <dc:creator>Som Snytt</dc:creator>
    <dc:date>2012-05-24T08:18:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26633">
    <title>RE: Re: Scope of Scala's implicit class conversion</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26633</link>
    <description>&lt;pre&gt;Ah, forgive me. In that case, the language you're looking for is in Section 7.3, in the list of the three situations in which views are applied:

2. In a selection e.m with e of type T , if the selector does not denote a member
of T. In this case, a view v is searched which is applicable to e and whose result
contains a member named m. The search proceeds as in the case of implicit
parameters, where the implicit scope is the one of T. If such a view is found,
the selection e.m is converted to v(e).m.

So the compiler can only generate something that is semantically equivalent to v(e).m, and as you've demonstrated, when by-name parameters are involved

  val x = e
  v(x).m

is not semantically equivalent to v(e).m.







(please forgive me my corporate legal disclaimer)

----------------------------------------

This message is intended exclusively for the individual(s) or entity to
which it is addressed. It may contain information that is proprietary, 
privileged or confidential or otherwise legally exempt &lt;/pre&gt;</description>
    <dc:creator>Ryan Hendrickson</dc:creator>
    <dc:date>2012-05-23T23:26:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26632">
    <title>Re: Scope of Scala's implicit class conversion</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26632</link>
    <description>&lt;pre&gt;I understand what happens, and also by-name parameters, but it is
still not clear why does the compiler choose to apply the implicit
conversion to the whole expression (putting it wholly into the by-name
param), versus generating code to evaluate the result of the
expression and putting only the result into the conversion. Maybe this
is something trivial, but still it would be nice if someone could
point it out exactly.

BR,
Robin

On máj. 24, 01:02, Ryan Hendrickson &amp;lt;Ryan.Hendrick...&amp;lt; at &amp;gt;bwater.com&amp;gt;
wrote:

&lt;/pre&gt;</description>
    <dc:creator>ron</dc:creator>
    <dc:date>2012-05-23T23:20:51</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26631">
    <title>RE: Scope of Scala's implicit class conversion</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26631</link>
    <description>&lt;pre&gt;
You don't have a largest/smallest problem here; in fact, what you describe is *almost* equivalent to what the compiler is doing. The exact equivalent would be:

  toXXX((new A).a.b).xxx

Because your toXXX method takes a by-name parameter (and the XXX constructor does as well), Scala never needs to invoke the body of the thing being converted in order to yield the result 42. If you took away the '=&amp;gt;' in toXXX or the XXX constructor, you'd see the aa/bb side effects again. You can find out more by Googling 'scala by-name parameters'.





(please forgive me my corporate legal disclaimer)

----------------------------------------

This message is intended exclusively for the individual(s) or entity to
which it is addressed. It may contain information that is proprietary, 
privileged or confidential or otherwise legally exempt from disclosure. 
If you are not the named addressee, you are not authorized to read, 
print, retain, copy or disseminate this message or any part of it. 
If you have received this messa&lt;/pre&gt;</description>
    <dc:creator>Ryan Hendrickson</dc:creator>
    <dc:date>2012-05-23T23:02:00</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26630">
    <title>Scope of Scala's implicit class conversion</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26630</link>
    <description>&lt;pre&gt;Hello List,

Please help me clarify the following (carbon copied from Stackoverflow
http://stackoverflow.com/questions/10727508/scope-of-scalas-implicit-class-conversion#comment13936013_10727508):

Scala seems to apply the implicit class conversion on the largest
possible expression, as in the following example:

----repl----
scala&amp;gt; class B { def b = { println("bb"); true } }
scala&amp;gt; class A { def a = { println("aa"); new B } }
scala&amp;gt; (new A).a.b
aa
bb
res16: Boolean = true

scala&amp;gt; class XXX(b: =&amp;gt; Boolean) { def xxx = 42 }
scala&amp;gt; implicit def toXXX(b: =&amp;gt; Boolean) = new XXX(b)
scala&amp;gt; (new A).a.b.xxx
res18: Int = 42
----repl----

Which part of the specification addresses this behavior? What prevents
the compiler from converting into val x = (new A).a.b; toXXX(x).xxx ?

Thank you,
Robin

&lt;/pre&gt;</description>
    <dc:creator>ron</dc:creator>
    <dc:date>2012-05-23T22:35:08</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26629">
    <title>Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26629</link>
    <description>&lt;pre&gt;

On 23 mei, 20:51, Bill Burdick &amp;lt;bill.burd...&amp;lt; at &amp;gt;gmail.com&amp;gt; wrote:

It's still there, only renamed
http://gosu-lang.org/compare.html

&lt;/pre&gt;</description>
    <dc:creator>Dave</dc:creator>
    <dc:date>2012-05-23T21:21:31</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26628">
    <title>Re: Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26628</link>
    <description>&lt;pre&gt;After looking at the (removed) language comparison chart (
http://web.archive.org/web/20110726124437/http://gosu-lang.org/comparison.shtml),
it seems, to me, like Gosu is similar to Xtend:
http://www.eclipse.org/xtend/  The only problem I have with the current
Xtend version is that closures aren't compatible with SAMs, so you can't
use them with FJ's Function objects, for instance.  I made a patch to help
with that and some of the Xtend maintainers helped with some other issues
involving closures (with casts and such), so that they work "like they
should" in MY Xtend codebase, but it looks like the three changes I use
won't actually be integrated until RC1 (and the integration keeps getting
bumped farther down the line).


Bill


On Wed, May 23, 2012 at 12:58 PM, Dave &amp;lt;dave.mahabiersing&amp;lt; at &amp;gt;hotmail.com&amp;gt;wrote:

&lt;/pre&gt;</description>
    <dc:creator>Bill Burdick</dc:creator>
    <dc:date>2012-05-23T18:51:35</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26627">
    <title>Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26627</link>
    <description>&lt;pre&gt;http://stackoverflow.com/questions/4975428/whats-the-essential-similarities-and-differences-between-scala-and-gosu-relate

On 23 mei, 19:38, Simon Ochsenreither
&amp;lt;simon.ochsenreit...&amp;lt; at &amp;gt;googlemail.com&amp;gt; wrote:

&lt;/pre&gt;</description>
    <dc:creator>Dave</dc:creator>
    <dc:date>2012-05-23T17:58:21</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26626">
    <title>Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26626</link>
    <description>&lt;pre&gt;


Yes, I'm not sure, but it might even predate the F# stuff.

Interesting that they have given up on the Eclipse IDE support, though. 

Independently of the language, Gosu/F#/Scala, I think it really boils down 
to having not just a few, but a lot of type providers.

Looking at the myriad of query/sql/collection APIs out there in the Scala 
ecosystem I really hope that SLICK and type providers are a good value 
proposition for them, so that stuff gets more consistent.

I guess Scala will have few more problems due to not only wanting to have a 
more general system (macros instead of special compiler interfaces), but 
also wanting to support the traditional collection API names and 
integrating it into for comprehensions will be hard.

F# has an interesting approach ... they basically split their collection 
operations between the part that generates SQL and the part which operates 
on the resulting collection.

 
&lt;/pre&gt;</description>
    <dc:creator>Simon Ochsenreither</dc:creator>
    <dc:date>2012-05-23T17:38:15</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26625">
    <title>Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26625</link>
    <description>&lt;pre&gt;

This article seems a bit more to the point:

http://guidewiredevelopment.wordpress.com/2010/11/18/gosus-secret-sauce-the-open-type-system/

 Their 'open type system' sounds like type providers to me, as I understand 
them from http://scalamacros.org/usecases/type-providers.html. Sounds 
pretty cool. Seeing 'driver.DriversLicenses = new 
ArrayList&amp;lt;DriversLicense&amp;gt;()' was less of a herald of awesomeness.

Cheers,
Erik

&lt;/pre&gt;</description>
    <dc:creator>Erik Post</dc:creator>
    <dc:date>2012-05-23T15:41:19</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26624">
    <title>Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26624</link>
    <description>&lt;pre&gt;Well, Scala is pretty complex after all. You should see the flatMap
function! Well, where do I start? Sheesh, I am so overwhelmed right now.
How complex indeed.

On 23/05/12 21:49, Mark Hammons wrote:


&lt;/pre&gt;</description>
    <dc:creator>Tony Morris</dc:creator>
    <dc:date>2012-05-23T12:25:20</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26623">
    <title>Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26623</link>
    <description>&lt;pre&gt;Yeah, this language seems like a winner. I really wish scala developers
dealt with non-complicated things like classloader deadlocks instead of the
dreaded foldLeft and map functions.

On Wed, May 23, 2012 at 1:36 PM, Robert Kirkpatrick &amp;lt;robert&amp;lt; at &amp;gt;eridan.net&amp;gt;wrote:




&lt;/pre&gt;</description>
    <dc:creator>Mark Hammons</dc:creator>
    <dc:date>2012-05-23T11:49:28</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26622">
    <title>Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26622</link>
    <description>&lt;pre&gt;Yes indeed - just as an example:
"we flirt with deadlock every time our special loader does its job"

At least the author plays transparency!

Le 23/05/2012 13:10, Simon Ochsenreither a écrit :

&lt;/pre&gt;</description>
    <dc:creator>Robert Kirkpatrick</dc:creator>
    <dc:date>2012-05-23T11:36:41</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26621">
    <title>Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26621</link>
    <description>&lt;pre&gt;This is pretty scary: 
http://guidewiredevelopment.wordpress.com/2012/05/09/gosus-inconceivable-non-classloader-take-1/
&lt;/pre&gt;</description>
    <dc:creator>Simon Ochsenreither</dc:creator>
    <dc:date>2012-05-23T11:10:34</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26620">
    <title>Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26620</link>
    <description>&lt;pre&gt;Quite terrible about Scala indeed.
Nevertheless interesting about an "IDE-oriented" language, showing where the Scala competition lies.

Robert.

Le 23/05/2012 12:22, Mark Hammons a écrit :

&lt;/pre&gt;</description>
    <dc:creator>Robert Kirkpatrick</dc:creator>
    <dc:date>2012-05-23T11:07:56</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26619">
    <title>Re: Scala - a Roadmap</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26619</link>
    <description>&lt;pre&gt;
That's what is nice with tabs: just change a setting, and you have indentation fitting 
your preferences, from 1 to 8 (or more!) units, without even changing the source code.


You won't see mixed spaces and tabs in my sources, they are pure tabs, and I am happy with 
this... I am OK with space-only indentation, that's what we use at work (with three 
spaces...), but I still find them less convenient.
Both ways are OK, as long as they are consistently use, the real evil is indeed in mixing 
spaces and tabs.


Sigh, yes, it is nightmarish, I admit it. But don't put the blame on tabs, put the blame 
on lack of tools to enforce any policy they could have chosen. Hey, you can open a file 
with 3 spaces indentation, have your editor remaining in default 4 spaces (if that's your 
default) and introduce inconsistent indentation in the file without noticing. In general, 
not in the same function (might be too visible) but perhaps in a new function, a new 
class, etc.

To please everybody, you can make the compiler &lt;/pre&gt;</description>
    <dc:creator>Philippe Lhoste</dc:creator>
    <dc:date>2012-05-23T10:56:46</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26618">
    <title>Re: What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26618</link>
    <description>&lt;pre&gt;I don't understand most programmers' aversion to functional languages.
Yeah,  it's tough to do at first, but so is every othdr paradigm. This
article is pretty terrible if you ask me.
On 2012 5 23 12:02, "Simon Ochsenreither" &amp;lt;
simon.ochsenreither&amp;lt; at &amp;gt;googlemail.com&amp;gt; wrote:

&lt;/pre&gt;</description>
    <dc:creator>Mark Hammons</dc:creator>
    <dc:date>2012-05-23T10:22:57</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26617">
    <title>What Differentiates Gosu From Other Languages?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26617</link>
    <description>&lt;pre&gt;Interesting read, also references Scala: 
http://guidewiredevelopment.wordpress.com/2012/02/27/what-differentiates-gosu-from-other-languages/
&lt;/pre&gt;</description>
    <dc:creator>Simon Ochsenreither</dc:creator>
    <dc:date>2012-05-23T10:02:29</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.scala/26616">
    <title>Re: Should a self-referential val/var declaration really compile?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.scala/26616</link>
    <description>&lt;pre&gt;
Ah Snap, Jesper!  You just got gaftered.
http://gafter.blogspot.com/2006/11/reified-generics-for-java.html?showComment=1203883620000#c8374851026588442066

&lt;/pre&gt;</description>
    <dc:creator>Jon Van Caneghem</dc:creator>
    <dc:date>2012-05-23T00:11:51</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.comp.lang.scala">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.comp.lang.scala</link>
  </textinput>
</rdf:RDF>

