1. A computer-implemented method for disambiguating natural language meaning, the computer-implemented method comprising: employing a processor to execute computer-readable instructions that, if executed, cause the processor to perform; receiving a natural language input comprising a plurality of symbols; storing a plurality of input nodes in a semantic network, wherein at least one of the plurality of input nodes represents at least one of the plurality of symbols, wherein at least some of the input nodes have polysemy, wherein a plurality of candidate meanings for at least one of the input nodes having polysemy are stored respectively as a plurality of candidate nodes in the semantic network, and wherein the semantic network includes a stored natural language context, the stored natural language context including a plurality of context nodes; identifying a plurality of semantic links, wherein at least one of the plurality of semantic links traverses from at least one of the plurality of candidate nodes to at least one of the plurality of context nodes; computing at least one contextual distance, the at least one contextual distance corresponding to at least one of the plurality of semantic links; comparing at least one of the plurality of contextual distances to determine a contextual distance for at least one of the input nodes having polysemy; selecting at least one of the plurality of candidate nodes for at least one of the input nodes having polysemy, wherein at least one of the selected candidate nodes has an associated contextual distance approximating the contextual distance for the corresponding input node; outputting a contextual meaning corresponding to the natural language input, wherein the contextual meaning comprises at least one of the candidate meanings corresponding to the selected candidate nodes; and storing in the semantic network a semantic inheritance link between at least one of the input nodes having polysemy and the corresponding at least one selected candidate node.