[seqfan] Re: Maple strongly discouraged

Charles Greathouse charles.greathouse at case.edu
Sun Jan 12 22:22:56 CET 2014


I think that marking versions is the first step toward a solution If we had
that and standardized functions names, then it would be possible to
implement a testing framework for programs that would help check for either
programs that are broken or which don't work with new versions of the
program in question.

Charles Greathouse
Analyst/Programmer
Case Western Reserve University


On Sun, Jan 12, 2014 at 1:56 PM, <franktaw at netscape.net> wrote:

> Giving ranges helps, but I don't see any way to deal with the fundamental
> problem: any time a new version of a language appears, you would ideally
> check that all currently working programs in that language be tested, and
> the range extended for those that still work. But this is pretty obviously
> beyond our current power to do, and it is almost certain to remain so. We
> might be able  to institutionalize checking new versions for "core"
> sequences, but that would be about the limit. This means new programs will
> appear with a single version number, and in most cases that will not be
> updated.
>
> Franklin T. Adams-Watters
>
>
> -----Original Message-----
> From: Charles Greathouse <charles.greathouse at case.edu>
> To: Sequence Fanatics Discussion list <seqfan at list.seqfan.eu>
> Sent: Sun, Jan 12, 2014 12:38 pm
> Subject: [seqfan] Re: Maple strongly discouraged
>
>
> I agree with Hasler here, without any particular preference on how that
> should eventually be implemented. Having the programming language
> standardized (and thus machine readable) would allow a lot of things we'll
> want to have like user language preferences and syntax highlighting.
> Versions are important but slightly tricky; ideally you can give ranges.
>
> Charles Greathouse
> Analyst/Programmer
> Case Western Reserve University
>
>
> On Sun, Jan 12, 2014 at 1:31 PM, M. F. Hasler <oeis at hasler.fr> wrote:
>
>  Even though I made that little bit sarcastic & exaggerated remark, I
>>
> don't
>
>> think that Maple should be discouraged and even less that Mathematica
>> should be preferred.
>> It is somehow normal that a language evolves, and maple has in general
>> quite good downward compatibility, the RETURN() function is a
>>
> noticable
>
>> exception. (Did never understand how they came to think about
>>
> "RETURN()"!)
>
>> Other languages, the (younger) PARI included, have the same or worse
>> issues...
>> The name of the programming language should (et least optionally)
>>
> include
>
>> the version, e.g. Maple V, Maple 10, PARI 2.6, PARI 2.6.1..., as I
>>
> already
>
>> suggested earlier (and I even put (PARI 2.6.1) instead of (PARI) in
>>
> some
>
>> submissions but this was not (always(?)) approved....)
>>
>> Even mathematics changes definitions, e.g. for the primes...
>>
>> I we are to make amendments in "code" sections, I'd vote for
>>
> uniformization
>
>> and abolish the privilege of %m and %M tags for Maple and Mmca,
>> and/or find 1-2 more tags for the most popular progamming languages
>> (I think PARI is no more much behind %m and %M)
>> and/or implement a display routine that displays %o lines starting
>>
> with
>
>> (BASIC) or (PHP) or (PARI 2.6) or the like as
>> <tr><td> PARI v. 2.6<td >Axxx = n -> ...</tr>
>> instead of
>> <tr><td> PROGRAM<td >(PARI v. 2.6) Axxx = n -> ...</tr>
>> since the latter is less easy to copy-paste.
>>
>> M.
>>
>>
>> On Sun, Jan 12, 2014 at 2:07 PM, Neil Sloane <njasloane at gmail.com>
>>
> wrote:
>
>>
>> > Dear Seq Fans, Maximilian Hasler has pointed out that
>> > my Maple program in A109671 (which worked correctly in Maple 16)  no
>> > longer gives correct results in Maple 17 because it used the
>>
> RETURN()
>
>> > command.
>> >
>> > The Maple web site says
>> >
>> > "use of the RETURN procedure is strongly discouraged"
>> >
>> > and I can see why - it produces incorrect answers (without any
>>
> warning).
>
>> Of
>> > course I don't see WHY they did this.
>> >
>> > Now there over 1900 Maple lines in the OEIS that use the RETURN
>> statement.
>> >  Maybe these lines need a comment saying:
>> >
>> > # Warning: May give incorrect answers because Maple has changed the
>> meaning
>> > of RETURN. Suggest switching to Mathematica instead.
>> >
>> > (Not sure about the second part)
>> >
>> > I could (and probably will have to) do this with a global edit.
>> > Is there any other solution?  It is unethical for us to include
>>
> programs
>
>> > that give wrong answers.
>> >
>> > Here's the Maple program that works correctly in Maple 16 but gives
>>
> wrong
>
>> > answers  in Maple 17:
>> >
>> > > f:=proc(n) option remember; local t1;
>> >
>> > > if n = 1 then RETURN(1);
>> >
>> > > elif n mod 2 = 0 then RETURN(f(n/2));
>> >
>> > > else t1:= f(n-2)-f((n-1)/2);
>> >
>> > > if t1 > 0 then RETURN(t1) else RETURN(f(n-2)+f((n-1)/2)); fi; fi;
>>
> end;
>
>> >
>> > Neil
>> > --
>> > Dear Friends, I have now retired from AT&T. New coordinates:
>> >
>> > Neil J. A. Sloane, President, OEIS Foundation
>> > 11 South Adelaide Avenue, Highland Park, NJ 08904, USA.
>> > Also Visiting Scientist, Math. Dept., Rutgers University,
>>
> Piscataway, NJ.
>
>> > Phone: 732 828 6098; home page: http://NeilSloane.com
>> > Email: njasloane at gmail.com
>> >
>> > _______________________________________________
>> >
>> > Seqfan Mailing list - http://list.seqfan.eu/
>> >
>>
>>
>>
>> --
>> Maximilian
>>
>> _______________________________________________
>>
>> Seqfan Mailing list - http://list.seqfan.eu/
>>
>>
> _______________________________________________
>
> Seqfan Mailing list - http://list.seqfan.eu/
>
>
> _______________________________________________
>
> Seqfan Mailing list - http://list.seqfan.eu/
>



More information about the SeqFan mailing list