1. include std/convert.e
- Posted by buzzo Jun 20, 2013
- 1089 views
Using 4.0.5 and have found conflicts with several includes and the std/convert.e module.
In the following code, the call to atom_to_float64() produces an error if the machine.e line is un-commented... same for dll.e
-- key_for_db.ex include std/os.e --include machine.e -- has a conflict with std/convert.e include misc.e include Win32Lib.ew --include dll.e -- has a conflict with std/convert.e include wildcard.e include gdiplus_Win98,XP.ew include get.e include std/convert.e without warning constant CrLf = { '\r', '\n' } sequence name = "Part" sequence unique_key , delimiter = "." integer l,x atom t = time() atom the_delimiter = '.' unique_key = name & delimiter & atom_to_float64(t) l=length(unique_key) for i = 1 to l do if compare(unique_key[i],the_delimiter)=0 then x=i exit end if end for puts(1, "The entire unique key is ....... " & unique_key & CrLf) puts(1, "The name portion of key is ..... " & unique_key[1..x-1] & CrLf) puts(1, "The unique portion of key is ... " & unique_key[x..l] & CrLf) x=wait_key()
In another program, the call to sleep() produces the same error..
Buzz
2. Re: include std/convert.e
- Posted by mattlewis (admin) Jun 20, 2013
- 1032 views
Using 4.0.5 and have found conflicts with several includes and the std/convert.e module.
In the following code, the call to atom_to_float64() produces an error if the machine.e line is un-commented... same for dll.e
It's a bad idea, firstly, to mix the legacy standard library (e.g., "include machine.e") and the 4.0 standard library. Also, it's not uncommon to have multiple libraries use the same symbol names. You'll need to use namespaces to deconflict. The new standard libraries all have namespaces defined by default, so you can use those or declare your own when you include them.
Matt
4. Re: include std/convert.e
- Posted by mattlewis (admin) Jun 20, 2013
- 1042 views
Are the newer libs in /std ???
Yes.
Matt