loading...

re: ELI5: How does someone write a new computer language? VIEW POST

TOP OF THREAD FULL DISCUSSION
re: Do all compilers transform source code to AST? Are there any languages which omit this step? Let's take python and javascript for example. Their sy...
 
  1. Yes. However, here is where we'd need to go into technical details to define what an AST truly is. There are some languages, potentially, where the parse directly results in a usable tree. There are also stream languages where no complete tree is ever created. But there's no avoiding the concept of the AST ever -- the compiler/VM/interpreter needs to understand the source.

  2. The ASTs have similar features, but are different depending on the compiler and language. When I talked about "lowering", it is possible, and quite common, to lower from the AST to another language. Not all languages support enough of the source language to be viable. Others require essentially writing a complete VM in them to do the compilation.

Code of Conduct Report abuse