\starttext

\startMPextensions
    color ColorOne   ; ColorOne   := red ;
    color ColorTwo   ; ColorTwo   := green ;
    color ColorThree ; ColorThree := blue ;
\stopMPextensions

\startMPextensions{doublefun}
    color ColorThree ; ColorThree := \MPcolor{magenta} ;
\stopMPextensions

\startMPinclusions
    def DoWhatever = draw textext("N") ; enddef ;
\stopMPinclusions

\startMPinclusions
    def DoWhatever = draw textext("Y") ; enddef ;
\stopMPinclusions

\startMPinclusions{doublefun}
    def DoWhatever = draw textext("Y") ; enddef ;
\stopMPinclusions

\startMPinclusions[+]{doublefun}
    def DoWhatever = draw textext("YY") ; enddef ;
\stopMPinclusions

\startMPcode{metafun}
    draw fullcircle scaled 1cm withcolor ColorOne   withpen pencircle scaled 1mm ;
    draw fullcircle scaled 2cm withcolor ColorTwo   withpen pencircle scaled 1mm ;
    draw fullcircle scaled 3cm withcolor ColorThree withpen pencircle scaled 1mm ;
    DoWhatever ;
\stopMPcode

\startMPcode{doublefun}
    draw fullcircle scaled 1cm withcolor ColorOne   withpen pencircle scaled 1mm ;
    draw fullcircle scaled 2cm withcolor ColorTwo   withpen pencircle scaled 1mm ;
    draw fullcircle scaled 3cm withcolor ColorThree withpen pencircle scaled 1mm ;
    DoWhatever ;
\stopMPcode

\stoptext
