Re: The Scala REPL output is confusing
Jasper-M <[email protected]> Mon, 7 Nov 2016 03:45:17 -0800 (PST)
| Newsgroups | gmane.comp.lang.scala |
|---|---|
| Message-ID | <[email protected]> |
------=_Part_1496_1533490488.1478519117365 Content-Type: multipart/alternative; boundary="----=_Part_1497_151168226.1478519117366" ------=_Part_1497_151168226.1478519117366 Content-Type: text/plain; charset=UTF-8 I don't really have a problem with the output of method types and such in the REPL. But might it be an idea to trim all the $wrapper stuff from the output of //print ? Op zaterdag 5 november 2016 07:31:57 UTC+1 schreef som-snytt: > > > I already responded to the cross-posting elsewhere -- that different users > have different needs -- > > but Oliver's comment reminded me that the clever `//print` autocomplete > mechanism is easy to overlook. > > I'd like an output mode for REPL where it's basically doing what //print > does. That is, echo what I typed with extra type info. > > The only difference is that //print would not side-effect, but nobody does > that anyway. > > For example, when I enter f(17), show me the expanded expression. > > scala> def f(i: Int)(implicit j: Int) = i + j > f: (i: Int)(implicit j: Int)Int > > scala> implicit val x: Int = 42 > x: Int = 42 > > scala> f(17) //print > $line4.$read.$iw.$iw.f(17)($line5.$read.$iw.$iw.x) // : Int > > scala> f(17) > res0: Int = 59 > > > On Thursday, November 3, 2016 at 4:55:07 AM UTC-7, Raphael Bosshard wrote: >> >> 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]> >>> 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]> >>>> 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]> >>>>> 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]> >>>>>> wrote: >>>>>> >>>>>>> Could this be solved the easiest with scala.meta? >>>>>>> >>>>>>> On Mon, Oct 31, 2016, 6:46 PM Adriaan Moors <[email protected]> >>>>>>> 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]> 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]> 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]> 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]> 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]. >>>>>>>>>>>> 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]. >>>>>>>>>>> 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. >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> 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]. >>>>>>>>> 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. >>>>>>>> >>>>>>> -- >>>>>>> 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. >>>>>>> >>>>>> -- >>>>>> 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. >>>>>> >>>>> >>>>> -- >>>>> 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]. >>>>> >>>> >>>>> 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. >>>> >>> -- 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_1497_151168226.1478519117366 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">I don't really have a problem with the output of metho= d types and such in the REPL. But might it be an idea to trim all the $wrap= per stuff from the output of //print ?<br><br>Op zaterdag 5 november 2016 0= 7:31:57 UTC+1 schreef som-snytt:<blockquote class=3D"gmail_quote" style=3D"= margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;= "><div dir=3D"ltr"><br>I already responded to the cross-posting elsewhere -= - that different users have different needs --<br><br>but Oliver's comm= ent reminded me that the clever `//print` autocomplete mechanism is easy to= overlook.<br><br>I'd like an output mode for REPL where it's basic= ally doing what //print does. That is, echo what I typed with extra type in= fo.<br><br>The only difference is that //print would not side-effect, but n= obody does that anyway.<br><br>For example, when I enter f(17), show me the= expanded expression.<br><br><span style=3D"font-family:courier new,monospa= ce">scala> def f(i: Int)(implicit j: Int) =3D i + j<br>f: (i: Int)(impli= cit j: Int)Int<br><br>scala> implicit val x: Int =3D 42<br>x: Int =3D 42= <br><br>scala> f(17) //print<br>=C2=A0=C2=A0 $line4.$read.$iw.$iw.f(17)(= $<wbr>line5.$read.$iw.$iw.x) // : Int<br><br>scala> f(17)<br>res0: Int = =3D 59</span><br><br><br>On Thursday, November 3, 2016 at 4:55:07 AM UTC-7,= Raphael Bosshard wrote:<blockquote class=3D"gmail_quote" style=3D"margin:0= ;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D= "ltr">Hi all,<br><br>This is now <a href=3D"https://issues.scala-lang.org/b= rowse/SI-10023" rel=3D"nofollow" target=3D"_blank" onmousedown=3D"this.href= =3D'https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.scala-lang.org= %2Fbrowse%2FSI-10023\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHkU7Aaj7pru-v3= bE0j0zWx7AcTig';return true;" onclick=3D"this.href=3D'https://www.g= oogle.com/url?q\x3dhttps%3A%2F%2Fissues.scala-lang.org%2Fbrowse%2FSI-10023\= x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHkU7Aaj7pru-v3bE0j0zWx7AcTig';r= eturn true;">https://issues.scala-lang.org/<wbr>browse/SI-10023</a>. We can= discuss the specifics (i.e. how the new output should look like) there.<br= ><br>Thanks for all the help and directions!<br><br>Raphael<br><br>Am Diens= tag, 1. November 2016 17:58:05 UTC+1 schrieb Adriaan Moors:<blockquote clas= s=3D"gmail_quote" style=3D"margin:0;margin-left:0.8ex;border-left:1px #ccc = solid;padding-left:1ex"><div dir=3D"ltr">Yes, a PR will be needed for the C= I to verify your changes. We have some docs (<a href=3D"https://github.com/= scala/scala/blob/2.12.x/README.md" rel=3D"nofollow" target=3D"_blank" onmou= sedown=3D"this.href=3D'https://www.google.com/url?q\x3dhttps%3A%2F%2Fgi= thub.com%2Fscala%2Fscala%2Fblob%2F2.12.x%2FREADME.md\x26sa\x3dD\x26sntz\x3d= 1\x26usg\x3dAFQjCNEeoSM5vBadv7OK7x9ecmP1GNJb_Q';return true;" onclick= =3D"this.href=3D'https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.c= om%2Fscala%2Fscala%2Fblob%2F2.12.x%2FREADME.md\x26sa\x3dD\x26sntz\x3d1\x26u= sg\x3dAFQjCNEeoSM5vBadv7OK7x9ecmP1GNJb_Q';return true;">https://github.= com/scala/<wbr>scala/blob/2.12.x/README.md</a>, <a href=3D"http://scala-lan= g.org/contribute/hacker-guide.html" rel=3D"nofollow" target=3D"_blank" onmo= usedown=3D"this.href=3D'http://www.google.com/url?q\x3dhttp%3A%2F%2Fsca= la-lang.org%2Fcontribute%2Fhacker-guide.html\x26sa\x3dD\x26sntz\x3d1\x26usg= \x3dAFQjCNH1f4Y2UK_3wr5WD5fthslBxnxrxw';return true;" onclick=3D"this.h= ref=3D'http://www.google.com/url?q\x3dhttp%3A%2F%2Fscala-lang.org%2Fcon= tribute%2Fhacker-guide.html\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNH1f4Y2U= K_3wr5WD5fthslBxnxrxw';return true;">http://scala-lang.org/<wbr>contrib= ute/hacker-guide.html</a>) to help you get started, and are always happy to= help on <a href=3D"https://gitter.im/scala/contributors" rel=3D"nofollow" = target=3D"_blank" onmousedown=3D"this.href=3D'https://www.google.com/ur= l?q\x3dhttps%3A%2F%2Fgitter.im%2Fscala%2Fcontributors\x26sa\x3dD\x26sntz\x3= d1\x26usg\x3dAFQjCNFxrd1IyKJT8kD0P-aHE8Wq3AXvBg';return true;" onclick= =3D"this.href=3D'https://www.google.com/url?q\x3dhttps%3A%2F%2Fgitter.i= m%2Fscala%2Fcontributors\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFxrd1IyKJT= 8kD0P-aHE8Wq3AXvBg';return true;">https://gitter.im/scala/<wbr>contribu= tors</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 <<a rel=3D"nofollow">raphael..= [email protected]</a>> wrote:<br></div><blockquote class=3D"gmail_quote" styl= e=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div di= r=3D"ltr">Excellent. I'll give it a shot and come back if I need help. = Do I need to create a PR for that?<br></div><div><br><div class=3D"gmail_qu= ote"></div></div><div><div class=3D"gmail_quote">On Tue, Nov 1, 2016 at 10:= 47 AM, Heather Miller <span dir=3D"ltr"><<a rel=3D"nofollow">heather....= @gmail.com</a>></span> wrote:<br></div></div><div><div class=3D"gmail_qu= ote"><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-le= ft:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr">+1 to improving the RE= PL output such that it prints out the Scala method definition. I'd love= to see this.<div>(I've always wondered why the REPL output wasn't = friendlier!)</div><div><div><div><br></div><div><br></div><div><br><div cla= ss=3D"gmail_quote">On Tue, Nov 1, 2016 at 3:56 AM, Adriaan Moors <span dir= =3D"ltr"><<a rel=3D"nofollow">[email protected]</a>></span> wrote:= <br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-lef= t:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr">I think everything need= ed 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= .</div><div><div><br><div class=3D"gmail_quote"><div dir=3D"ltr">On Mon, Oc= t 31, 2016 at 6:58 PM Naftoli Gugenheim <<a rel=3D"nofollow">nafto...@gm= ail.com</a>> 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"lt= r">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 <<a rel=3D"nofollow">[email protected]</a>> wrote= :<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bor= der-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr">I agree the outp= ut would be nicer if we printed out the method definition in legal Scala. T= he current output is just printing the (strictly) internal representation o= f a method type.<div><br></div><div>I would be happy to help to improve thi= s. I believe the logic for the output is here:=C2=A0<a href=3D"https://gith= ub.com/scala/scala/blob/2.12.x/src/repl/scala/tools/nsc/interpreter/MemberH= andlers.scala#L156" rel=3D"nofollow" target=3D"_blank" onmousedown=3D"this.= href=3D'https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fscal= a%2Fscala%2Fblob%2F2.12.x%2Fsrc%2Frepl%2Fscala%2Ftools%2Fnsc%2Finterpreter%= 2FMemberHandlers.scala%23L156\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHGbqL= DNWU7cpMYECTo0i0sddJN3Q';return true;" onclick=3D"this.href=3D'http= s://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fscala%2Fscala%2Fblob= %2F2.12.x%2Fsrc%2Frepl%2Fscala%2Ftools%2Fnsc%2Finterpreter%2FMemberHandlers= .scala%23L156\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHGbqLDNWU7cpMYECTo0i0= sddJN3Q';return true;">https://github.com/<wbr>scala/scala/blob/2.12.x/= src/<wbr>repl/scala/tools/nsc/<wbr>interpreter/MemberHandlers.<wbr>scala#L1= 56</a></div><div><br></div><div>cheers</div></div><div dir=3D"ltr"><div>adr= iaan</div></div><br><div class=3D"gmail_quote"><div dir=3D"ltr">On Mon, Oct= 31, 2016 at 2:55 PM Oliver Ruebenacker <<a rel=3D"nofollow">cur...@gmai= l.com</a>> wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"ma= rgin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"lt= r"><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></div><name>: <type&g= t;<br><br></div>=C2=A0 With "(in: String)Int" being the type of t= he method. <br><br></div>=C2=A0 This resembles JNI method type notation, wh= ere the return type goes directly after the parens, too.<br><br></div>=C2= =A0=C2=A0=C2=A0=C2=A0 Best, Oliver<br></div><div><br><div class=3D"gmail_qu= ote">On Mon, Oct 31, 2016 at 5:11 PM, Justin du coeur <span dir=3D"ltr"><= ;<a rel=3D"nofollow">[email protected]</a>></span> wrote:<br><blockquote= class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc soli= d;padding-left:1ex"><div dir=3D"ltr">(Note that this conversation started o= ver on Gitter, and moved here.)<div><br></div><div>That's fair, but not= e that the output <i>isn't legal Scala</i>.=C2=A0 The "method crea= ted" bit I agree is arguable, but it really is kind of weird and confu= sing that there's no colon before "Int" in the output -- the = output syntax seems strangely arbitrary.=C2=A0 Was there a specific reason = for that, or is it just an old "seemed good enough at the time"?<= /div><div><br></div><div>I should note that I don't care passionately -= - I don't use the REPL much myself.=C2=A0 But this seems like a pointle= ss roadbump for new users, having the output be almost, but not quite, lega= l Scala.</div><div><br></div><div>And really, is "unnecessary clutter&= quot; (at least in small amounts) actually a problem in the REPL?=C2=A0 I w= ould 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, = 2016 at 4:55 PM, Oliver Ruebenacker <span dir=3D"ltr"><<a rel=3D"nofollo= w">[email protected]</a>></span> wrote:<br><blockquote class=3D"gmail_quo= te" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"= ><div dir=3D"ltr"><div><div><div><br></div>=C2=A0=C2=A0=C2=A0=C2=A0 Hello,<= br><br></div>=C2=A0 That would add unnecessary clutter. Whoever entered the= line knows they used def. <br><br></div>=C2=A0=C2=A0=C2=A0=C2=A0 Best, Oli= ver<br></div><div><div><div><br><div class=3D"gmail_quote">On Mon, Oct 31, = 2016 at 4:51 PM, Raphael Bosshard <span dir=3D"ltr"><<a rel=3D"nofollow"= >[email protected]</a>></span> wrote:<br><blockquote class=3D"gmail_= quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1= ex"><div dir=3D"ltr">Hi all,<br><br>have you ever noticed how confusing the= Scala REPL output it?<br><br><div style=3D"background-color:rgb(250,250,25= 0);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">>= ;</span><span style=3D"color:#000"> </span><span style=3D"color:#008">def</= span><span style=3D"color:#000"> foo</span><span style=3D"color:#660">(</sp= an><span style=3D"color:#008">in</span><span style=3D"color:#660">:</span><= span style=3D"color:#000"> </span><span style=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 style=3D"color:#000"> </span><span st= yle=3D"color:#660">=3D</span><span style=3D"color:#000"> </span><span style= =3D"color:#660">???</span><span style=3D"color:#000"><br>foo</span><span st= yle=3D"color:#660">:</span><span style=3D"color:#000"> </span><span style= =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"color= :#606">String</span><span style=3D"color:#660">)</span><span style=3D"color= :#606">Int</span><span style=3D"color:#000"><br></span></div></code></div><= br>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 shou= ld display something like this:<br><span style=3D"color:#000"></span><br><s= pan style=3D"color:#000"></span><div style=3D"background-color:rgb(250,250,= 250);border-color:rgb(187,187,187);border-style:solid;border-width:1px"><co= de><div><span style=3D"color:#000">method created</span><span style=3D"colo= r:#660">:</span><span style=3D"color:#000"> foo</span><span style=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"color:#606">Str= ing</span><span style=3D"color:#660">):</span><span style=3D"color:#000"> <= /span><span style=3D"color:#606">Int</span><span style=3D"color:#000"> <br>= </span></div></code></div><code></code><br><code><div><span style=3D"color:= #000"></span></div></code>Would someone support/guide 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" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a rel=3D"nofollow">scala-languag...@googlegroups.<wbr>com</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" rel= =3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D'https://gro= ups.google.com/d/optout';return true;" onclick=3D"this.href=3D'http= s://groups.google.com/d/optout';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/" rel=3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D= 9;http://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.type2diabetesgenetics.org= %2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFVE8xTGqlzANyuan2sVDo75uy-vA= 9;;return true;" onclick=3D"this.href=3D'http://www.google.com/url?q\x3= dhttp%3A%2F%2Fwww.type2diabetesgenetics.org%2F\x26sa\x3dD\x26sntz\x3d1\x26u= sg\x3dAFQjCNFVE8xTGqlzANyuan2sVDo75uy-vA';return true;">Diabetes Portal= </a>, <a href=3D"http://www.broadinstitute.org/" rel=3D"nofollow" target=3D= "_blank" onmousedown=3D"this.href=3D'http://www.google.com/url?q\x3dhtt= p%3A%2F%2Fwww.broadinstitute.org%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjC= NHloBLjHUP5Yhb6LyVOZ-JE5b4Y5A';return true;" onclick=3D"this.href=3D= 9;http://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.broadinstitute.org%2F\x26= sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHloBLjHUP5Yhb6LyVOZ-JE5b4Y5A';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" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a rel=3D"nofollow">scala-languag...@googlegroups.<wbr>com</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" rel= =3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D'https://gro= ups.google.com/d/optout';return true;" onclick=3D"this.href=3D'http= s://groups.google.com/d/optout';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" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a rel=3D"nofollow">scala-languag...@googlegroups.<wbr>com</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" rel= =3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D'https://gro= ups.google.com/d/optout';return true;" onclick=3D"this.href=3D'http= s://groups.google.com/d/optout';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/" rel=3D"nofollow" target=3D"_blan= k" onmousedown=3D"this.href=3D'http://www.google.com/url?q\x3dhttp%3A%2= F%2Fwww.type2diabetesgenetics.org%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQj= CNFVE8xTGqlzANyuan2sVDo75uy-vA';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/" rel=3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D'h= ttp://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.broadinstitute.org%2F\x26sa\= x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHloBLjHUP5Yhb6LyVOZ-JE5b4Y5A';return = true;" onclick=3D"this.href=3D'http://www.google.com/url?q\x3dhttp%3A%2= F%2Fwww.broadinstitute.org%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHloBL= jHUP5Yhb6LyVOZ-JE5b4Y5A';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" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a rel=3D"nofollow">scala-languag...@googlegroups.<wbr>com</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" rel= =3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D'https://gro= ups.google.com/d/optout';return true;" onclick=3D"this.href=3D'http= s://groups.google.com/d/optout';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" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a rel=3D"nofollow">scala-languag...@googlegroups.<wbr>com</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" rel= =3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D'https://gro= ups.google.com/d/optout';return true;" onclick=3D"this.href=3D'http= s://groups.google.com/d/optout';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" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a rel=3D"nofollow">scala-languag...@googlegroups.<wbr>com</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" rel= =3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D'https://gro= ups.google.com/d/optout';return true;" onclick=3D"this.href=3D'http= s://groups.google.com/d/optout';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" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a rel=3D"nofollow">scala-languag...@googlegroups.<wbr>com</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" rel= =3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D'https://gro= ups.google.com/d/optout';return true;" onclick=3D"this.href=3D'http= s://groups.google.com/d/optout';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 "scala-language" group.<br> To unsubscribe from this topic, visit <a href=3D"https://groups.google.com/= d/topic/scala-language/xiDCISJzbOg/unsubscribe" rel=3D"nofollow" target=3D"= _blank" onmousedown=3D"this.href=3D'https://groups.google.com/d/topic/s= cala-language/xiDCISJzbOg/unsubscribe';return true;" onclick=3D"this.hr= ef=3D'https://groups.google.com/d/topic/scala-language/xiDCISJzbOg/unsu= bscribe';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 rel= =3D"nofollow">scala-languag...@googlegroups.<wbr>com</a>.</div></div></bloc= kquote></div></div><div><div class=3D"gmail_quote"><blockquote class=3D"gma= il_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-lef= t:1ex"><div><div><br> For more options, visit <a href=3D"https://groups.google.com/d/optout" rel= =3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D'https://gro= ups.google.com/d/optout';return true;" onclick=3D"this.href=3D'http= s://groups.google.com/d/optout';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" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a rel=3D"nofollow">scala-languag...@googlegroups.<wbr>com</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" rel= =3D"nofollow" target=3D"_blank" onmousedown=3D"this.href=3D'https://gro= ups.google.com/d/optout';return true;" onclick=3D"this.href=3D'http= s://groups.google.com/d/optout';return true;">https://groups.google.com= /d/<wbr>optout</a>.<br> </blockquote></div> </blockquote></div></blockquote></div></blockquote></div> <p></p> -- <br /> You received this message because you are subscribed to the Google Groups &= quot;scala-language" 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_1497_151168226.1478519117366-- ------=_Part_1496_1533490488.1478519117365--