pods
SlimerDude
12 Jul 2012
From docLang::Pods:
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).
fantlan
12 Jul 2012
hey I always had that question!! I didnt really understand the answer though...
brian
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
- there is no classpath hell
rmw
12 Jul 2012
what does it mean "pods are the unit of versioning and deployment"? in what way it provides modularity?