Io Tutorial

 

Math

 
Io> 1+1
==> 2 Io> 2 sin
==> 0.909297 Io> 2 sqrt
==> 1.414214
 

Variables

 
Io> a := 1
==> 1 Io> a
==> 1 Io> b := 2 * 3
==> 6 Io> a + b
==> 7
 

Conditions

 
Io> a := 2

Io> if(a == 1) then(writeln("a is one")) else(writeln("a is not one"))
a is not one Io> if(a == 1, writeln("a is one"), writeln("a is not one"))
a is not one
 

Lists

 
Io> d := List clone append(30, 10, 5, 20)
==> list(30, 10, 5, 20) Io> d size
==> 4 Io> d print
==> list(30, 10, 5, 20) Io> d := d sort
==> list(5, 10, 20, 30) Io> d first
==> 5 Io> d last
==> 30 Io> d at(2)
==> 20 Io> d remove(30)
==> list(5, 10, 20) Io> d atPut(1, 123)
==> list(5, 123, 20) Io> list(30, 10, 5, 20) select(>10)
==> list(30, 20) Io> list(30, 10, 5, 20) detect(>10)
==> 30 Io> list(30, 10, 5, 20) map(*2)
==> list(60, 20, 10, 40) Io> list(30, 10, 5, 20) map(v, v*2)
==> list(60, 20, 10, 40)
 

Loops

 
Io> for(i, 1, 10, write(i, " "))
1 2 3 4 5 6 7 8 9 10 Io> d foreach(i, v, writeln(i, ": ", v))
0: 5
1: 123
3: 20 Io> list("abc", "def", "ghi") foreach(println)
abc
def
ghi
 

Strings

 
Io> a := "foo"
==> "foo" Io> b := "bar"
==> "bar" Io> c := a .. b
==> "foobar" Io> c at(0)
==> 102 Io> c at(0) asCharacter
==> "f" Io> s := "this is a test"
==> "this is a test" Io> words := s split(" ", "\t") print
"this", "is", "a", "test" Io> s findSeq("is")
==> 2 Io> s findSeq("test")
==> 10 Io> s slice(10)
==> "test" Io> s slice(2, 10)
==> "is is a "

More

        Quag's Getting Started Tutorial

[IoLanguage]Io Tutorial[转]的更多相关文章

  1. [IoLanguage]Io Programming Guide[转]

    Io Programming Guide     Introduction Perspective Getting Started Downloading Installing Binaries Ru ...

  2. [Java] Java IO Files

    Files 使用 FileInputStream 或 FileReader 可以用于读入文件,前者基于二进制,后者基于文本.使用它们不需要读取整个文件,但是只能按照它们存储的顺序,依次读取字节,或字符 ...

  3. [Java] Java IO 概况

    Java IO 是 Java 的一套 API, 用于读入和写出数据(输入和输出).Java IO API 位于 java.io package.实际上 java.io package 没有解决所有的输 ...

  4. 系统学习 Java IO ---- 目录,概览

    Java IO 类的系统教程,原创.主要参考自英文教程 Java IO Tutorial 和 Java Doc. http://tutorials.jenkov.com/java-io/index.h ...

  5. MVVM框架中的一个非常重要的内容:数据双向绑定

    双向绑定的意思就是,如下图中,当在input框中输入字符时,红色框框中的字也会随之改变. input框中需要一个绑定:ms-duplex(即“双工绑定”),http://avalonjs.github ...

  6. RCE via XStream object deserialization && SECURITY-247 / CVE-2016-0792 XML reconstruction Object Code Inject

    catalogue . Java xStream . DynamicProxyConverter . java.beans.EventHandler . RCE via XStream object ...

  7. Java内部类、静态嵌套类、局部内部类、匿名内部类

    Nested classes are further divided into two types: static nested classes: If the nested class is sta ...

  8. 用VSCode开发一个基于asp.net core 2.0/sql server linux(docker)/ng5/bs4的项目(2)

    第一部分: http://www.cnblogs.com/cgzl/p/8478993.html 为Domain Model添加约束 前一部分, 我们已经把数据库创建出来了. 那么我们先看看这个数据库 ...

  9. which framework or library is best to use WebRTC

    which framework or library is best to use WebRTC http://stackoverflow.com/questions/24857637/current ...

随机推荐

  1. log4net日志组件

    转载:http://www.cnblogs.com/knowledgesea/archive/2012/04/26/2471414.html 一.什么是log4net组件 Log4net是基于.net ...

  2. python基础知识三

    在考虑它们的运算时,一定要想到python是一门面向对象语言,它对类型的要求是不那么严格的,因为在完全面向对象的语言中,一切都是对象. 那么让我们重新 考虑+ -  *  /等操作,不再拘泥于传统的数 ...

  3. MySQL常见问题汇总(原创)

    本文记录了使用Mysql时遇到的问题,持续更新中... 1.在windows命令行下登录mysql时报错: C:\Program Files\MySQL\MySQL Server 5.0\bin> ...

  4. GCDTimer

    #import <Foundation/Foundation.h> @interface JKTimerManager : NSObject + (instancetype)sharedT ...

  5. 从Bash漏洞学Shell脚本(冒号)

    前天,爆发了Bash安全漏洞,非常恐怖.在网络上开始飞速传播,附带了非常友好的检测工具. $ env x='() { :;}; echo vulnerable' bash -c "echo ...

  6. js学习--DOM操作详解大全二(window对象)

    一.window - 计时器 1、setTimeout()可以用来在指定的时间之后单次调用函数.setTimeount(f,1000);//一秒后调用函数fclearTimeout();取消函数的执行 ...

  7. ListView复用和优化详解

    我们每一个Android开发人员对ListView的使用肯定是很熟悉的,然而多少人能真正的懂ListView的缓存机制呢,说白了就是ListView为了提高效率,而内部实现的一种优化,牺牲一点内存.而 ...

  8. 一次 php nusoap 调试过程

    今天跟同事调用一个数据api ,用soap方式调用.本以为很简单的事情,却弄到了晚上. 因为有过调试经验,直接按照以往的过程直接部署,结果是错误. 1. 以为是调用方式错了,问了一下对接的同事,没问题 ...

  9. Android特效--粒子效果之雨

    1. 单个雨点的行为 2. 完善雨点的行为和构造下雨场景 3. 在XML中定义可以控制下雨的属性 --------------------------------------------------- ...

  10. LPC1114

    时钟配置: 3个时钟源:系统振荡源(system),IRC振荡源,(IRC,内部RC振荡器)看门狗振荡源(WatchDog) MAINCLKSEL:主时钟源选择寄存器(复位值:0) 只用了前两位: 0 ...