LEXER_MLL = $(filter %.mll, $(SOURCES))
 MIDDLE_ML = $(PARSER_MLY:.mly=.ml) $(LEXER_MLL:.mll=.ml)
 
+preprocessor::
+       echo "Compling preprocessor..."
+       cd $(FAUST_PATH) && $(MAKE)
+
 $(EXEC): $(OBJS) $(COBJS) $(CLIBS)
        $(CAMLC) $(CAMLC_OPTIONS) -o $(EXEC) $(OBJS) $(COBJS) $(CLIBS)
 
 $(EXEC).opt: $(OPTOBJS) $(COBJS) $(CLIBS)
        $(CAMLOPT) $(CAMLOPT_OPTIONS) -o $(EXEC) $(OPTOBJS) $(COBJS) $(CLIBS)
 
-$(CLIBS):
-       @(cd $(FAUST_PATH) && $(MAKE))
-
 document: $(SMLYL) $(OBJS)
        $(CAMLDOC) $(CAMLDOC_OPTIONS) $(SMLYL)
 
 
 
 class type signal_type = 
     object
-      method frequency : rate_type
+      method frequency : int
       method at : time -> value_type
       method add_memory : int -> unit
       method add : signal_type -> signal_type