1. Error messages
- Posted by "Lucius L. Hilley III" <lhilley at CDC.NET> Jan 07, 2000
- 759 views
I have found that the error messages that Euphoria gives are so intuitive that I rarely have to look at the ex.err file. I can't think of any other language that actually generates a error log file for you without you writing the entire debug code yourself. Euphoria's error log is an extensive help in detecting where the problem is in your code by recording the depth of the routines that you where in at the time of the crash and the value of many variables at the time of the crash. Usually the error messages given by Euphoria are enough to make it obvious exactly what error has occurred. But, if they aren't, Please remember the ex.err file. It contains information that will most likely pin point your error very easily. PS: The above statements are not copyrighted and may be shameless used to promote said programming language. Sincerely, Lucius L. Hilley III lhilley at cdc.net +----------+--------------+--------------+ | Hollow | ICQ: 9638898 | AIM: LLHIII | | Horse +--------------+--------------+ | Software | http://www.cdc.net/~lhilley | +----------+-----------------------------+
2. Error messages
- Posted by "Wallace B. Riley" <wryly at MINDSPRING.COM> Oct 02, 1997
- 760 views
Hello again - These questions are for Rob Craig, but anyone who knows the answers can speak up. 1. The reference manual says a sequence is just like any number and can be treated as such. But I sometimes get an error message: "True/false conditions must be an atom." This implies that the line: if {seq1} = {seq2} then (do something) is illegal, and should be changed to something like: if {seq1[1]} = {seq2[1]} and {seq1[2]} = {seq2[2]} and ... That's a real can of worms. What's wrong here? 2. This error message (above) and some others are rather obscure. Is there any place in Euphoria where all error messages are listed and explained? If not, I think there should be. Wally Riley wryly at mindspring.com
3. Re: Error messages
- Posted by "Carl R. White" <crwhite at COMP.BRADX.XAC.UK> Oct 02, 1997
- 746 views
On Thu, 2 Oct 1997, Wallace B. Riley wrote: > Hello again - > > These questions are for Rob Craig, but anyone who knows the answers can > speak up. > > 1. The reference manual says a sequence is just like any number and can > be treated as such. But I sometimes get an error message: "True/false > conditions must be an atom." This implies that the line: > > if {seq1} = {seq2} then (do something) > > is illegal, and should be changed to something like: > > if {seq1[1]} = {seq2[1]} and {seq1[2]} = {seq2[2]} and ... > > That's a real can of worms. What's wrong here? I used to make this mistake all the time, having bee "born and bred" on BASIC. I've found that the common workaraound is to use: if compare(seq1, seq2) = 0 then do_something() end if See library.doc for more info on compare(). > 2. This error message (above) and some others are rather obscure. Is > there any place in Euphoria where all error messages are listed and > explained? If not, I think there should be. IMO, the error messages are mostly non-obscure, but if you're having trouble the ex.err file usually contains more info as to what went wrong (values of variables, etc.). You could also try tracing the program, see trace() in library.doc (again :) ) for more info. The only problem I'm having is when a program runs to over 300 statements, and the Public-Domain edition becomes very unhelpful on errors. I *will* register one day. Honest, guv. :) -- Carl R White | e-mail...: crwhite- at -comp.brad.ac.uk | finger...: crwhite- at -dcsun1.comp.brad.ac.uk | web......: http://www.student.comp.brad.ac.uk/~crwhite/ Anti-Spam: Remove x's from header and change '- at -' to '@' in .sig
4. Re: Error messages
- Posted by "Christopher K. Lester" <cklester at FLASH.NET> Oct 02, 1997
- 756 views
At 02:44 PM 10/2/97 +0100, you wrote: > >The only problem I'm having is when a program runs to over 300 statements, >and the Public-Domain edition becomes very unhelpful on errors. >I *will* register one day. Honest, guv. :) > Hey, no prob! Just send me your e-mail address and I'll e-mail you the registered version, or you can ftp it from my private HaCKerZ SitE. Also, I just completed code on "unshrouding" .exe files. I can now unbind/unshroud any EUPHORIA code. The program is called "Stripper," 'cuz I figure I strip away all the disguises. I've been able to view all the intricacies of Michael Packard's games. It's really interesting some of the algorithm's he incorporates in his games. If anybody wants this program, let me know! The above has been one big joke. Hope I didn't scare you! heheheh :) Back to serious questions: Anybody here using a PowerMac or other Mac, emulating DOS? If so, have you had any issues with EUPHORIA running on your machine? Thanks! ck
5. Re: Error messages
- Posted by Daniel Berstein <danielberstein at USA.NET> Oct 03, 1997
- 740 views
On 2 Oct 97 , Christopher K. Lester wrote: > Hey, no prob! Just send me your e-mail address and I'll e-mail you the > registered version, or you can ftp it from my private HaCKerZ SitE. What!!! > Also, I just completed code on "unshrouding" .exe files. I can now > unbind/unshroud any EUPHORIA code. The program is called "Stripper," 'cuz I > figure I strip away all the disguises. Great!!! > The above has been one big joke. Hope I didn't scare you! heheheh :) Buhhh!!! I like to see some humor around here :) (it's better than flamming) Regards, Daniel Berstein danielberstein at usa.net http://www.geocities.com/SiliconValley/Heights/9316
6. Re: Error messages
- Posted by Daniel Berstein <danielberstein at USA.NET> Oct 03, 1997
- 739 views
On 2 Oct 97 , Carl R. White wrote: > > Hello again - > > > > These questions are for Rob Craig, but anyone who knows the answers can > > speak up. > > > > 1. The reference manual says a sequence is just like any number and can > > be treated as such. But I sometimes get an error message: "True/false > > conditions must be an atom." This implies that the line: > > > > if {seq1} = {seq2} then (do something) > > > > is illegal, and should be changed to something like: > > > > if {seq1[1]} = {seq2[1]} and {seq1[2]} = {seq2[2]} and ... > > > > That's a real can of worms. What's wrong here? > > I used to make this mistake all the time, having bee "born and bred" on > BASIC. I've found that the common workaraound is to use: > > if compare(seq1, seq2) = 0 then > do_something() > end if You must use 'compare', because seq1 = seq2 will evaluate to a SEQUENCE of boolean values (true/false, or 1/0)... example: seq1={1,2,3,4,5} seq2={4,2,3,6,5} print(1,seq1=seq2) Will print {0,1,1,0,1}, because Euphoria test item 1 of seq1 with item 1 of seq2 and then stores as item 1 of resulting sequence the boolean value, this is repeated for every element in the sequence. The if..then/while..do structures require a BOOLEAN (true/false) condition to determine what to do, but we've got a sequence here... that's why we got an error. As you can see, Carl's solution is right... but it's good to know why you can't do it the other way ;) Regards, Daniel Berstein danielberstein at usa.net http://www.geocities.com/SiliconValley/Heights/9316