Pods are the top of Fantom's namespace as well as the unit of deployment. A pod's name is globally unique and is used to organize the top level of Fantom's namespace. In this respect pods serve the purpose of both a Java package and a JAR file (or .NET namespace and DLL).
fantlanThu 12 Jul 2012
hey I always had that question!! I didnt really understand the answer though...
brianThu 12 Jul 2012
What is nice about pods is that they are like JAR files, but a lot better because:
they have well defined metadata and versions
they have well defined dependencies checked at both compile time and runtime
when the pod for a given type is missing, you know exactly what pod it is because types are qualified as "pod::Type"
they bundle all your module's code together and provide notion of "pod internal" access visibility
installation requires nothing more than dropping foo.pod into lib/fan/
you can fully reflect all your pods, their types, and have reflection access to everything very elegantly
rmw Thu 12 Jul 2012
what does it mean "pods are the unit of versioning and deployment"? in what way it provides modularity?
SlimerDude Thu 12 Jul 2012
From docLang::Pods:
fantlan Thu 12 Jul 2012
hey I always had that question!! I didnt really understand the answer though...
brian Thu 12 Jul 2012
What is nice about pods is that they are like JAR files, but a lot better because: