Red语言入门(3)—— 代码结构和求值顺序
2015-03-16 09:58
162 查看
前面讲到,Red语言非常简单易学。本文要介绍的是Red的代码结构和求值顺序。如果你有编程经验,了解下面四点,就能阅读大部分Red程序了。
代码文件必须以Red []开始。
代码用空白分割,不需要行终止符。
求值顺序总是从左到右,没有优先级的分别。
注释以分号 ; 开始。
很多编程语言虽然没有强制要求文件头,但是作为一种良好的编程规范,程序员们往往都会在源代码文件中加入文件头信息。Red将其纳入语言规范的一部分,对其功能进行了增强,不仅仅只是提供一些描述信息。后面我们需要用到它的时候会详细介绍。
对应代码的构造,Red给了我们极大的自由。最终写出来的代码是丑还是美,取决于程序员们的职业素养和责任感。
所有运算符的优先级都一样,对有编程经验的同学来说,可能会有些不习惯。不过这无论是对编译器还是对程序员来说,都是一种简化。使用一段时间之后,你会渐渐适应并且喜欢上这个特性的。从此以后,你再也不用去记忆一堆优先级了,快乐编程,So easy !
代码文件必须以Red []开始。
代码用空白分割,不需要行终止符。
求值顺序总是从左到右,没有优先级的分别。
注释以分号 ; 开始。
1. 文件后缀和文件头
Red代码文件后缀为 *.red 。而且每一个代码文件的开头必须包含文件头,一般形式如下:Red []可以在其中放入一些信息:
Red [ Title: "Description" Author: "Qingtian Xie" File: %filename.red Type: 'library Tabs: 4 Rights: "Copyright (C) 2015 Qingtian Xie. All rights reserved." ]
很多编程语言虽然没有强制要求文件头,但是作为一种良好的编程规范,程序员们往往都会在源代码文件中加入文件头信息。Red将其纳入语言规范的一部分,对其功能进行了增强,不仅仅只是提供一些描述信息。后面我们需要用到它的时候会详细介绍。
2. 空白
和大部分语言不同的是,Red代码不需要行终止符,只需要用空白(空格,制表符或换行符等)分割就行了,所以你可以把代码写成各种各样的形式。比如这样:money: 100 if positive? money [ print "买!买!买!" ]或者这样:
money: 100 if positive? money [print "买!买!买!"]或者这样:
money: 100 if positive? money [ print "买!买!买!" ]
对应代码的构造,Red给了我们极大的自由。最终写出来的代码是丑还是美,取决于程序员们的职业素养和责任感。
3. 求值顺序
Red表达式求值顺序是从左到右的,所有的运算符的优先级都一样。唯一的例外是,中缀运算符的优先级高于前缀运算符。圆括号可以改变求值顺序。print 1 + 2 ; 先对中缀运算符`+`求值
1 + 2 * 3 ; 结果是9,而不是6
3 * (2 - 1) ; 括号内的表达式先求值,结果3
所有运算符的优先级都一样,对有编程经验的同学来说,可能会有些不习惯。不过这无论是对编译器还是对程序员来说,都是一种简化。使用一段时间之后,你会渐渐适应并且喜欢上这个特性的。从此以后,你再也不用去记忆一堆优先级了,快乐编程,So easy !
4. 注释
Red代码注释以分号( ; )开始,目前只支持单行注释。相关文章推荐
- JAVA入门.零基础学Java语言 MOOC 第二 第三 第四周 比较 判断 分支 循环 —————— 程序控制结构(顺序,分支,循环)
- F# 入门(五):F# 代码结构及编译顺序
- F# 入门(五):F# 代码结构及编译顺序
- 浅析C#代码执行顺序之选择结构
- pixhawk 代码笔记1 代码结构和执行顺序
- 【PHP入门篇】5.语言结构语句--慕课网【学习总结】
- ZZ:使用.NET语言开发Silverlight应用程序入门(一):了解项目结构
- 南阳OJ--语言入门--来自小代码
- SDUT-JAVA语言实验——转换字母(顺序结构)
- 求推荐go语言开发工具及go语言应该以哪种目录结构组织代码?
- React-Native入门指南(二)——代码结构
- Python入门(二)——运算符,求值顺序,if/for/while语句,list,tuple,dict,seq,set
- ZZ:使用.NET语言开发Silverlight应用程序入门(一):了解项目结构
- 一.OC基础之:1,OC语言的前世今生 ,2,OC语言入门,3,OC语言与C的差异,4,面向对象,5,类和对象的抽象关系,6,类的代码创建,7,类的成员组成及访问
- ios入门攻略 06篇 C语言基础【循环结构之while ,do-while语句】
- C语言实验——交换两个整数的值(顺序结构)
- ZZ:使用.NET语言开发Silverlight应用程序入门(一):了解项目结构
- C语言顺序表的实现代码
- C语言实验——交换两个整数的值(顺序结构)
- ios入门攻略 04篇 C语言基础【分支结构之if语句】