Re: Euphoria 3.2 compatibility
- Posted by CChris <christian.cuvier at ag?icu?ture.gouv.fr> Apr 25, 2008
- 661 views
Jeremy Cowgar wrote: > > Bernie Ryan wrote: > > > > This is what I think should happen. > > Stop adding features on up to 3.2. > > No one is adding to 3.2. 3.2 does not exist. If we wish to release an interim > copy of Euphoria before 4.0, we can easily grab it from SVN before work on the > standard library began, but that would seem to create two rounds of changes? > i.e. new functions are in 3.2 as well. The Changes, if that were done, would > look like: > > ======== > > # Include file names with accent characters now supported. Implemented by C. > Cuvier > > # Comments may now be embedded in data passed to value() in get.e. Implemented > by C. Cuvier > > # Enhanced symbol resolution to take into account information regarding which > files were included by which files. Implemented by Matthew Lewis > > # Namespaces for a source file now can be used for symbols in the specified > file and for global symbols in all files included by the specified file. > Implemented > by Matthew Lewis > > # Added value_from() in get.e to return additional information about the > parsing > activity. Implemented by C. Cuvier > > # Command line arguments for the translator allow for creating binaries with > debugging symbols, and to specify a different runtime library. Implemented by > C. Cuvier Either I'm programming in my dreams using the cortex beta interface by ck lester, or this is an error. I have never dealt with the translator. > > # In trace mode, '?' will show the last defined variable of the requested > name. > Implemented by C. Cuvier > > # New builtin routines: peeks(), peek2s(), peek2u(), peek_string(), poke2() > Implemented by Matthew Lewis > > # Include directories can now be specified based on command line arguments and > config files in addition to environment variables. Implemented by Matthew > Lewis > > # Improved accuracy in scanning numbers in scientific notation. Scanned > numbers > are accurate to the full precision of the IEEE 754 floating point standard. > Implemented by Matthew Lewis > > ======== > > > Start a NEW Version of Euphoria 4.0 and do all the changing you > > want; create new standard libraries but these will only be used > > by 4.0. > > > > This doesn't break any older code in the library if a person uses > > version 3.2. > > Why have the 3.2 interim release would be my question? Are there features > there > that people are dying to have? Why can this not be the 3.1.1 which is now > tried > and tested. If 3.2 were released and people treat it as the last "stable" > release > of Euphoria, it may only have 1 month of actual production usage at the time > 4.0 is released. We as, if the 3.1.1 (current) is the last "stable 3.x" > release, > it already has 8 months of production use. Tried and true. > > > Then after the users get familiar with version 4.0 and iron out the > > bugs. The older archive programs can be gradualy rewritten to > > operate in version 4.0. > > Yes. I can see this. > > > Doing things the way they are now is stupid, people are running around > > to add new features while the other user's are trying to keep older > > code functioning with changes. > > I don't think this is happening? I hope no one is using a SVN trunk copy of > anything for production use? I know some have been testing the new > functionality > in SVN trunk, which is fantastic and is needed. This will make the 1st release > all that better. > > Also, I know it's not testing in the real world, but bear in mind that the new > 4.0 now has over 250 unit tests running that verify the new functions are > working > according to how the author thinks they should work. This is not to say they > are with out bugs, but, it's a great start. Euphoria has never had that before > and I think it's a huge step. Unit testing may or may not have caught the initial find_from() bug. Most bugs found so far in Eu (judging from the release notes) were in the translator and resulted from rare combinaions. I'm not saying unit testing is useless; that's something we have all done when developing a lib, I think, and it's trendy these days. The real bugs neeed more real world examples to show up, and I have no clear idea on how to automate part of their detection. Best thing so far is having as many users of the svn trunk as possible. CChris > > -- > Jeremy Cowgar > <a href="http://jeremy.cowgar.com">http://jeremy.cowgar.com</a>