|
From: Richard F. <fa...@be...> - 2016-03-31 17:27:21
|
This is not a problem so much if you are writing in Lisp, where you can define symbols inside an package and explicitly export (or import) particular names, or import whole packages. If you name all your functions with a prefix, e.g. draw_program1 draw_program2 ... you are less likely to have a conflict. This is a kind of do-it-yourself package system. Part of the detraction of a package system is that if you (say) are in package XXX and you look at a program FOO(R,S) in package YYY, then it is displayed as something like YYY:FOO(YYY:R,YYY:S) . And if there is a variable Z returned from package YYY, it will look like YYY:Z unless you do something like importing it. RJF On 3/29/2016 1:26 PM, Robert Dodier wrote: > On 2016-03-26, Roland Salz <ma...@ro...> wrote: > >> My question is: What is known about this kind of interferences? > Such interference is a consequence of Maxima's very weak or nonexistent > notion of scope. Essentially all symbols are in the same namespace, > which means that whether or not two packages conflict with each other is > just a matter of luck. > >> Is there any other practical workaround? > Not really. There are a couple of language features which would help a > lot, namely lexical scope and a namespace system. There has been some > interest in the former lately, and as for the latter, there is the share > package namespaces which attempts to expose the Common Lisp package > (i.e. namespace) system. So there is some hope although not a lot is > happening right now. > > best > > Robert Dodier > > > ------------------------------------------------------------------------------ > Transform Data into Opportunity. > Accelerate data analysis in your applications with > Intel Data Analytics Acceleration Library. > Click to learn more. > http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140 > _______________________________________________ > Maxima-discuss mailing list > Max...@li... > https://lists.sourceforge.net/lists/listinfo/maxima-discuss |