17.2 Code is a tree

  • Abstract syntax tree (AST) - Almost every language represents code as a tree
  • Use lobstr::ast() to inspect these code trees
ast(f1(f2(a, b), f3(1)))
#> █─f1 
#> ├─█─f2 
#> │ ├─a 
#> │ └─b 
#> └─█─f3 
#>   └─1
ast(1 + 2 * 3)
#> █─`+` 
#> ├─1 
#> └─█─`*` 
#>   ├─2 
#>   └─3