# scf
#### 介绍
-一个完全自己编写的编译器框架
+一个完全自己编写的编译器框架,
+a Simple Compiler Framework written by me completely.
+
+I don't usually goto github, docs here is the standard one:(
#### 软件架构
-软件架构说明
+太复杂了,建议看我的头条号的文章
+too complex, please see my article in TouTiao.
+
+#### 安装教程, usage
+
+1. 用git下载到本机,命令为:
+git clone https://gitee.com/BaseWorks/scf.git
+download it with git, command above.
-#### 安装教程
+2. 在scf/parse目录下直接执行make,即可获得编译器的可执行文件scf,命令为:
+cd scf/parse
+make
-1. 用git下载到本机,
-2. 在scf/parse目录下直接执行make,获得编译器的可执行文件scf,
+in directory scf/parse run make, then get the executable file named 'scf'.
3. 写一段示例代码,例如:
int printf(const char* fmt);
}
保存为文件hello.c,
-4,然后用scf编译它,命令为:scf hello.c
-即可获得编译后的可执行文件,默认文件名是1.out
+write a code like above, and save it as 'hello.c'.
+
+4,然后用scf编译它, 即可获得可执行文件(默认文件名是1.out), 命令为:
+scf hello.c
+
+compile it with scf, then get the executable file '1.out' of your code.
-5,给它加上可执行权限:chmod +x 1.out
+5,给它加上可执行权限:
+chmod +x 1.out
-6,执行它:./1.out
-即可看到打印的"hello world"
+give 1.out executable priority.
-7,源代码的扩展名建议用.c,虽然编译器只会把它当成文本文件,但.c在大多数"编辑器"里都有"语法提示"。
+6,然后执行它:
+./1.out
+即可看到打印的"hello world".
+
+run it, and can see the words "hello world" in shell.
+
+7,源代码的扩展名建议用.c,虽然编译器会把.o,.a,.so之外的"任何文件"都当成源码的文本文件,但.c在大多数"编辑器"里都有"语法提示"。
+
+the extended name of source code should be .c,
+though every name except .o,.a,.so will be considered as the source code,
+but .c is supported by all editors in syntax high-lighting.
8,scf对源文件扩展名的检测在main.c里,你可以把第66行的.c改成任何你想要的扩展名:( 但不能是.a,.so,.o.
+scf checks the extended name in Line 66 of main.c, you can revise to 'any' you want, except .a,.so,.o.
+
+9,details in the code, details show you:(
+细节在源码里,可以给你看:(
#### 参与贡献