Ralf Hemmecke <r...@hemmecke.de> writes: | > This should be an FAQ because we have discussed it several times :-) | > | > The short answer is that, in all flavours of AXIOM, if you assign to Rep | > then you are asking for implicit coercions between % and Rep -- and that | > can lead to unfunny situations as above. | > | > The proper way is to define Rep as a constant, i.e. Rep == X. | | Oh, I thought, that just OpenAxiom changed it to using "Rep==X". If I | understood correctly, in FriCAS "==" does not mean constant definition | but rather "delayed assignment".
We are talking about the compiler. In all flavours of AXIOM, if you have a toplevel or capsule-level definition of the form xyz == expr and xyz does not have a modemap or a local type declaration, then that is interpreted as a local constant implemented as a macro. See isMacro and how it is used in doIt. OpenAxiom went further and added special support when xyz is Rep. -- Gaby ------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ open-axiom-devel mailing list open-axiom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/open-axiom-devel