Re: The Scala REPL output is confusing

Raphael Bosshard <[email protected]> Thu, 3 Nov 2016 04:55:07 -0700 (PDT)
Newsgroups gmane.comp.lang.scala
Message-ID <[email protected]>
------=_Part_173_1472655616.1478174107748
Content-Type: multipart/alternative; 
	boundary="----=_Part_174_908783696.1478174107749"

------=_Part_174_908783696.1478174107749
Content-Type: text/plain; charset=UTF-8

Hi all,

This is now https://issues.scala-lang.org/browse/SI-10023. We can discuss 
the specifics (i.e. how the new output should look like) there.

Thanks for all the help and directions!

Raphael

Am Dienstag, 1. November 2016 17:58:05 UTC+1 schrieb Adriaan Moors:
>
> Yes, a PR will be needed for the CI to verify your changes. We have some 
> docs (https://github.com/scala/scala/blob/2.12.x/README.md, 
> http://scala-lang.org/contribute/hacker-guide.html) to help you get 
> started, and are always happy to help on 
> https://gitter.im/scala/contributors! 
>
> On Tue, Nov 1, 2016 at 9:41 AM Raphael Bosshard <[email protected] 
> <javascript:>> wrote:
>
>> Excellent. I'll give it a shot and come back if I need help. Do I need to 
>> create a PR for that?
>>
>> On Tue, Nov 1, 2016 at 10:47 AM, Heather Miller <[email protected] 
>> <javascript:>> wrote:
>>
>>> +1 to improving the REPL output such that it prints out the Scala method 
>>> definition. I'd love to see this.
>>> (I've always wondered why the REPL output wasn't friendlier!)
>>>
>>>
>>>
>>> On Tue, Nov 1, 2016 at 3:56 AM, Adriaan Moors <[email protected] 
>>> <javascript:>> wrote:
>>>
>>>> I think everything needed is available from the compiler. Formatting 
>>>> this nicely (especially with colors) is a bit finicky, but I don't think 
>>>> meta would really help here.
>>>>
>>>> On Mon, Oct 31, 2016 at 6:58 PM Naftoli Gugenheim <[email protected] 
>>>> <javascript:>> wrote:
>>>>
>>>>> Could this be solved the easiest with scala.meta?
>>>>>
>>>>> On Mon, Oct 31, 2016, 6:46 PM Adriaan Moors <[email protected] 
>>>>> <javascript:>> wrote:
>>>>>
>>>>>> I agree the output would be nicer if we printed out the method 
>>>>>> definition in legal Scala. The current output is just printing the 
>>>>>> (strictly) internal representation of a method type.
>>>>>>
>>>>>> I would be happy to help to improve this. I believe the logic for the 
>>>>>> output is here: 
>>>>>> https://github.com/scala/scala/blob/2.12.x/src/repl/scala/tools/nsc/interpreter/MemberHandlers.scala#L156
>>>>>>
>>>>>> cheers
>>>>>> adriaan
>>>>>>
>>>>>> On Mon, Oct 31, 2016 at 2:55 PM Oliver Ruebenacker <[email protected] 
>>>>>> <javascript:>> wrote:
>>>>>>
>>>>>>>
>>>>>>>      Hello,
>>>>>>>
>>>>>>>   The line is just:
>>>>>>>
>>>>>>> <name>: <type>
>>>>>>>
>>>>>>>   With "(in: String)Int" being the type of the method. 
>>>>>>>
>>>>>>>   This resembles JNI method type notation, where the return type 
>>>>>>> goes directly after the parens, too.
>>>>>>>
>>>>>>>      Best, Oliver
>>>>>>>
>>>>>>> On Mon, Oct 31, 2016 at 5:11 PM, Justin du coeur <[email protected] 
>>>>>>> <javascript:>> wrote:
>>>>>>>
>>>>>>>> (Note that this conversation started over on Gitter, and moved 
>>>>>>>> here.)
>>>>>>>>
>>>>>>>> That's fair, but note that the output *isn't legal Scala*.  The 
>>>>>>>> "method created" bit I agree is arguable, but it really is kind of weird 
>>>>>>>> and confusing that there's no colon before "Int" in the output -- the 
>>>>>>>> output syntax seems strangely arbitrary.  Was there a specific reason for 
>>>>>>>> that, or is it just an old "seemed good enough at the time"?
>>>>>>>>
>>>>>>>> I should note that I don't care passionately -- I don't use the 
>>>>>>>> REPL much myself.  But this seems like a pointless roadbump for new users, 
>>>>>>>> having the output be almost, but not quite, legal Scala.
>>>>>>>>
>>>>>>>> And really, is "unnecessary clutter" (at least in small amounts) 
>>>>>>>> actually a problem in the REPL?  I would say that clarity is likely a 
>>>>>>>> higher priority than output conciseness...
>>>>>>>>
>>>>>>>> On Mon, Oct 31, 2016 at 4:55 PM, Oliver Ruebenacker <
>>>>>>>> [email protected] <javascript:>> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>>      Hello,
>>>>>>>>>
>>>>>>>>>   That would add unnecessary clutter. Whoever entered the line 
>>>>>>>>> knows they used def. 
>>>>>>>>>
>>>>>>>>>      Best, Oliver
>>>>>>>>>
>>>>>>>>> On Mon, Oct 31, 2016 at 4:51 PM, Raphael Bosshard <
>>>>>>>>> [email protected] <javascript:>> wrote:
>>>>>>>>>
>>>>>>>>>> Hi all,
>>>>>>>>>>
>>>>>>>>>> have you ever noticed how confusing the Scala REPL output it?
>>>>>>>>>>
>>>>>>>>>> scala> def foo(in: String): Int = ???
>>>>>>>>>> foo: (in: String)Int
>>>>>>>>>>
>>>>>>>>>> I have learned what this "foo: (in: String)Int) is supposed to 
>>>>>>>>>> mean. But from a beginner's perspective I find it puzzling. Instead it 
>>>>>>>>>> should display something like this:
>>>>>>>>>>
>>>>>>>>>> method created: foo(in: String): Int 
>>>>>>>>>>
>>>>>>>>>> Would someone support/guide me in fixing this?
>>>>>>>>>>
>>>>>>>>>> Cheers,
>>>>>>>>>> Raphael
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>> Google Groups "scala-language" group.
>>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>>>> send an email to [email protected] <javascript:>.
>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> -- 
>>>>>>>>> Oliver Ruebenacker
>>>>>>>>> Senior Software Engineer, Diabetes Portal 
>>>>>>>>> <http://www.type2diabetesgenetics.org/>, Broad Institute 
>>>>>>>>> <http://www.broadinstitute.org/>
>>>>>>>>>
>>>>>>>>> -- 
>>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>>> Groups "scala-language" group.
>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>>> send an email to [email protected] <javascript:>.
>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>
>>>>>>>>
>>>>>>>> -- 
>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>> Groups "scala-language" group.
>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>> send an email to [email protected] <javascript:>.
>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> -- 
>>>>>>> Oliver Ruebenacker
>>>>>>> Senior Software Engineer, Diabetes Portal 
>>>>>>> <http://www.type2diabetesgenetics.org/>, Broad Institute 
>>>>>>> <http://www.broadinstitute.org/>
>>>>>>>
>>>>>>> -- 
>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>> Groups "scala-language" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>> send an email to [email protected] <javascript:>.
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>> -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "scala-language" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>> send an email to [email protected] <javascript:>.
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>> -- 
>>>>> You received this message because you are subscribed to the Google 
>>>>> Groups "scala-language" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>> an email to [email protected] <javascript:>.
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "scala-language" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected] <javascript:>.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>> -- 
>>> You received this message because you are subscribed to a topic in the 
>>> Google Groups "scala-language" group.
>>> To unsubscribe from this topic, visit 
>>> https://groups.google.com/d/topic/scala-language/xiDCISJzbOg/unsubscribe
>>> .
>>> To unsubscribe from this group and all its topics, send an email to 
>>> [email protected] <javascript:>.
>>>
>>
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "scala-language" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
You received this message because you are subscribed to the Google Groups "scala-language" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
For more options, visit https://groups.google.com/d/optout.

------=_Part_174_908783696.1478174107749
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi all,<br><br>This is now https://issues.scala-lang.org/b=
rowse/SI-10023. We can discuss the specifics (i.e. how the new output shoul=
d look like) there.<br><br>Thanks for all the help and directions!<br><br>R=
aphael<br><br>Am Dienstag, 1. November 2016 17:58:05 UTC+1 schrieb Adriaan =
Moors:<blockquote class=3D"gmail_quote" style=3D"margin: 0;margin-left: 0.8=
ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"ltr">Yes, a =
PR will be needed for the CI to verify your changes. We have some docs (<a =
href=3D"https://github.com/scala/scala/blob/2.12.x/README.md" target=3D"_bl=
ank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://www.google.co=
m/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fscala%2Fscala%2Fblob%2F2.12.x%2FREADM=
E.md\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEeoSM5vBadv7OK7x9ecmP1GNJb_Q&#=
39;;return true;" onclick=3D"this.href=3D&#39;https://www.google.com/url?q\=
x3dhttps%3A%2F%2Fgithub.com%2Fscala%2Fscala%2Fblob%2F2.12.x%2FREADME.md\x26=
sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEeoSM5vBadv7OK7x9ecmP1GNJb_Q&#39;;retu=
rn true;">https://github.com/scala/<wbr>scala/blob/2.12.x/README.md</a>, <a=
 href=3D"http://scala-lang.org/contribute/hacker-guide.html" target=3D"_bla=
nk" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;http://www.google.com/=
url?q\x3dhttp%3A%2F%2Fscala-lang.org%2Fcontribute%2Fhacker-guide.html\x26sa=
\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNH1f4Y2UK_3wr5WD5fthslBxnxrxw&#39;;return=
 true;" onclick=3D"this.href=3D&#39;http://www.google.com/url?q\x3dhttp%3A%=
2F%2Fscala-lang.org%2Fcontribute%2Fhacker-guide.html\x26sa\x3dD\x26sntz\x3d=
1\x26usg\x3dAFQjCNH1f4Y2UK_3wr5WD5fthslBxnxrxw&#39;;return true;">http://sc=
ala-lang.org/<wbr>contribute/hacker-guide.html</a>) to help you get started=
, and are always happy to help on <a href=3D"https://gitter.im/scala/contri=
butors" target=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;=
https://www.google.com/url?q\x3dhttps%3A%2F%2Fgitter.im%2Fscala%2Fcontribut=
ors\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFxrd1IyKJT8kD0P-aHE8Wq3AXvBg&#3=
9;;return true;" onclick=3D"this.href=3D&#39;https://www.google.com/url?q\x=
3dhttps%3A%2F%2Fgitter.im%2Fscala%2Fcontributors\x26sa\x3dD\x26sntz\x3d1\x2=
6usg\x3dAFQjCNFxrd1IyKJT8kD0P-aHE8Wq3AXvBg&#39;;return true;">https://gitte=
r.im/scala/<wbr>contributors</a>!=C2=A0</div><br><div class=3D"gmail_quote"=
><div dir=3D"ltr">On Tue, Nov 1, 2016 at 9:41 AM Raphael Bosshard &lt;<a hr=
ef=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"MY-W9UXDBwAJ"=
 rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&#39;;return t=
rue;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true;">raphael...=
[email protected]</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=
=3D"ltr">Excellent. I&#39;ll give it a shot and come back if I need help. D=
o I need to create a PR for that?<br></div><div><br><div class=3D"gmail_quo=
te"></div></div><div><div class=3D"gmail_quote">On Tue, Nov 1, 2016 at 10:4=
7 AM, Heather Miller <span dir=3D"ltr">&lt;<a href=3D"javascript:" target=
=3D"_blank" gdf-obfuscated-mailto=3D"MY-W9UXDBwAJ" rel=3D"nofollow" onmouse=
down=3D"this.href=3D&#39;javascript:&#39;;return true;" onclick=3D"this.hre=
f=3D&#39;javascript:&#39;;return true;">[email protected]</a>&gt;</span=
> wrote:<br></div></div><div><div class=3D"gmail_quote"><blockquote class=
=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padd=
ing-left:1ex"><div dir=3D"ltr">+1 to improving the REPL output such that it=
 prints out the Scala method definition. I&#39;d love to see this.<div>(I&#=
39;ve always wondered why the REPL output wasn&#39;t friendlier!)</div><div=
><div><div><br></div><div><br></div><div><br><div class=3D"gmail_quote">On =
Tue, Nov 1, 2016 at 3:56 AM, Adriaan Moors <span dir=3D"ltr">&lt;<a href=3D=
"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"MY-W9UXDBwAJ" rel=
=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&#39;;return true;=
" onclick=3D"this.href=3D&#39;javascript:&#39;;return true;">adr...@lightbe=
nd.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"=
margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"=
ltr">I think everything needed is available from the compiler. Formatting t=
his nicely (especially with colors) is a bit finicky, but I don&#39;t think=
 meta would really help here.</div><div><div><br><div class=3D"gmail_quote"=
><div dir=3D"ltr">On Mon, Oct 31, 2016 at 6:58 PM Naftoli Gugenheim &lt;<a =
href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"MY-W9UXDBwA=
J" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&#39;;return=
 true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true;">nafto...=
@gmail.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir=
=3D"ltr">Could this be solved the easiest with scala.meta?</p>
<br><div class=3D"gmail_quote"><div dir=3D"ltr">On Mon, Oct 31, 2016, 6:46 =
PM Adriaan Moors &lt;<a href=3D"javascript:" target=3D"_blank" gdf-obfuscat=
ed-mailto=3D"MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39=
;javascript:&#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39=
;;return true;">[email protected]</a>&gt; wrote:<br></div><blockquote cl=
ass=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;p=
adding-left:1ex"><div dir=3D"ltr">I agree the output would be nicer if we p=
rinted out the method definition in legal Scala. The current output is just=
 printing the (strictly) internal representation of a method type.<div><br>=
</div><div>I would be happy to help to improve this. I believe the logic fo=
r the output is here:=C2=A0<a href=3D"https://github.com/scala/scala/blob/2=
.12.x/src/repl/scala/tools/nsc/interpreter/MemberHandlers.scala#L156" targe=
t=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://www.g=
oogle.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fscala%2Fscala%2Fblob%2F2.12.x=
%2Fsrc%2Frepl%2Fscala%2Ftools%2Fnsc%2Finterpreter%2FMemberHandlers.scala%23=
L156\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHGbqLDNWU7cpMYECTo0i0sddJN3Q&#=
39;;return true;" onclick=3D"this.href=3D&#39;https://www.google.com/url?q\=
x3dhttps%3A%2F%2Fgithub.com%2Fscala%2Fscala%2Fblob%2F2.12.x%2Fsrc%2Frepl%2F=
scala%2Ftools%2Fnsc%2Finterpreter%2FMemberHandlers.scala%23L156\x26sa\x3dD\=
x26sntz\x3d1\x26usg\x3dAFQjCNHGbqLDNWU7cpMYECTo0i0sddJN3Q&#39;;return true;=
">https://github.com/<wbr>scala/scala/blob/2.12.x/src/<wbr>repl/scala/tools=
/nsc/<wbr>interpreter/MemberHandlers.<wbr>scala#L156</a></div><div><br></di=
v><div>cheers</div></div><div dir=3D"ltr"><div>adriaan</div></div><br><div =
class=3D"gmail_quote"><div dir=3D"ltr">On Mon, Oct 31, 2016 at 2:55 PM Oliv=
er Ruebenacker &lt;<a href=3D"javascript:" target=3D"_blank" gdf-obfuscated=
-mailto=3D"MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;j=
avascript:&#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;=
return true;">[email protected]</a>&gt; wrote:<br></div><blockquote class=3D=
"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding=
-left:1ex"><div dir=3D"ltr"><div><div><div><div><div><div><br></div>=C2=A0=
=C2=A0=C2=A0=C2=A0 Hello,<br><br></div>=C2=A0 The line is just:<br><br></di=
v>&lt;name&gt;: &lt;type&gt;<br><br></div>=C2=A0 With &quot;(in: String)Int=
&quot; being the type of the method. <br><br></div>=C2=A0 This resembles JN=
I method type notation, where the return type goes directly after the paren=
s, too.<br><br></div>=C2=A0=C2=A0=C2=A0=C2=A0 Best, Oliver<br></div><div><b=
r><div class=3D"gmail_quote">On Mon, Oct 31, 2016 at 5:11 PM, Justin du coe=
ur <span dir=3D"ltr">&lt;<a href=3D"javascript:" target=3D"_blank" gdf-obfu=
scated-mailto=3D"MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D=
&#39;javascript:&#39;;return true;" onclick=3D"this.href=3D&#39;javascript:=
&#39;;return true;">[email protected]</a>&gt;</span> wrote:<br><blockquote =
class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid=
;padding-left:1ex"><div dir=3D"ltr">(Note that this conversation started ov=
er on Gitter, and moved here.)<div><br></div><div>That&#39;s fair, but note=
 that the output <i>isn&#39;t legal Scala</i>.=C2=A0 The &quot;method creat=
ed&quot; bit I agree is arguable, but it really is kind of weird and confus=
ing that there&#39;s no colon before &quot;Int&quot; in the output -- the o=
utput syntax seems strangely arbitrary.=C2=A0 Was there a specific reason f=
or that, or is it just an old &quot;seemed good enough at the time&quot;?</=
div><div><br></div><div>I should note that I don&#39;t care passionately --=
 I don&#39;t use the REPL much myself.=C2=A0 But this seems like a pointles=
s roadbump for new users, having the output be almost, but not quite, legal=
 Scala.</div><div><br></div><div>And really, is &quot;unnecessary clutter&q=
uot; (at least in small amounts) actually a problem in the REPL?=C2=A0 I wo=
uld say that clarity is likely a higher priority than output conciseness...=
</div></div><div><div><div><br><div class=3D"gmail_quote">On Mon, Oct 31, 2=
016 at 4:55 PM, Oliver Ruebenacker <span dir=3D"ltr">&lt;<a href=3D"javascr=
ipt:" target=3D"_blank" gdf-obfuscated-mailto=3D"MY-W9UXDBwAJ" rel=3D"nofol=
low" onmousedown=3D"this.href=3D&#39;javascript:&#39;;return true;" onclick=
=3D"this.href=3D&#39;javascript:&#39;;return true;">[email protected]</a>&gt=
;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 =
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div><di=
v><div><br></div>=C2=A0=C2=A0=C2=A0=C2=A0 Hello,<br><br></div>=C2=A0 That w=
ould add unnecessary clutter. Whoever entered the line knows they used def.=
 <br><br></div>=C2=A0=C2=A0=C2=A0=C2=A0 Best, Oliver<br></div><div><div><di=
v><br><div class=3D"gmail_quote">On Mon, Oct 31, 2016 at 4:51 PM, Raphael B=
osshard <span dir=3D"ltr">&lt;<a href=3D"javascript:" target=3D"_blank" gdf=
-obfuscated-mailto=3D"MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.hr=
ef=3D&#39;javascript:&#39;;return true;" onclick=3D"this.href=3D&#39;javasc=
ript:&#39;;return true;">[email protected]</a>&gt;</span> wrote:<br><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #=
ccc solid;padding-left:1ex"><div dir=3D"ltr">Hi all,<br><br>have you ever n=
oticed how confusing the Scala REPL output it?<br><br><div style=3D"backgro=
und-color:rgb(250,250,250);border-color:rgb(187,187,187);border-style:solid=
;border-width:1px"><code><div><span style=3D"color:#000">scala</span><span =
style=3D"color:#660">&gt;</span><span style=3D"color:#000"> </span><span st=
yle=3D"color:#008">def</span><span style=3D"color:#000"> foo</span><span st=
yle=3D"color:#660">(</span><span style=3D"color:#008">in</span><span style=
=3D"color:#660">:</span><span style=3D"color:#000"> </span><span style=3D"c=
olor:#606">String</span><span style=3D"color:#660">):</span><span style=3D"=
color:#000"> </span><span style=3D"color:#606">Int</span><span style=3D"col=
or:#000"> </span><span style=3D"color:#660">=3D</span><span style=3D"color:=
#000"> </span><span style=3D"color:#660">???</span><span style=3D"color:#00=
0"><br>foo</span><span style=3D"color:#660">:</span><span style=3D"color:#0=
00"> </span><span style=3D"color:#660">(</span><span style=3D"color:#008">i=
n</span><span style=3D"color:#660">:</span><span style=3D"color:#000"> </sp=
an><span style=3D"color:#606">String</span><span style=3D"color:#660">)</sp=
an><span style=3D"color:#606">Int</span><span style=3D"color:#000"><br></sp=
an></div></code></div><br>I have learned what this &quot;foo: (in: String)I=
nt) is supposed to mean. But from a beginner&#39;s perspective I find it pu=
zzling. Instead it should display something like this:<br><span style=3D"co=
lor:#000"></span><br><span style=3D"color:#000"></span><div style=3D"backgr=
ound-color:rgb(250,250,250);border-color:rgb(187,187,187);border-style:soli=
d;border-width:1px"><code><div><span style=3D"color:#000">method created</s=
pan><span style=3D"color:#660">:</span><span style=3D"color:#000"> foo</spa=
n><span style=3D"color:#660">(</span><span style=3D"color:#008">in</span><s=
pan style=3D"color:#660">:</span><span style=3D"color:#000"> </span><span s=
tyle=3D"color:#606">String</span><span style=3D"color:#660">):</span><span =
style=3D"color:#000"> </span><span style=3D"color:#606">Int</span><span sty=
le=3D"color:#000"> <br></span></div></code></div><code></code><br><code><di=
v><span style=3D"color:#000"></span></div></code>Would someone support/guid=
e me in fixing this?<br><br>Cheers,<br>Raphael<span><font color=3D"#888888"=
><br><br><br><br></font></span></div><span><font color=3D"#888888">

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;scala-language&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"=
MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&=
#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true=
;">scala-languag...@<wbr>googlegroups.com</a>.<br>
For more options, visit <a href=3D"https://groups.google.com/d/optout" targ=
et=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://grou=
ps.google.com/d/optout&#39;;return true;" onclick=3D"this.href=3D&#39;https=
://groups.google.com/d/optout&#39;;return true;">https://groups.google.com/=
d/<wbr>optout</a>.<br>
</font></span></blockquote></div><br><br clear=3D"all"><br></div></div><spa=
n><font color=3D"#888888">-- <br><div><div dir=3D"ltr"><div><div dir=3D"ltr=
"><div><div dir=3D"ltr"><div><div dir=3D"ltr"><div>Oliver Ruebenacker<br></=
div><div>Senior Software Engineer, <a href=3D"http://www.type2diabetesgenet=
ics.org/" target=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#3=
9;http://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.type2diabetesgenetics.org=
%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFVE8xTGqlzANyuan2sVDo75uy-vA&#3=
9;;return true;" onclick=3D"this.href=3D&#39;http://www.google.com/url?q\x3=
dhttp%3A%2F%2Fwww.type2diabetesgenetics.org%2F\x26sa\x3dD\x26sntz\x3d1\x26u=
sg\x3dAFQjCNFVE8xTGqlzANyuan2sVDo75uy-vA&#39;;return true;">Diabetes Portal=
</a>, <a href=3D"http://www.broadinstitute.org/" target=3D"_blank" rel=3D"n=
ofollow" onmousedown=3D"this.href=3D&#39;http://www.google.com/url?q\x3dhtt=
p%3A%2F%2Fwww.broadinstitute.org%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjC=
NHloBLjHUP5Yhb6LyVOZ-JE5b4Y5A&#39;;return true;" onclick=3D"this.href=3D&#3=
9;http://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.broadinstitute.org%2F\x26=
sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHloBLjHUP5Yhb6LyVOZ-JE5b4Y5A&#39;;retu=
rn true;">Broad Institute</a><br></div><br></div></div></div></div></div></=
div></div></div>
</font></span></div><div><div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;scala-language&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"=
MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&=
#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true=
;">scala-languag...@<wbr>googlegroups.com</a>.<br>
For more options, visit <a href=3D"https://groups.google.com/d/optout" targ=
et=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://grou=
ps.google.com/d/optout&#39;;return true;" onclick=3D"this.href=3D&#39;https=
://groups.google.com/d/optout&#39;;return true;">https://groups.google.com/=
d/<wbr>optout</a>.<br>
</div></div></blockquote></div><br></div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;scala-language&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"=
MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&=
#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true=
;">scala-languag...@<wbr>googlegroups.com</a>.<br>
For more options, visit <a href=3D"https://groups.google.com/d/optout" targ=
et=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://grou=
ps.google.com/d/optout&#39;;return true;" onclick=3D"this.href=3D&#39;https=
://groups.google.com/d/optout&#39;;return true;">https://groups.google.com/=
d/<wbr>optout</a>.<br>
</div></div></blockquote></div><br><br clear=3D"all"><br>-- <br><div><div d=
ir=3D"ltr"><div><div dir=3D"ltr"><div><div dir=3D"ltr"><div><div dir=3D"ltr=
"><div>Oliver Ruebenacker<br></div><div>Senior Software Engineer, <a href=
=3D"http://www.type2diabetesgenetics.org/" target=3D"_blank" rel=3D"nofollo=
w" onmousedown=3D"this.href=3D&#39;http://www.google.com/url?q\x3dhttp%3A%2=
F%2Fwww.type2diabetesgenetics.org%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQj=
CNFVE8xTGqlzANyuan2sVDo75uy-vA&#39;;return true;" onclick=3D"this.href=3D&#=
39;http://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.type2diabetesgenetics.or=
g%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFVE8xTGqlzANyuan2sVDo75uy-vA&#=
39;;return true;">Diabetes Portal</a>, <a href=3D"http://www.broadinstitute=
.org/" target=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;h=
ttp://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.broadinstitute.org%2F\x26sa\=
x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHloBLjHUP5Yhb6LyVOZ-JE5b4Y5A&#39;;return =
true;" onclick=3D"this.href=3D&#39;http://www.google.com/url?q\x3dhttp%3A%2=
F%2Fwww.broadinstitute.org%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHloBL=
jHUP5Yhb6LyVOZ-JE5b4Y5A&#39;;return true;">Broad Institute</a><br></div><br=
></div></div></div></div></div></div></div></div>
</div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;scala-language&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"=
MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&=
#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true=
;">scala-languag...@<wbr>googlegroups.com</a>.<br>
For more options, visit <a href=3D"https://groups.google.com/d/optout" targ=
et=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://grou=
ps.google.com/d/optout&#39;;return true;" onclick=3D"this.href=3D&#39;https=
://groups.google.com/d/optout&#39;;return true;">https://groups.google.com/=
d/<wbr>optout</a>.<br>
</blockquote></div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;scala-language&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"=
MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&=
#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true=
;">scala-languag...@<wbr>googlegroups.com</a>.<br>
For more options, visit <a href=3D"https://groups.google.com/d/optout" targ=
et=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://grou=
ps.google.com/d/optout&#39;;return true;" onclick=3D"this.href=3D&#39;https=
://groups.google.com/d/optout&#39;;return true;">https://groups.google.com/=
d/<wbr>optout</a>.<br>
</blockquote></div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;scala-language&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"=
MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&=
#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true=
;">scala-languag...@<wbr>googlegroups.com</a>.<br>
For more options, visit <a href=3D"https://groups.google.com/d/optout" targ=
et=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://grou=
ps.google.com/d/optout&#39;;return true;" onclick=3D"this.href=3D&#39;https=
://groups.google.com/d/optout&#39;;return true;">https://groups.google.com/=
d/<wbr>optout</a>.<br>
</blockquote></div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;scala-language&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"=
MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&=
#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true=
;">scala-languag...@<wbr>googlegroups.com</a>.<br>
For more options, visit <a href=3D"https://groups.google.com/d/optout" targ=
et=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://grou=
ps.google.com/d/optout&#39;;return true;" onclick=3D"this.href=3D&#39;https=
://groups.google.com/d/optout&#39;;return true;">https://groups.google.com/=
d/<wbr>optout</a>.<br>
</div></div></blockquote></div><br></div></div></div></div></blockquote></d=
iv></div><div><div class=3D"gmail_quote"><blockquote class=3D"gmail_quote" =
style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><di=
v><div>

<p></p>

-- <br>
You received this message because you are subscribed to a topic in the Goog=
le Groups &quot;scala-language&quot; group.<br>
To unsubscribe from this topic, visit <a href=3D"https://groups.google.com/=
d/topic/scala-language/xiDCISJzbOg/unsubscribe" target=3D"_blank" rel=3D"no=
follow" onmousedown=3D"this.href=3D&#39;https://groups.google.com/d/topic/s=
cala-language/xiDCISJzbOg/unsubscribe&#39;;return true;" onclick=3D"this.hr=
ef=3D&#39;https://groups.google.com/d/topic/scala-language/xiDCISJzbOg/unsu=
bscribe&#39;;return true;">https://groups.google.com/d/<wbr>topic/scala-lan=
guage/<wbr>xiDCISJzbOg/unsubscribe</a>.<br>
To unsubscribe from this group and all its topics, send an email to <a href=
=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"MY-W9UXDBwAJ" r=
el=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&#39;;return tru=
e;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true;">scala-langua=
g...@<wbr>googlegroups.com</a>.</div></div></blockquote></div></div><div><d=
iv class=3D"gmail_quote"><blockquote class=3D"gmail_quote" style=3D"margin:=
0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><br>
For more options, visit <a href=3D"https://groups.google.com/d/optout" targ=
et=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://grou=
ps.google.com/d/optout&#39;;return true;" onclick=3D"this.href=3D&#39;https=
://groups.google.com/d/optout&#39;;return true;">https://groups.google.com/=
d/<wbr>optout</a>.<br>
</div></div></blockquote></div></div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;scala-language&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"=
MY-W9UXDBwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&=
#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true=
;">scala-languag...@<wbr>googlegroups.com</a>.<br>
For more options, visit <a href=3D"https://groups.google.com/d/optout" targ=
et=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;https://grou=
ps.google.com/d/optout&#39;;return true;" onclick=3D"this.href=3D&#39;https=
://groups.google.com/d/optout&#39;;return true;">https://groups.google.com/=
d/<wbr>optout</a>.<br>
</blockquote></div>
</blockquote></div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;scala-language&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:[email protected]">scal=
[email protected]</a>.<br />
For more options, visit <a href=3D"https://groups.google.com/d/optout">http=
s://groups.google.com/d/optout</a>.<br />

------=_Part_174_908783696.1478174107749--

------=_Part_173_1472655616.1478174107748--