1. true/false atoms?

Hi all,
I am having a dense week here, and i don't understand something. I am trying
to stop writing code that uses "goto"s.... porting some pascal to Eu.. So
this code gives me an error:

datafound is an object set to "false".
data and datatofind are sequences, datatofind is a legit sequence.
dctstrfile is set to 3 by a previous "open" function at this point.

while  datafound = "false"  or  data != -1  do
       data = gets(dctstrfile)
       if ( find(datatofind,data) != 0 )
        then datafound = "true"
       end if
    end while

Error: true/false condition must be an atom.

Data can't be an atom, because i am reading strings into it, and when i made
datafound into an atom, i couldn't set it to "false". I also tried putting
the two boolean tests in parentheses, and got the same error. I like
parentheses as much as i like "goto".  A "goto EndOfProc" or "goto
GetTheRestOfTheData" in the read loop would eliminate several boolean tests
after this code loop and several levels of nested "if"s.

I am using win95, with
the code as a text icon on the desktop, with a shortcut to Exw below it, to
run the program, i just drag the text icon to the Exw icon. Is that fully
ok?

Thanks,
Kat

new topic     » topic index » view message » categorize

2. Re: true/false atoms?

Kat wrote:

>while  datafound = "false"  or  data != -1  do

The '=' operator can't be used here. Try instead:

    while equal( datafound, "false" ) or data != -1 do

or (ick):

    while compare( datafound, "false" ) = 0 or data != -1 do

or (shudder):

    while not compare( datafound, "false" ) or data != -1 do

Thanks again, Rob, for adding the 'equal' function!

-- David Cuny

new topic     » goto parent     » topic index » view message » categorize

3. Re: true/false atoms?

> >while  datafound = "false"  or  data != -1  do
>
> The '=' operator can't be used here. Try instead:
>
>     while equal( datafound, "false" ) or data != -1 do

While this solves the first "Error: true/false condition must be an atom",
the second test "data != -1" will cause the same error.  You must declare
data as an "object" because the gets function will return -1 when it
reaches end-of-file.  "But that's I'm testing for!!!" you say, but
remember all the while data will be a sequence of text read from the
file... for instance say data holds {1,1,2,3,5,8}.  The result of "data !=
-1" will be "{1,1,2,3,5,8} != -1" whose result is the same as "{1 != -1, 1
!= -1, 2 != -1, 3 != -1, 5 != -1, 8 != -1}" or "{1,1,1,1,1,1}".  When an
sequence is applied to an atom using an arithmetic operator, the atom is
applied to each element of the sequence.  So the result is still a
sequence and the "true/false condition must be an atom" error will be
reported.

The solution: declare data as an object and use the sequence() function to
test data to make sure it is a sequence.

  while equal( datafound, "false" ) or sequence( data ) do

Since the only time gets() returns an atom is when it returns -1, it is
safe to use the sequence() test to check for end-of-file.

Later,
 _______  ______  _______  ______
[    _  \[    _ ][ _   _ ][    _ ]
[/| [_] |[/| [_\][/ | | \][/| [_\]
  |  ___/  |  _]    | |     |  _]
[\| [/]  [\| [_/] [\| |/] [\| [_/]
[_____]  [______] [_____] [______]
xseal at harborside.com  ICQ:13466657
http://www.harborside.com/home/x/xseal/euphoria/

new topic     » goto parent     » topic index » view message » categorize

4. Re: true/false atoms?

----- Original Message -----
From: Pete Eberlein <xseal at HARBORSIDE.COM>
To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
Sent: Thursday, August 12, 1999 1:50 AM
Subject: Re: true/false atoms?


> > >while  datafound = "false"  or  data != -1  do
> >
> > The '=' operator can't be used here. Try instead:
> >
> >     while equal( datafound, "false" ) or data != -1 do
>
> While this solves the first "Error: true/false condition must be an atom",
> the second test "data != -1" will cause the same error.  You must declare
> data as an "object" because the gets function will return -1 when it
> reaches end-of-file.  "But that's I'm testing for!!!" you say, but
> remember all the while data will be a sequence of text read from the
> file... for instance say data holds {1,1,2,3,5,8}.  The result of "data !=
> -1" will be "{1,1,2,3,5,8} != -1" whose result is the same as "{1 != -1, 1
> != -1, 2 != -1, 3 != -1, 5 != -1, 8 != -1}" or "{1,1,1,1,1,1}".  When an
> sequence is applied to an atom using an arithmetic operator, the atom is
> applied to each element of the sequence.  So the result is still a
> sequence and the "true/false condition must be an atom" error will be
> reported.
>
> The solution: declare data as an object and use the sequence() function to
> test data to make sure it is a sequence.
>
>   while equal( datafound, "false" ) or sequence( data ) do
>
> Since the only time gets() returns an atom is when it returns -1, it is
> safe to use the sequence() test to check for end-of-file.

The newer code, with David's and Pete's code:

while equal( datafound, "false" ) or sequence( data ) do
       data = gets(dctstrfile)
       if ( find(datatofind,data) != 0 )
        then datafound = "true"
       end if
    end while

It still faults at the find() when data is set to -1 ( which i must say,
happens extremely fast compared to the pascal compiled code! ) , so i must
set yet another if test....

while equal( datafound, "false" ) or sequence( data ) do
       data = gets(dctstrfile)
       if sequence(data) and ( find(datatofind,data) != 0 )
        then datafound = "true"
       end if
    end while

Now it misses the end of file, and keeps on running, doing nothing..... no
errors, nothing, it never leaves the while loop. I put a printf, gets , and
abort after the while, to see if it was leaving the while loop,, and the
printf never is hit,, so i told it to print out the file in the while loop,
it got to the end of the file and printed blank lines. I had opened the file
as "rb" (i have non-char tokens in it) , and changed it to "r", to no
effect.

Any ideas? Please?

Kat

new topic     » goto parent     » topic index » view message » categorize

5. Re: true/false atoms?

Pete Eberlein wrote:

>While this solves the first "Error: true/false
> condition must be an atom", the second test
> "data != -1" will cause the same error

Nice save. I should learn to actually read these things all the way through
before replying to them. smile

-- David Cuny

new topic     » goto parent     » topic index » view message » categorize

6. Re: true/false atoms?

On Thu, 12 Aug 1999, you wrote:
> Hi all,
> I am having a dense week here, and i don't understand something. I am trying
> to stop writing code that uses "goto"s.... porting some pascal to Eu.. So
> this code gives me an error:
>
> datafound is an object set to "false".
> data and datatofind are sequences, datatofind is a legit sequence.
> dctstrfile is set to 3 by a previous "open" function at this point.
>
> while  datafound = "false"  or  data != -1  do
>        data = gets(dctstrfile)
>        if ( find(datatofind,data) != 0 )
>         then datafound = "true"
>        end if
>     end while

I would write it like this:
object data
integer found
           found = 0

-- open the file
while 1 do
 data = gets(dctstrfile)
 if atom(data) then exit -- EOF
 elsif find(datatofind,data) > 0 then
        found = 1
        exit
  end if
end while

It's a real waste (and poor programming practice)  to use "strings" as boolean
values. If you want to print the results later, it's faster and easier to do it
like this:

if found = 1 then puts(1,"found the data")
else puts(1,"couldn't find anything here!")
end if

Irv

new topic     » goto parent     » topic index » view message » categorize

7. Re: true/false atoms?

----- Original Message -----
From: Irv Mullins <irv at ELLIJAY.COM>
To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
Sent: Thursday, August 12, 1999 8:06 AM
Subject: Re: true/false atoms?



> It's a real waste (and poor programming practice)  to use "strings" as
boolean
> values.

Ok, how do *you* do a flag in eu that can be 5 values when you are protyping
in a new language and are stressing easy readability over speed and
compactness?

Kat

new topic     » goto parent     » topic index » view message » categorize

8. Re: true/false atoms?

Kat wrote:
>> It's a real waste (and poor programming practice)  to use "strings" as
>boolean
>> values.
>
>Ok, how do *you* do a flag in eu that can be 5 values when you are protyping
>in a new language and are stressing easy readability over speed and
>compactness?

Well, here's the way I would do it:

    -- the set of values for my special user-defined type
   constant FALSE   = 0
   constant TRUE    = 1
   constant SPECIAL = 2
   constant ERROR   = 3
   constant OTHER   = 4

    -- this type declaration isn't necessary, but if you prefer
    -- tighter error checking, this helps
   type MyType (object x)
      if (integer (x)) then
         if (x <= FALSE) and (x >= OTHER) then
            return 1
         end if
      end if
      return 0
   end type

   MyType Flag -- or, just "integer Flag" works

   if (Flag = ERROR) then

    ...and so on...

Key rule when converting user-defined types from a language like
Pascal: use integer constants. Works exactly the same, and is just
as readable. Most Euphoria programs, at the very least, define
FALSE and TRUE to be 0 and 1.


Rod

new topic     » goto parent     » topic index » view message » categorize

9. Re: true/false atoms?

On Thu, 12 Aug 1999, you wrote:
> ----- Original Message -----
> From: Irv Mullins <irv at ELLIJAY.COM>
> To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
> Sent: Thursday, August 12, 1999 8:06 AM
> Subject: Re: true/false atoms?

> > It's a real waste (and poor programming practice)  to use "strings" as
> boolean values.
>
> Ok, how do *you* do a flag in eu that can be 5 values when you are protyping
> in a new language and are stressing easy readability over speed and
> compactness?

constants

Irv

new topic     » goto parent     » topic index » view message » categorize

10. Re: true/false atoms?

----- Original Message -----
From: Roderick Jackson <rjackson at CSIWEB.COM>
To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
Sent: Thursday, August 12, 1999 3:04 PM
Subject: Re: true/false atoms?


> Kat wrote:
> >> It's a real waste (and poor programming practice)  to use "strings" as
> >boolean
> >> values.
> >
> >Ok, how do *you* do a flag in eu that can be 5 values when you are
protyping
> >in a new language and are stressing easy readability over speed and
> >compactness?
>
> Well, here's the way I would do it:
>
>     -- the set of values for my special user-defined type
>    constant FALSE   = 0
>    constant TRUE    = 1
>    constant SPECIAL = 2
>    constant ERROR   = 3
>    constant OTHER   = 4
>
>     -- this type declaration isn't necessary, but if you prefer
>     -- tighter error checking, this helps
>    type MyType (object x)
>       if (integer (x)) then
>          if (x <= FALSE) and (x >= OTHER) then
>             return 1
>          end if
>       end if
>       return 0
>    end type
>
>    MyType Flag -- or, just "integer Flag" works
>
>    if (Flag = ERROR) then
>
>     ...and so on...
>
> Key rule when converting user-defined types from a language like
> Pascal: use integer constants. Works exactly the same, and is just
> as readable. Most Euphoria programs, at the very least, define
> FALSE and TRUE to be 0 and 1.

Ok, all that's nice, but all that stuff is just why i was trying out
Euphoria, to get away from restrictions in pascal, etc. I have written more
code than actual program to do type translations, mapping one var on top of
another and other tricks so i could use the var how i wanted to, making sure
if i deallocated the one var that all those others mapped onto it were also
not used again, etc etc. I figure the puter is here to make my life easier
and do what i want, it's not here so i can learn new programming methods or
tricks and put restrictions on what i can do. If i want to have the flag
accessed by another program or passed to another procedure/function, strings
(or sequences) are the least likely to trigger a type error (just type
everything as a string(oops, sequence)) , and i can set them to anything,
and parse what i want out of them as needed. Of course, the parsing was
easier in pascal with the goto or case statements (when the case statement
didn't choke on a type error, anyhow). With faster processors than the 6502
and memory cheaper than the $125 i once paid for 64K, i am not so concerned
about waste anymore,, once the program runs like i want it to, the "proof of
concept" is done, i'll optimise it for *speed* more than anything else.

Kat
noting that everything she does to get around compiler deficits is poor
programming practice.

new topic     » goto parent     » topic index » view message » categorize

11. Re: true/false atoms?

On Thu, 12 Aug 1999, you wrote:
>
> Kat
> noting that everything she does to get around compiler deficits is poor
> programming practice.

I know what you mean. I bought a new power saw from Sears, and it just won't
drive nails worth a darn.  Poor design, I think.

Irv

new topic     » goto parent     » topic index » view message » categorize

12. Re: true/false atoms?

The problem here is Euphoria can't use the >, <, =, or != operators on
sequences. You must either,

A. Change the code to use TRUE and FALSE numberic constants, or
B. Use equal() on your string.

new topic     » goto parent     » topic index » view message » categorize

13. Re: true/false atoms?

On Thu, 12 Aug 1999 19:50:39 -0400, Irv Mullins <irv at ELLIJAY.COM> wrote:

>I know what you mean. I bought a new power saw from Sears, and it just
won't
>drive nails worth a darn.  Poor design, I think.
>
>Irv

Irv are you sure that you're not using bent nails.

new topic     » goto parent     » topic index » view message » categorize

14. Re: true/false atoms?

On Thu, 12 Aug 1999, you wrote:
> On Thu, 12 Aug 1999 19:50:39 -0400, Irv Mullins <irv at ELLIJAY.COM> wrote:
>
> >I know what you mean. I bought a new power saw from Sears, and it just
> won't
> >drive nails worth a darn.  Poor design, I think.
> >
> >Irv
>
> Irv are you sure that you're not using bent nails.

It says "circular saw" on the box. Don't the nails need to be bent into circles?

Irv

new topic     » goto parent     » topic index » view message » categorize

15. Re: true/false atoms?

What follows is my coding preference.


data = gets(dctstrfile)
while equal( datafound, "false" ) or sequence( data ) do
  if ( find(datatofind,data) != 0 ) then
    datafound = "true"
  end if
  data = gets(dctstrfile)
end while


        Lucius L. Hilley III
        lhilley at cdc.net   lucius at ComputerCafeUSA.com
+----------+--------------+--------------+----------+
| Hollow   | ICQ: 9638898 | AIM: LLHIII  | Computer |
|  Horse   +--------------+--------------+  Cafe'   |
| Software | http://www.cdc.net/~lhilley |  USA     |
+----------+-------+---------------------+----------+
                   | http://www.ComputerCafeUSA.com |
                   +--------------------------------+

new topic     » goto parent     » topic index » view message » categorize

16. Re: true/false atoms?

----- Original Message -----
From: Irv Mullins <irv at ELLIJAY.COM>
To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
Sent: Thursday, August 12, 1999 6:50 PM
Subject: Re: true/false atoms?


> On Thu, 12 Aug 1999, you wrote:
> >
> > Kat
> > noting that everything she does to get around compiler deficits is poor
> > programming practice.
>
> I know what you mean. I bought a new power saw from Sears, and it just
won't
> drive nails worth a darn.  Poor design, I think.

Prolly so, lol! Maybe if you had the source code to the saw, you could
rebuild it? lol.

Kat

new topic     » goto parent     » topic index » view message » categorize

17. Re: true/false atoms?

----- Original Message -----
From: Irv Mullins <irv at ELLIJAY.COM>
To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
Sent: Thursday, August 12, 1999 8:53 PM
Subject: Re: true/false atoms?


> On Thu, 12 Aug 1999, you wrote:
> > On Thu, 12 Aug 1999 19:50:39 -0400, Irv Mullins <irv at ELLIJAY.COM> wrote:
> >
> > >I know what you mean. I bought a new power saw from Sears, and it just
> > won't
> > >drive nails worth a darn.  Poor design, I think.
> > >
> > >Irv
> >
> > Irv are you sure that you're not using bent nails.
>
> It says "circular saw" on the box. Don't the nails need to be bent into
circles?

No, that refers to the boards.

Kat

new topic     » goto parent     » topic index » view message » categorize

18. Re: true/false atoms?

Ok, for those of you following my foray into Eu, i did get this to finally
work properly, and i am still amazed by the speed, even running it in a dos
box in win95:

while 1 do
       data = gets(dctstrfile)
       if sequence(data) then
        if ( match(datatofind,data) != 0 ) then
         datafound = "true"
         printf(1,"%s\n", {data} )
         exit
        end if
       else exit
       end if
    end while

Thanks for all your helps,
Kat

new topic     » goto parent     » topic index » view message » categorize

19. Re: true/false atoms?

Kat wrote:

>Ok, all that's nice, but all that stuff is just why i was trying out
>Euphoria, to get away from restrictions in pascal, etc. I have written more
>code than actual program to do type translations, mapping one var on top of
>another and other tricks so i could use the var how i wanted to, making sure
>if i deallocated the one var that all those others mapped onto it were also
>not used again, etc etc. I figure the puter is here to make my life easier
>and do what i want, it's not here so i can learn new programming methods or
>tricks and put restrictions on what i can do. If i want to have the flag
>accessed by another program or passed to another procedure/function, strings
>(or sequences) are the least likely to trigger a type error (just type
>everything as a string(oops, sequence)) , and i can set them to anything,
>and parse what i want out of them as needed.

If that's what you're looking for, why not just use the "object" type?
Define all of your parameters and variables as type object, then you
can send in strings, integers, or anything else you want. You would
really have no trouble defining every routine in your program like:

   function TheFunction (object Param)

      object RetValue

      -- use Param anyway you want...

      return RetObject

   end function

A single parameter of type object, that can be anything you want... an
integer, a sequence of several values, a string expression, etc. Then
just leave out all type declarations, and you're pretty close to a
typeless program. You'll still need specific types for a lot of Euphoria
functions, but many of them work just as well on sequences as on atoms.


Rod

new topic     » goto parent     » topic index » view message » categorize

20. Re: true/false atoms?

You wrote--
"I am trying to stop writing code that uses 'goto'...."

Hang in there.  I never understood why spaghetti code with 'goto' was
bad while macaroni code with recursion was ok.

The students who ingored their professors on this went on to become
programmers with Intel, IBM, and Sun, where the base languages all
have goto (jmp) instructions.

I don't think it's the vocabulary that makes code hard to maintain--
it's the 'features' such as object-orientation that demand wordiness
and encourage code bloat.

new topic     » goto parent     » topic index » view message » categorize

21. Re: true/false atoms?

--------------2027F04DCF1AF9F80DF020AA

COULD SOMEONE PLEASE FIX THE E-MAIL ADDRESS. ALL THESE MESSAGES ARE COMING TO
GRAFTON CITY LIBRARY !!!!! WE HAVE HUNDREDS OF MESSAGES!!!!!!!!!
THANKS - I HOPE


Kat wrote:

> ----- Original Message -----
> From: Roderick Jackson <rjackson at CSIWEB.COM>
> To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
> Sent: Thursday, August 12, 1999 3:04 PM
> Subject: Re: true/false atoms?
>
> > Kat wrote:
> > >> It's a real waste (and poor programming practice)  to use "strings" as
> > >boolean
> > >> values.
> > >
> > >Ok, how do *you* do a flag in eu that can be 5 values when you are
> protyping
> > >in a new language and are stressing easy readability over speed and
> > >compactness?
> >
> > Well, here's the way I would do it:
> >
> >     -- the set of values for my special user-defined type
> >    constant FALSE   = 0
> >    constant TRUE    = 1
> >    constant SPECIAL = 2
> >    constant ERROR   = 3
> >    constant OTHER   = 4
> >
> >     -- this type declaration isn't necessary, but if you prefer
> >     -- tighter error checking, this helps
> >    type MyType (object x)
> >       if (integer (x)) then
> >          if (x <= FALSE) and (x >= OTHER) then
> >             return 1
> >          end if
> >       end if
> >       return 0
> >    end type
> >
> >    MyType Flag -- or, just "integer Flag" works
> >
> >    if (Flag = ERROR) then
> >
> >     ...and so on...
> >
> > Key rule when converting user-defined types from a language like
> > Pascal: use integer constants. Works exactly the same, and is just
> > as readable. Most Euphoria programs, at the very least, define
> > FALSE and TRUE to be 0 and 1.
>
> Ok, all that's nice, but all that stuff is just why i was trying out
> Euphoria, to get away from restrictions in pascal, etc. I have written more
> code than actual program to do type translations, mapping one var on top of
> another and other tricks so i could use the var how i wanted to, making sure
> if i deallocated the one var that all those others mapped onto it were also
> not used again, etc etc. I figure the puter is here to make my life easier
> and do what i want, it's not here so i can learn new programming methods or
> tricks and put restrictions on what i can do. If i want to have the flag
> accessed by another program or passed to another procedure/function, strings
> (or sequences) are the least likely to trigger a type error (just type
> everything as a string(oops, sequence)) , and i can set them to anything,
> and parse what i want out of them as needed. Of course, the parsing was
> easier in pascal with the goto or case statements (when the case statement
> didn't choke on a type error, anyhow). With faster processors than the 6502
> and memory cheaper than the $125 i once paid for 64K, i am not so concerned
> about waste anymore,, once the program runs like i want it to, the "proof of
> concept" is done, i'll optimise it for *speed* more than anything else.
>
> Kat
> noting that everything she does to get around compiler deficits is poor
> programming practice.

--------------2027F04DCF1AF9F80DF020AA

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<B>COULD SOMEONE PLEASE FIX THE E-MAIL ADDRESS. ALL THESE MESSAGES ARE
COMING TO GRAFTON CITY LIBRARY !!!!! WE HAVE HUNDREDS OF MESSAGES!!!!!!!!!</B>
<BR><B>THANKS - I HOPE</B>
<BR><B></B>&nbsp;<B></B>
<P>Kat wrote:
<BLOCKQUOTE TYPE=CITE>----- Original Message -----
<BR>From: Roderick Jackson &lt;rjackson at CSIWEB.COM>
<BR>To: &lt;EUPHORIA at LISTSERV.MUOHIO.EDU>
<BR>Sent: Thursday, August 12, 1999 3:04 PM
<BR>Subject: Re: true/false atoms?
<P>> Kat wrote:
<BR>> >> It's a real waste (and poor programming practice)&nbsp; to use
"strings" as
<BR>> >boolean
<BR>> >> values.
<BR>> >
<BR>> >Ok, how do *you* do a flag in eu that can be 5 values when you are
<BR>protyping
<BR>> >in a new language and are stressing easy readability over speed
and
<BR>> >compactness?
<BR>>
<BR>> Well, here's the way I would do it:
<BR>>
<BR>>&nbsp;&nbsp;&nbsp;&nbsp; -- the set of values for my special user-defined
type
<BR>>&nbsp;&nbsp;&nbsp; constant FALSE&nbsp;&nbsp; = 0
<BR>>&nbsp;&nbsp;&nbsp; constant TRUE&nbsp;&nbsp;&nbsp; = 1
<BR>>&nbsp;&nbsp;&nbsp; constant SPECIAL = 2
<BR>>&nbsp;&nbsp;&nbsp; constant ERROR&nbsp;&nbsp; = 3
<BR>>&nbsp;&nbsp;&nbsp; constant OTHER&nbsp;&nbsp; = 4
<BR>>
<BR>>&nbsp;&nbsp;&nbsp;&nbsp; -- this type declaration isn't necessary,
but if you prefer
<BR>>&nbsp;&nbsp;&nbsp;&nbsp; -- tighter error checking, this helps
<BR>>&nbsp;&nbsp;&nbsp; type MyType (object x)
<BR>>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (integer (x)) then
<BR>>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (x &lt;=
FALSE) and (x >= OTHER) then
return 1
<BR>>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end if
<BR>>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end if
<BR>>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0
<BR>>&nbsp;&nbsp;&nbsp; end type
<BR>>
<BR>>&nbsp;&nbsp;&nbsp; MyType Flag -- or, just "integer Flag" works
<BR>>
<BR>>&nbsp;&nbsp;&nbsp; if (Flag = ERROR) then
<BR>>
<BR>>&nbsp;&nbsp;&nbsp;&nbsp; ...and so on...
<BR>>
<BR>> Key rule when converting user-defined types from a language like
<BR>> Pascal: use integer constants. Works exactly the same, and is just
<BR>> as readable. Most Euphoria programs, at the very least, define
<BR>> FALSE and TRUE to be 0 and 1.
<P>Ok, all that's nice, but all that stuff is just why i was trying out
<BR>Euphoria, to get away from restrictions in pascal, etc. I have written
more
<BR>code than actual program to do type translations, mapping one var on
top of
<BR>another and other tricks so i could use the var how i wanted to, making
sure
<BR>if i deallocated the one var that all those others mapped onto it were
also
<BR>not used again, etc etc. I figure the puter is here to make my life
easier
<BR>and do what i want, it's not here so i can learn new programming methods
or
<BR>tricks and put restrictions on what i can do. If i want to have the
flag
<BR>accessed by another program or passed to another procedure/function,
strings
<BR>(or sequences) are the least likely to trigger a type error (just type
<BR>everything as a string(oops, sequence)) , and i can set them to anything,
<BR>and parse what i want out of them as needed. Of course, the parsing
was
<BR>easier in pascal with the goto or case statements (when the case statement
<BR>didn't choke on a type error, anyhow). With faster processors than
the 6502
<BR>and memory cheaper than the $125 i once paid for 64K, i am not so concerned
<BR>about waste anymore,, once the program runs like i want it to, the
"proof of
<BR>concept" is done, i'll optimise it for *speed* more than anything else.
<P>Kat
<BR>noting that everything she does to get around compiler deficits is
poor
<BR>programming practice.</BLOCKQUOTE>
</HTML>

--------------2027F04DCF1AF9F80DF020AA--

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu