Re: Are You Guys Serious?
- Posted by "Cuny, David" <David.Cuny at DSS.CA.GOV> Sep 09, 1998
- 576 views
This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=_NextPart_001_01BDDC53.1D24F700 charset="iso-8859-1" John DeHope subtly wrote: >> "unnecessarily long words and redundant brackets" > > ... Short, illegible syntax is bad: EU is good. Yet you chose to write 'EU' instead of 'Euphoria'. >> "comma separator" > > Maybe I have gone too far, because this is really going out > on a limb. There are no compelling reasons for commas in sequences. The parser certainly doesn't require them. >> "types, type checking" > > I'm going mad! Please, somebody that knows Jiri, tell me he is > just kidding! Why is this kidding? I've yet to define my own data type. The main reason for types seems to be to allow the compiler to optimize an expression. Since when is doing the work of a compiler considered a good thing? >>"error handling" > > The idea that a program shouldn't halt when the code tries to access > an non-existing object is insane. This must be a joke. Why is this insane? Euphoria could issue a visual warning, such as a message box with the contents: Warning: Boundary Error! Abort or Ignore? If you choose to ignore it, Euphoria would attempt to recover from the error, taking different actions depending on what the error was. If the interpreter can recognize an instruction as (1) bad, and (2) as *potentially* correctable, why is better to crash and lose all the data than to attempt to recover? Consider this scenario: it's 3:00 in the morning, and John Composer is using a Euphoria program to write a string quartet. He's just finished an especially tricky counterpoint that he's spent the last couple of hours on. But the program's logic is about to make the *fatal* error of positioning a bitmap graphic a bit too far to the left of the screen. This causes get_image to choke, the Euphoria shut the program down. I'm sure that John wouldn't be unhappy about losing hours of unrecoverable work. After all, he's got the immense satisfaction of knowing that Euphoria was prevented from possibly making an error, as well as a dump from EX.ERR. Uh, huh. And foolish of me not to write a program that makes a backup every five minutes... Under my scenario, instead of crashing, a message box pops up: Warning: Boundary Error! Abort or Ignore? John Composer decides that the risks of choosing 'Ignore' far outweigh those associated with 'Abort' (losing all his work), and selects 'Ignore'. Fortunately for John, the program is able to continue happily along. Given the options: 1. Crash and burn. 2. Attempt to recover. I'm "insane" to opt for the second? -- David Cuny ------_=_NextPart_001_01BDDC53.1D24F700 charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; = charset=3Diso-8859-1"> <META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version = 5.5.2232.0"> <TITLE>RE: Are You Guys Serious?</TITLE> </HEAD> <BODY> <P><FONT SIZE=3D2>John DeHope subtly wrote:</FONT> </P> <P><FONT SIZE=3D2>>> "unnecessarily long words and redundant = brackets"</FONT> <BR><FONT SIZE=3D2>></FONT> <BR><FONT SIZE=3D2>> ... Short, illegible syntax is bad: EU is = good.</FONT> </P> <P><FONT SIZE=3D2>Yet you chose to write 'EU' instead of = 'Euphoria'.</FONT> </P> <BR> <P><FONT SIZE=3D2>>> "comma separator"</FONT> <BR><FONT SIZE=3D2>></FONT> <BR><FONT SIZE=3D2>> Maybe I have gone too far, because this is = really going out </FONT> <BR><FONT SIZE=3D2>> on a limb.</FONT> </P> <P><FONT SIZE=3D2>There are no compelling reasons for commas in = sequences. The parser certainly doesn't require them.</FONT> </P> <BR> <P><FONT SIZE=3D2>>> "types, type checking"</FONT> <BR><FONT SIZE=3D2>></FONT> <BR><FONT SIZE=3D2>> I'm going mad! Please, somebody that knows = Jiri, tell me he is </FONT> <BR><FONT SIZE=3D2>> just kidding!</FONT> </P> <P><FONT SIZE=3D2>Why is this kidding? I've yet to define my own data = type. The main reason for types seems to be to allow the compiler to = optimize an expression. Since when is doing the work of a compiler = considered a good thing?</FONT></P> <BR> <P><FONT SIZE=3D2>>>"error handling"</FONT> <BR><FONT SIZE=3D2>></FONT> <BR><FONT SIZE=3D2>> The idea that a program shouldn't halt when the = code tries to access </FONT> <BR><FONT SIZE=3D2>> an non-existing object is insane. This must be = a joke.</FONT> </P> <P><FONT SIZE=3D2>Why is this insane? Euphoria could issue a visual = warning, such as a message box with the contents:</FONT> </P> <P> <FONT SIZE=3D2>Warning: = Boundary Error!</FONT> <BR> <FONT SIZE=3D2>Abort or = Ignore?</FONT> </P> <P><FONT SIZE=3D2>If you choose to ignore it, Euphoria would attempt to = recover from the error, taking different actions depending on what the = error was.</FONT></P> <P><FONT SIZE=3D2>If the interpreter can recognize an instruction as = (1) bad, and (2) as *potentially* correctable, why is better to crash = and lose all the data than to attempt to recover?</FONT></P> <P><FONT SIZE=3D2>Consider this scenario: it's 3:00 in the morning, and = John Composer is using a Euphoria program to write a string quartet. = He's just finished an especially tricky counterpoint that he's spent = the last couple of hours on.</FONT></P> <P><FONT SIZE=3D2>But the program's logic is about to make the *fatal* = error of positioning a bitmap graphic a bit too far to the left of the = screen. This causes get_image to choke, the Euphoria shut the program = down.</FONT></P> <P><FONT SIZE=3D2>I'm sure that John wouldn't be unhappy about losing = hours of unrecoverable work. After all, he's got the immense = satisfaction of knowing that Euphoria was prevented from possibly = making an error, as well as a dump from EX.ERR.</FONT></P> <P><FONT SIZE=3D2>Uh, huh.</FONT> </P> <P><FONT SIZE=3D2>And foolish of me not to write a program that makes a = backup every five minutes...</FONT> </P> <P><FONT SIZE=3D2>Under my scenario, instead of crashing, a message box = pops up:</FONT> </P> <P> <FONT SIZE=3D2>Warning: = Boundary Error!</FONT> <BR> <FONT SIZE=3D2>Abort or = Ignore?</FONT> </P> <P><FONT SIZE=3D2>John Composer decides that the risks of choosing = 'Ignore' far outweigh those associated with 'Abort' (losing all his = work), and selects 'Ignore'. Fortunately for John, the program is able = to continue happily along.</FONT></P> <P><FONT SIZE=3D2>Given the options:</FONT> </P> <P> <FONT SIZE=3D2>1. Crash = and burn.</FONT> <BR> <FONT SIZE=3D2>2. = Attempt to recover.</FONT> </P> <P><FONT SIZE=3D2>I'm "insane" to opt for the second?</FONT> </P> <P><FONT SIZE=3D2>-- David Cuny</FONT> </P> </HTML> ------_=_NextPart_001_01BDDC53.1D24F700--