[Converge]
About - Documentation - Download - Links

convergep

convergep is a simple tool which reads in a Converge file and pretty-prints its parse tree. This can be useful when performing compile-time meta-programming to see the structure of an input file. An example execution is as follows:
$ convergep hello.cv
top_level
  -> defn
    -> import
      -> 
      -> import_name
        -> 
      -> import_as
  -> 
  -> defn
    -> func_defn
      -> func_type
        -> 
      -> func_name
        -> 
      -> <(>
      -> func_params
      -> <)>
      -> <:>
      -> 
      -> func_decls
      -> expr_body
        -> expr
          -> application
            -> expr
              -> module_lookup
                -> name
                  -> 
                -> <::>
                -> name
                  -> 
            -> <(>
            -> expr
              -> string
                -> 
            -> <)>
      -> 
$