SSAINGO

关于源码到语法树的部分编译在 这里编译阶段 src/cmd/compile/internal/gc/main.go 中 存有如下一段代码initssaconfig()// Just before compilation, compile itabs found on// the right side


Static Single Assignment Form

Static Single Assignment Form静态单一分配形式,每个变量只赋值一次intermediate representation(IR): 中间代码表示作用常数传播(constant propagation)值域传播(value range propagation)稀疏有条件的常


Abstract SyntaxCode

抽象语法树 AST将代码进行词法分析语法分析后变成树结构以便于生成中间代码的环节如图所示,该树为 2*3+7词法分析比如一段代码const a = 5;经过词法分析[{value: 'const', type: 'keyword'}, {value: 'a', type: 'identifier'}


Go词法语法分析

词法分析下列一段代码package mainimport ("fmt")func main() {fmt.Println("Hello")}通过lex规则最终解释成PACKAGE IDENTIMPORT QUOTE IDENT QUOTEIDENT ID


解析cobra

Cobra// Copyright © 2015 Steve Francia <spf@spf13.com>.//// Licensed under the Apache License, Version 2.0 (the "License");// you may


Gin快速预览

1.快速了解一下 Gin 框架2.Gin 是什么Gin 是 基于 Go 语言的一个 HttpServer 函数库。俗称 MVC 框架?3.为什么使用 Gin因为想用,所以就用!4.如何使用 Gin 呢首先 引入 github.com/gin-gonic/gin !然后 在 main 函数中写入!r


Golang基础总结

数据类型boolint,int8-64uint8-64float32float64complex64/128byterunestringArray,Map,Slice,*,&关键字package,importif,else if,else,switch,select,for,while,ma


从Linux体系到GPM

1.Linux-CPU我们先看一下 Linux 系统的整体结构,这里插入搜集的两张图从图上可知,Linux 组成分为 User Space,Kernel Space,Hardware Space用户层,内核层,硬件层用户层: 比如我们看到的命令行界面,我们的浏览器,执行的 Shell,或者 gcc


Gradle多模块SpringCloud微服务实践

1.ProjectREP3_CLOUD2.Cloud 简单配置2.1.父模块配置主要就是配置一下通用依赖和基本插件buildscript { ext { springBootVersion = '2.2.2.RELEASE' springBootManagement


GO指南Scroll

1.Go 环境# GOexport GO111MODULE=onexport GOPROXY=https://goproxy.ioexport GOBIN=$HOME/go/binexport PATH=$PATH:$GOPROXY:$GOBIN2.包每个程序都是包,包入口为 main 包,包名与导