1. A method for extracting type information from a dynamically-typed programming language, the method comprising: generating a plurality of nodes, the nodes generated by a parser, wherein each of the plurality of nodes comprise an abstract syntax tree node associated with a symbol in a runtime environment, wherein a symbol has a different type information at a different position in a source code; requesting type information from the dynamically-typed programming language based on a particular symbol and a position, the type information requested by an integrated development environment; locating the particular symbol at the position in the runtime environment; and returning a value associated with the particular symbol at the position to be read by a processor, the particular symbol at the position used to retrieve information about an underlying object being queried.
1. A method for extracting type information from a dynamically-typed programming language, the method comprising: generating a plurality of nodes, the nodes generated by a parser, wherein each of the plurality of nodes comprise an abstract syntax tree node associated with a symbol in a runtime environment, wherein a symbol has a different type information at a different position in a source code; requesting type information from the dynamically-typed programming language based on a particular symbol and a position, the type information requested by an integrated development environment; locating the particular symbol at the position in the runtime environment; and returning a value associated with the particular symbol at the position to be read by a processor, the particular symbol at the position used to retrieve information about an underlying object being queried. 4. The method of claim 1 , further including storing information for each occurrence of a symbol and inferring a type for each occurrence of the symbol.