FC2ブログ

本を読む

読書やコンピュータなどに関するメモ

関数型言語shの基礎文法最速マスター


 shshshClojure


REPL


 shPOSIXUnixREPLsh
sh

 
$

 shREPLbashzshtcsh

 REPL使sh
sh hoge


 shseqLinux使
$ seq 1 3
1
2
3

 fdREPLfd11


 "|"使
$ seq 1 100 | head -n 2
1
2

 headntailn
$ seq 1 100 | tail -n 3
98
99
100


 ";"使
$ seq 1 2 ; seq 10 12    
1
2
10
11
12

 ";""|"";""{}"
$ { seq 1 2 ; seq 10 12 ; } | head -n 3
1
2
10

 2seq";"

 "()""()"2seq";""()"
$ ( seq 1 2 ; seq 10 12 ) | head -n 3
1
2
10


 yes
$ yes 10
10
10
10
10
10
(以下略)

 headyeshead
$ yes 10 | head -n 3
10
10
10


 
$ foo() { yes 10 | head -n 3 ; }
$ foo
10
10
10

 "{}""{}""()"
$ foo() ( yes 10 | head -n 3 )
$ foo
10
10
10

 

 "$"
$ foo() { seq 1 $1 ; }
$ foo 3
1
2
3

map


 map
$ seq 1 3 | while read n ; do echo $(( n + 3 )); done
4
5
6

 whilemapread nndodone$(())echododone";""{}"

 ";"while"|"


 for使
$ for i in $(seq 1 100) ; do echo $(( i + 2 )) ; done | head -n 2
3
4


 
$ [ 1 = 1 ] && echo 3 || echo 4
3
$ [ 1 = 2 ] && echo 3 || echo 4
4

 "[]""&&""||"


 seqnatural使
$ natural() { echo 0 | _natural ; }
$ _natural() { read n ; echo $n ; { echo $(( n + 1 )) | _natural ; } ; }
$ natural | head -n 5
0
1
2
3
4


 
$ foo() { eval "$1" ; }
$ foo "echo 'Helo'"
Helo

 evalCommon Lispapplyfuncall

 
$ seq 1 5 | while read n ; do foo "echo $n" ; done
1
2
3
4
5

 "echo $n""$n"funarg


 sh

コメント

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

 


forkw

fork10,0005shdash

shbignum

コメントの投稿

管理者にだけ表示を許可する

トラックバック

https://emasaka.blog.fc2.com/tb.php/708-4d67c008

 | HOME | 

Categories