块编程
在计算机编程中,块(block)或译为程序区块、代码块,是将源代码组织在一起的词法结构。块构成自一个或多个声明和语句。编程语言允许创建块,包括嵌入其他块之内的块,就叫做块结构编程语言。块和子程序是结构化编程的基础,结构化所强调的控制结构可以用块来形成的。
在编程中块的功能,是确使成组的语句被当作如同就是一个语句,限定在一个块中声明的对象如变量、过程和函数的词法作用域,使得它们不冲突于在其他地方用到的同名者。在块结构编程语言中,在块外部的对象名字在块内部是可见的,除非它们被声明了相同名字的对象所遮掩。
- 块和子程序是结构化编程的基础
- 结构化所强调的控制结构是用块来形成的
Syntax
- ALGOL blocks are delimited by the keywords “
begin
” and “end
” or equivalent- ALGOL 68 uses parentheses.
- system-c, blocks are delimited by curly braces - “
{
” and “}
”. - MS-DOS Batch Lang
()
- python
- indentation (越位规则)
- 源于 ISWIM 使用缩进表示块结构
- Lang → occam / Genie
- Lisp s-expressions
- with a syntactic keyword such as prog or let (as in the Lisp family)
- 1974 年 Edsger W. Dijkstra 的守卫命令语言中,条件和迭代代码块可使用块保留字反写来终止
if ~ then ~ elif ~ else ~ fi
case ~ in ~ out ~ esac
for ~ while ~ do ~ od