# 12.12 Anonymous Categories¶

The part of a category to the right of a with is also regarded as a category—an anonymous category. Thus you have already seen a category definition category:anonymous in Chapter ugPackages . The Exports part of the package DrawComplex (ugPackagesAbstract ) is an anonymous category. This is not necessary. We could, instead, give this category a name:

DrawComplexCategory(): Category == with
drawComplex: (C -> C,S,S,Boolean) -> VIEW3D
drawComplexVectorField: (C -> C,S,S) -> VIEW3D
setRealSteps: INT -> INT
setImagSteps: INT -> INT
setClipValue: DFLOAT-> DFLOAT


and then define DrawComplex by:

DrawComplex(): DrawComplexCategory == Implementation
where
...


There is no reason, however, to give this list of exports a name since no other domain or package exports it. In fact, it is rare for a package to export a named category. As you will see in the next chapter, however, it is very common for the definition of domains to mention one or more category before the with. with