     @classParams = newMap()
     @types = []
     @isMalformed = no
+    @importedModules = newSet()
     @_requested = newMap()
 
   req: (moduleName, names) ->
     addToMap @_requested, moduleName, names
+    if not inSet @importedModules, moduleName
+      @_requesting = yes
 
   requested: ->
     if @_requested.size > 0
       @_requested
+
+  isRequesting: ->
+    @_requesting
 
   markMalformed: ->
     @isMalformed = yes

      jsNoop()

findDefinitionsIncludingDeps = (ctx, names) ->
  # console.log names, ((findDeps ctx) names), (setToArray ((findDeps ctx) names)), (lookupInMap ctx.auxiliaries(), 'lines').deps if 'lines' in names
  findDefinitions ctx, setToArray (findDeps ctx) names

findDefinitions = (ctx, names) ->
  auxiliaries = ctx.auxiliaries()


# Utils

unique = (list) ->
  setToArray arrayToSet list

join = (seq1, seq2) ->
  seq1.concat seq2

