MoonBit月兔编程语言 现代编程思想 第七课 命令式编程:命令,可变数据结构,循环
现代编程思想 命令式编程 Hongbo Zhang 1 函数式编程 到此为⽌,我们介绍的可以归类于函数式编程的范畴 对每⼀个输⼊,有着固定的输出 对于标识符,我们可以直接⽤它所对应的值进⾏替代⸺引⽤透明性 开发实⽤的程序,我们需要⼀些计算之外的�副作⽤� 进⾏输⼊输出 修改内存中的数据等 这些副作⽤可能导致多次执⾏的结果不⼀致 2 引⽤透明性 我们可以定义如下数据绑定和函数 引⽤透明性可以易于理解 3 命令 函数 print 允许我们输出⼀个字符串,例如 print("hello moonbit") ⽉兔中可以通过 init 代码块来定义初始化指令 可以简单理解为程序主⼊⼝ 1. fn init { 2. println("hello moonbit") // 函数名中的ln代表换⾏ 3. } 4 命令与副作⽤ 输出命令可能会破坏引⽤透明性 1. fn 4. println("hello moonbit") // <-- 我们⾸先执⾏命令,进⾏输出 5. 1 + 1 // <-- 之后,我们以表达式块最后的值作为表达式块的值 6. } 7. let z: Int = square(x) // 4, 输出⼀次 8. } 5 命令与副作⽤ 我们不⼀定可以放⼼替换,因此会增⼤程序理解难度 1. fn init { 2.0 码力 | 23 页 | 780.46 KB | 1 年前3Hyperledger Fabric 1.4 中文文档
handling Connections Password management Leveraging native SSH config files fab 选项和参数 基本应用 直接执行远程命令 命令行参数 Per-task arguments 配置文件 Fabfile 文件的结构和使用 指定 fabfile 引用 Fabric 定义任务并导入 callable 任务 与远程程序集成 所说: Fabric 是一个 Python (2.5-2.7) 的库和命令行工具,用来提高基于 SSH 的 应用部署和系统管理效率。 更具体地说,Fabric 是: 一个让你通过 命令行 执行 无参数 Python 函数 的工具; 一个让通过 SSH 执行 Shell 命令更加 容易 、 更符合 Python 风格 的命令 库(建立于一个更低层次的库)。 自然而然地,大部分用户把这两件事结合着用,使用 print("Hello world!") 把上述代码放在你当前的工作目录中一个名为 fabfile.py 的 Python 模块文件 中。然后这个 hello 函数就可以用 fab 工具(随 Fabric 一并安装的命令)来执 行了,输出的结果会是这样: $ fab hello Hello world! Done. 以上就是配置文件的全部。它基于 Fabric 实现了一个(极其)简单的构建工 具,简单到甚至不用导入任何0 码力 | 145 页 | 161.53 KB | 1 年前3Hyperledger Fabric 2.5 中文文档
handling Connections Password management Leveraging native SSH config files fab 选项和参数 基本应用 直接执行远程命令 命令行参数 Per-task arguments 配置文件 Fabfile 文件的结构和使用 指定 fabfile 引用 Fabric 定义任务并导入 callable 任务 与远程程序集成 所说: Fabric 是一个 Python (2.5-2.7) 的库和命令行工具,用来提高基于 SSH 的 应用部署和系统管理效率。 更具体地说,Fabric 是: 一个让你通过 命令行 执行 无参数 Python 函数 的工具; 一个让通过 SSH 执行 Shell 命令更加 容易 、 更符合 Python 风格 的命令 库(建立于一个更低层次的库)。 自然而然地,大部分用户把这两件事结合着用,使用 print("Hello world!") 把上述代码放在你当前的工作目录中一个名为 fabfile.py 的 Python 模块文件 中。然后这个 hello 函数就可以用 fab 工具(随 Fabric 一并安装的命令)来执 行了,输出的结果会是这样: $ fab hello Hello world! Done. 以上就是配置文件的全部。它基于 Fabric 实现了一个(极其)简单的构建工 具,简单到甚至不用导入任何0 码力 | 138 页 | 154.00 KB | 1 年前3跟我一起写 Makefile (PDF 重制版)
. . . . . . . . . . . . . . . . . 19 4 书写命令 23 4.1 显示命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.2 命令执行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 4.3 命令出错 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 4.4 嵌套执行 make . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 4.5 定义命令包 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 5 使用变量 29 5.1 变量的基础 . . . . . . . . .0 码力 | 81 页 | 628.51 KB | 1 年前3Linux Docker Mess
Thompson C语言之父和Unix之父 Dennis Ritchie C语言之父和Unix之父 Richard Stallman 著名黑客,GNU创始 人 开发了Emacs、gcc、 bash shell Linus Torvalds Linux之父 This man is Linus Torvalds. 2012年6月14日,由阿尔托大学奥塔涅 米创业中心(ACE)主办的Aalto Talk节目 GNU n GNU, GNU is not UNIX. n GNU/Hurd n Common GNU software http://www.gnu.org/ Bash: The GNU shell GCC: The GNU C Compiler GDB: The GNU Debugger Coreutils: a set of basic UNIX-style utilities, such Architecture Shell Kernel File System Applications Architecture Kernel n 内存管理 n 进程管理 n 文件系统(虚拟文件系统 VFS) n 设备驱动 n 网络接口 建议阅读Linux内核源代码,可以从Linux-0.11入手,推荐Linux内核完全注释 (赵炯著) Architecture Shell n 系统的用户界面0 码力 | 77 页 | 7.40 MB | 1 年前3Flask入门教程
复原完整的开发流程 只提供入门所需的最少信息 优化术语解释,更容易理解 阅读方法 本书复原了编写这个 Watchlist 程序的完整流程,包括每一行代码块,每一个需要 执行的命令。在阅读时,你需要自己输入每一个代码和命令,检查输出是否和书中 一致。在这个过程中,你也可以对它进行一些调整。比如,示例程序的界面语言使 用了英文,你可以修改为中文或是其他语言。对于页面布局和样式,你也可以自由 修改。 Chrome。 使用命令行 在本书中,你需要使用命令行窗口来执行许多操作。你可以使用 Windows 下的 cmd.exe,或是 macOS 和 Linux 下的终端(Terminal)。下面我们执行一个最简单 的 whoami 命令(即 Who Am I?): $ whoami greyli 这个命令会打印出当前计算机用户的名称。其他常用的命令还有 cd 命令,用来 切换目录(change 切换目录(change directory); mkdir 命令,用来创建目录(make directory)。在不同的操作系统上,执行某个操作的命令可能会有所不同,在必要 的地方,书里会进行提示。 我们先来为我们的程序创建一个文件夹: $ mkdir watchlist $ cd watchlist 除非特别说明,从现在开始,本书假设你的工作目录将是在项目的根目录,即 watchlist/0 码力 | 127 页 | 7.62 MB | 1 年前3make & Makefile
工程管理与 make make 的工作原理 规则与依赖关系 通配符的使用 变量的定义和引用 自动变量 模式规则 Makefile 的结构 make 命令参数与选项 常见的错误 依赖关系的自动生成 Turbo C 的 make 与 make 相关的命令 参考文献 ©hfwang - 2/36 - ... . ... . ... . ... . ... . ... . ... . main.c 关系图中入度为零的结点不依赖任何前提,一般是源文件; make比较依赖关系图中的前题和目标文件的时间,如果前提时间 更新,或目标文件不存在,则利用Makfile中相关目标的生成操作 命令生成新目标,如此反复直到最后目标是最新的为止; ©hfwang - 10/36 - ... . ... . ... . ... . ... . ... . ... . ... prerequisite1 prerequisite2 ... action1 action2 ... action绝对以 (横向跳格符 TABLATION) 为行首字符; action可以是任意的命令, make以当前用户缺省的shell执行该命 令: $ echo $SHELLC /bin/bash 如: lex.o : lex.h lex.c @echo Rebuild lex.o ... gcc -c lex0 码力 | 36 页 | 975.98 KB | 1 年前3Python 标准库参考指南 3.11.10
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 6.3.5 difflib 的命令行接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 6.4 textwrap --- calendar --- 日历相关函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 8.3.1 命令行用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 8.4 collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 13.2.2 命令行界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538 13.30 码力 | 2399 页 | 11.19 MB | 9 月前3Python 标准库参考指南 3.11.10
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 6.3.5 difflib 的命令行接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 6.4 textwrap --- 文本自动换行与填充 calendar --- 日历相关函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 8.3.1 命令行用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 8.4 collections 用法示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502 13.2.2 命令行界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503 13.3 bz20 码力 | 2248 页 | 11.10 MB | 9 月前3Python 标准库参考指南 3.12
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 6.3.5 difflib 的命令行接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 6.3.6 ndiff 示例 . . calendar --- 通用日历相关函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 8.3.1 命令行用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 8.4 collections 用法示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512 13.2.2 命令行界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513 13.3 bz20 码力 | 2253 页 | 11.81 MB | 9 月前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100