# ProgrammingLanguage

# Flag

千万不要尝试用记忆力去替代自己的理解力!

代码不是靠死记硬背,而是不停的写、不停的思考,在反复的练习中熟练掌握的。

编程需要学习记住的是:不同的场景中一些实现方式的原理机制、思维方式,如:设计模式、排序算法、数据结构等,而不是具体的代码。

  1. 动态类型语言:运行时确定数据类型。
  2. 静态类型语言:编译时确定数据类型。
  3. 强类型语言:不允许隐式转换。
  4. 弱类型语言:允许隐式转换。

开源组织

基金会

开源个人

# 工具套件

# 语词法解析器

AST(Abstract Syntax Tree)-抽象语法树:抽象地将源代码根据语法生成对应的树状结构。

Lex(A Lexical Analyzer Generator)用于生成词法分析器,用于把输入分割成一个个有意义的词块(称为token)

Yacc(Yet Another Compiler-Compiler)用于生成语法解析器,用于确定上述分隔好的token之间的关联

Flex是由Vern Paxon实现的一个Lex,Bison则是GNU版本的YACC

# 其他语言

DSL(Domain Specification Language)领域语言,使用EBNF(Extended Backus–Naur Form)扩展巴斯科范式来描述语法

lowCode/noCode/低代码/零代码

# Scala

# Kotlin

# TypeScript

# WebAssembly

# Lua

# Haskell