Re: Random value not returning, and unwanted output
Oliver <[email protected]> Wed, 21 Nov 2012 23:11:15 +0100
| Newsgroups | gmane.comp.lang.io |
|---|---|
| Message-ID | <CALJNU6rcadEq9rZtjd0SHgzoDeoODCPNch1nDZ24hNWniwvPOw@mail.gmail.com> |
--f46d044517fb07115704cf08a152 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 21 November 2012 19:35, Jacob Peck <[email protected]> wrote: > ** > > > On 11/21/2012 10:35 AM, ohookins wrote: > > > > Hi, > > I have a couple of simple beginner Io questions, so don't unleash the > flames just yet. > > I'm trying to generate a random value between 0 and 100 (just for example= ) > with the following code: > > rand :=3D Random value(100) round > > If I put this even in a file by itself and execute just that line, Io > never processes the line and just freezes right there. If I interrupt > execution I get a trace output something like this: > > IOVM: > Received signal. Setting interrupt flag. > cat > current coroutine > --------- > Object Random Random.io 2 > FileImporter importPath Z_Importer.io 49 > FileImporter tryToImportProtoFromFolder Z_Importer.io 34 > FileImporter import Z_Importer.io 125 > List detect Z_Importer.io 125 > true and Z_Importer.io 125 > > These last 6 lines repeat over and over. Any idea what I'm doing wrong > here? I'm running Io version 20110905. > > That's... bizarre to say the least. I just tested it on 3 different > boxes/platforms and no hangups for me. > > A few questions: > What platform are you on? > Did you compile from source, or install a binary package? > OK, I think I have it figured out. I only glanced over the Importer section of the documentation but evidently the module system just uses the same name for the file as for the module you are using itself. Unfortunately for me, the file I was calling Random from was itself also named random.io, thus creating an infinite loop as it kept calling itself. Problem solved! I wonder if this is an error that could be caught by the interpreter though; I can't imagine a useful reason to import the current file, which has such risk of infinite loops. > Secondly, I have an interactive script which is reading from standard > input and printing some output as well. I am finding that after each > attempted read from standard input I get "nil" printed to standard output= . > Here is how I'm doing it: > > input :=3D File standardInput > input readLine > > That's even more strange. That bug was fixed about a year ago, iirc. If > you're running from a recent copy of the code that shouldn't happen. > > > Perhaps this is not the best way, I'm not sure. What is wrong here? Many > thanks in advance. > > Best Regards, > Oliver > > -->Jake > >=20=20 > --f46d044517fb07115704cf08a152 Content-Type: text/html; charset=windows-1252 Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/htm= l4/strict.dtd"> <html> <head> </head> <body style=3D"background-color: #fff;"> <span style=3D"display:none"> </span> <!--~-|**|PrettyHtmlStartT|**|-~--> <div id=3D"ygrp-mlmsg" style=3D"position:relative;"> <div id=3D"ygrp-msg" style=3D"z-index: 1;"> <!--~-|**|PrettyHtmlEndT|**|-~--> <div id=3D"ygrp-text" > =20=20=20=20=20=20 =20=20=20=20=20=20 <p>On 21 November 2012 19:35, Jacob Peck <span dir=3D"ltr"><<a hre= f=3D"mailto:[email protected]" target=3D"_blank">[email protected]</a= >></span> wrote:<br><div class=3D"gmail_extra"><div class=3D"gmail_quote= "><blockquote class=3D"gmail_quote" style=3D"border-left:1px #ccc solid;"> <u></u> <div> <span>=A0</span> <div> <div> <div> =20=20=20=20=20=20 =20=20=20=20=20=20 <p> =20=20 =20=20 </p><div>On 11/21/2012 10:35 AM, ohookins wrote:<br> </div> <blockquote type=3D"cite"> <span>=A0</span> =20=20=20=20=20=20 <div> <p>Hi,<br> <br> I have a couple of simple beginner Io questions, so don't unleash the flames just yet.<br> <br> I'm trying to generate a random value between 0 and 100 (just for example) with the following code:<br> <br> rand :=3D Random value(100) round<br> <br> If I put this even in a file by itself and execute just that line, Io never processes the line and just freezes right there. If I interrupt execution I get a trace output something like this:<br> <br> IOVM:<br> Received signal. Setting interrupt flag.<br> cat <br> current coroutine<br> ---------<br> Object Random Random.io 2<br> FileImporter importPath Z_Importer.io 49<br> FileImporter tryToImportProtoFromFolder Z_Importer.io 34<br> FileImporter import Z_Importer.io 125<br> List detect Z_Importer.io 125<br> true and Z_Importer.io 125<br> <br> These last 6 lines repeat over and over. Any idea what I'= m doing wrong here? I'm running Io version 20110905.<br> </p> </div> =20=20=20=20=20=20=20=20 =20=20=20=20=20=20 </blockquote> That's... bizarre to say the least.=A0 I just tested it on 3 differ= ent boxes/platforms and no hangups for me.<br> <br> A few questions:<br> What platform are you on?<br> Did you compile from source, or install a binary package?<br></div></di= v></div></div></blockquote><div><br></div><div>OK, I think I have it figure= d out. I only glanced over the Importer section of the documentation but ev= idently the module system just uses the same name for the file as for the m= odule you are using itself. Unfortunately for me, the file I was calling Ra= ndom from was itself also named <a href=3D"http://random.io">random.io</a>,= thus creating an infinite loop as it kept calling itself.</div> <div>=A0</div><div>Problem solved! I wonder if this is an error that could = be caught by the interpreter though; I can't imagine a useful reason to= import the current file, which has such risk of infinite loops.</div><div> <br></div><blockquote class=3D"gmail_quote" style=3D"border-left:1px #ccc s= olid;"><div><div><div><div> <br> <blockquote type=3D"cite"> <div> <div> <div> <p> Secondly, I have an interactive script which is reading from standard input and printing some output as well. I am finding that after each attempted read from standard input I get "nil" printed to standard output. Here is how= I'm doing it:<br> <br> input :=3D File standardInput<br> input readLine<br> </p> </div> </div> </div> </blockquote> That's even more strange.=A0 That bug was fixed about a year ago, iirc.=A0 If you're running from a recent copy of the code that shouldn't happen.<br> <blockquote type=3D"cite"> <div> <div> <div> <p> <br> Perhaps this is not the best way, I'm not sure. What is wrong here? Many thanks in advance.<br> <br> Best Regards,<br> Oliver<br> </p> </div> </div> </div> </blockquote> -->Jake<br> <br> =20=20 <p></p> </div> =20=20=20=20=20 =20=20=20=20 <div style=3D"color:#fff;"></div> </div> =20=20 </div></div></blockquote></div><br></div> </p> </div> =20=20=20=20=20 <!--~-|**|PrettyHtmlStart|**|-~--> <div style=3D"color: #fff; height: 0;">__._,_.___</div> =20=20=20=20=20=20=20=20 =20=20 =20=20 <table cellspacing=3D4px style=3D"margin-top: 20px; margin-bottom: 10px= ;"> <tbody> <tr> <td style=3D"font-size: 12px; font-family: arial; font-weight: bo= ld; padding: 7px 5px 5px; color: #FFF; background-color: #F2F2F2; border: 1= px solid #EAEAEA " > <a style=3D"text-decoration: none; color: #2D50FD= " href=3D"http://groups.yahoo.com/group/iolanguage/post;_ylc=3DX3oDMTJxbHNo= Z3E3BF9TAzk3MzU5NzE0BGdycElkAzY2Nzc0NzYEZ3Jwc3BJZAMxNzA1MDA2NzY0BG1zZ0lkAzE= zMjk3BHNlYwNmdHIEc2xrA3JwbHkEc3RpbWUDMTM1MzUzNTg3Ng--?act=3Dreply&messageNu= m=3D13297">Reply via web post</a> </td> <td style=3D"font-size: 12px; font-family: arial; padding: 7px 5p= x 5px; color: #FFF; background-color: #F2F2F2; border: 1px solid #EAEAEA; "= > <a href=3D"mailto:[email protected]?subject=3DRe%3A%20%5BIo%5D= %20Random%20value%20not%20returning%2C%20and%20unwanted%20output" style=3D"= text-decoration: none; color: #2D50FD;"> Reply to sender </a>=20 </td> <td style=3D"font-size: 12px; font-family: arial; padding: 7px 5p= x 5px; color: #FFF; background-color: #F2F2F2; border: 1px solid #EAEAEA; "= > <a href=3D"mailto:[email protected]?subject=3DRe%3A%20= %5BIo%5D%20Random%20value%20not%20returning%2C%20and%20unwanted%20output" s= tyle=3D"text-decoration: none; color: #2D50FD"> Reply to group </a>=20 </td> <td style=3D"font-size: 12px; font-family: arial; padding: 7px 5p= x 5px; color: #FFF; background-color: #F2F2F2; border: 1px solid #EAEAEA; "= > <a href=3D"http://groups.yahoo.com/group/iolanguage/post;_ylc= =3DX3oDMTJlYm90NTJlBF9TAzk3MzU5NzE0BGdycElkAzY2Nzc0NzYEZ3Jwc3BJZAMxNzA1MDA2= NzY0BHNlYwNmdHIEc2xrA250cGMEc3RpbWUDMTM1MzUzNTg3Ng--" style=3D"text-decorat= ion: none; color: #2D50FD">Start a New Topic</a> </td> <td style=3D"font-size: 12px; font-family: arial; padding: 7px 5p= x 5px; color: #2D50FD; background-color: #F2F2F2; border: 1px solid #EAEAEA= ; " > <a href=3D"http://groups.yahoo.com/group/iolang= uage/message/13292;_ylc=3DX3oDMTM2YzNnZGQzBF9TAzk3MzU5NzE0BGdycElkAzY2Nzc0N= zYEZ3Jwc3BJZAMxNzA1MDA2NzY0BG1zZ0lkAzEzMjk3BHNlYwNmdHIEc2xrA3Z0cGMEc3RpbWUD= MTM1MzUzNTg3NgR0cGNJZAMxMzI5Mg--" style=3D"text-decoration: none; color: #2= D50FD;">Messages in this topic</a> (4) </td> </tr> </tbody> </table> =20=20=20=20=20=20=20=20 <!------- Start Nav Bar ------> <!-- |**|begin egp html banner|**| --> <!-- |**|end egp html banner|**| --> <!-- |**|begin egp html banner|**| --> <div id=3D"ygrp-vital" style=3D"background-color: #f2f2f2; font-family: Ver= dana; font-size: 10px; margin-bottom: 10px; padding: 10px;"> <span id=3D"vithd" style=3D"font-weight: bold; color: #333; text-tran= sform: uppercase; ">Recent Activity:</span> <ul style=3D"list-style-type: none; margin: 0; padding: 0; display: inl= ine;"> <li style=3D"border-right: 1px solid #000; font-weight: 700; di= splay: inline; padding: 0 5px; margin-left: 0;"> <span class=3D"cat"><a href=3D"http://groups.yahoo.com/group/iolangua= ge/members;_ylc=3DX3oDMTJmaW8zaWk4BF9TAzk3MzU5NzE0BGdycElkAzY2Nzc0NzYEZ3Jwc= 3BJZAMxNzA1MDA2NzY0BHNlYwN2dGwEc2xrA3ZtYnJzBHN0aW1lAzEzNTM1MzU4NzY-?o=3D6" = style=3D"text-decoration: none;">New Members</a></span> <span class=3D"ct" style=3D"color: #ff7900;">3</span> </li> </ul> =20=20=20=20 <div style=3D"clear: both; padding-top: 2px; color: #1e66ae;"> <a href=3D"http://groups.yahoo.com/group/iolanguage;_ylc=3DX3oDMTJlNjBo= YTIzBF9TAzk3MzU5NzE0BGdycElkAzY2Nzc0NzYEZ3Jwc3BJZAMxNzA1MDA2NzY0BHNlYwN2dGw= Ec2xrA3ZnaHAEc3RpbWUDMTM1MzUzNTg3Ng--" style=3D"text-decoration: none;">Vis= it Your Group</a> </div> </div> =20=20 <div id=3D"ft" style=3D"font-family: Arial; font-size: 11px; margin-top: 5p= x; padding: 0 2px 0 0; clear: both;"> <a href=3D"http://groups.yahoo.com/;_ylc=3DX3oDMTJkdmw3NXI1BF9TAzk3NDc2NT= kwBGdycElkAzY2Nzc0NzYEZ3Jwc3BJZAMxNzA1MDA2NzY0BHNlYwNmdHIEc2xrA2dmcARzdGltZ= QMxMzUzNTM1ODc2" style=3D"float: left;"><img src=3D"http://l.yimg.com/a/i/u= s/yg/logo/us.gif" height=3D"15" width=3D"137" alt=3D"Yahoo! Groups" style= =3D"border: 0;"/></a> <div style=3D"color: #747575; float: right;">Switch to: <a href=3D"mailto= :[email protected]?subject=3DChange Delivery Format: T= raditional" style=3D"text-decoration: none;">Text-Only</a>, <a href=3D"mail= to:[email protected]?subject=3DEmail Delivery: Digest" clas= s=3D"margin-rt" style=3D"text-decoration: none;">Daily Digest</a> • <a= href=3D"mailto:[email protected]?subject=3DUnsubscrib= e" style=3D"text-decoration: none;">Unsubscribe</a> • <a href=3D"http:= //docs.yahoo.com/info/terms/" style=3D"text-decoration: none;">Terms of Use= </a> • <a href=3D"mailto:[email protected]?subject= =3DFeedback on the redesigned individual mail v1" style=3D"text-decoration:= none;">Send us Feedback </a></div> </div> <!-- |**|end egp html banner|**| --> </div> <!-- ygrp-msg --> <!-- Sponsor --> <!-- |**|begin egp html banner|**| --> <div id=3D"ygrp-sponsor" style=3D"width:160px; float:right; clear:none; m= argin:0 0 25px 0; background: #fff;"> <!-- Start Recommendations --> <div id=3D"ygrp-reco"> </div> <!-- End Recommendations --> </div> <!-- |**|end egp html banner|**| --> <div style=3D"clear:both; color: #FFF; font-size:1px;">.</div> </div> <img src=3D"http://geo.yahoo.com/serv?s=3D97359714/grpId=3D6677476/grpspI= d=3D1705006764/msgId=3D13297/stime=3D1353535876/nc1=3D3848644/nc2=3D4507179= /nc3=3D5758222" width=3D"1" height=3D"1"> <br> <div style=3D"color: #fff; height: 0;">__,_._,___</div> <!--~-|**|PrettyHtmlEnd|**|-~--> </body> <!--~-|**|PrettyHtmlStart|**|-~--> <head> <style type=3D"text/css"> <!-- #ygrp-mkp { border: 1px solid #d8d8d8; font-family: Arial; margin: 10px 0; padding: 0 10px; } #ygrp-mkp hr { border: 1px solid #d8d8d8; } #ygrp-mkp #hd { color: #628c2a; font-size: 85%; font-weight: 700; line-height: 122%; margin: 10px 0; } #ygrp-mkp #ads { margin-bottom: 10px; } #ygrp-mkp .ad { padding: 0 0; } #ygrp-mkp .ad p { margin: 0; } #ygrp-mkp .ad a { color: #0000ff; text-decoration: none; } #ygrp-sponsor #ygrp-lc { font-family: Arial; } #ygrp-sponsor #ygrp-lc #hd { margin: 10px 0px; font-weight: 700; font-size: 78%; line-height: 122%; } #ygrp-sponsor #ygrp-lc .ad { margin-bottom: 10px; padding: 0 0; } #actions { font-family: Verdana; font-size: 11px; padding: 10px 0; } #activity { background-color: #e0ecee; float: left; font-family: Verdana; font-size: 10px; padding: 10px; } #activity span { font-weight: 700; } #activity span:first-child { text-transform: uppercase; } #activity span a { color: #5085b6; text-decoration: none; } #activity span span { color: #ff7900; } #activity span .underline { text-decoration: underline; } .attach { clear: both; display: table; font-family: Arial; font-size: 12px; padding: 10px 0; width: 400px; } .attach div a { text-decoration: none; } .attach img { border: none; padding-right: 5px; } .attach label { display: block; margin-bottom: 5px; } .attach label a { text-decoration: none; } =20=20 blockquote { margin: 0 0 0 4px; } .bold { font-family: Arial; font-size: 13px; font-weight: 700; } .bold a { text-decoration: none; } dd.last p a { font-family: Verdana; font-weight: 700; } dd.last p span { margin-right: 10px; font-family: Verdana; font-weight: 700; } dd.last p span.yshortcuts { margin-right: 0; } div.attach-table div div a { text-decoration: none; } div.attach-table { width: 400px; } div.file-title a, div.file-title a:active, div.file-title a:hover, div.fi= le-title a:visited { text-decoration: none; } div.photo-title a, div.photo-title a:active, div.photo-title a:hover, div= .photo-title a:visited { text-decoration: none; } div#ygrp-mlmsg #ygrp-msg p a span.yshortcuts { font-family: Verdana; font-size: 10px; font-weight: normal; } .green { color: #628c2a; } .MsoNormal { margin: 0 0 0 0; } o { font-size: 0; } #photos div { float: left; width: 72px; } #photos div div { border: 1px solid #666666; height: 62px; overflow: hidden; width: 62px; } #photos div label { color: #666666; font-size: 10px; overflow: hidden; text-align: center; white-space: nowrap; width: 64px; } #reco-category { font-size: 77%; } #reco-desc { font-size: 77%; } .replbq { margin: 4px; } #ygrp-actbar div a:first-child { /* border-right: 0px solid #000;*/ margin-right: 2px; padding-right: 5px; } #ygrp-mlmsg { font-size: 13px; font-family: Arial, helvetica,clean, sans-serif; *font-size: small; *font: x-small; } #ygrp-mlmsg table { font-size: inherit; font: 100%; } #ygrp-mlmsg select, input, textarea { font: 99% Arial, Helvetica, clean, sans-serif; } #ygrp-mlmsg pre, code { font:115% monospace; *font-size:100%; } #ygrp-mlmsg * { line-height: 1.22em; } #ygrp-mlmsg #logo { padding-bottom: 10px; } #ygrp-msg p a { font-family: Verdana; } #ygrp-msg p#attach-count span { color: #1E66AE; font-weight: 700; } #ygrp-reco #reco-head { color: #ff7900; font-weight: 700; } #ygrp-reco { margin-bottom: 20px; padding: 0px; } #ygrp-sponsor #ov li a { font-size: 130%; text-decoration: none; } #ygrp-sponsor #ov li { font-size: 77%; list-style-type: square; padding: 6px 0; }=20 #ygrp-sponsor #ov ul { margin: 0; padding: 0 0 0 8px; } #ygrp-text { font-family: Georgia; } #ygrp-text p { margin: 0 0 1em 0; } #ygrp-text tt { font-size: 120%; } #ygrp-vital ul li:last-child { border-right: none !important;=20 }=20 --> </style> </head> <!--~-|**|PrettyHtmlEnd|**|-~--> </html> <!-- end group email --> --f46d044517fb07115704cf08a152--