Skip to content
This repository has been archived by the owner on Nov 22, 2020. It is now read-only.

lang Unlambda

Leonardone @ NEETSDKASU edited this page Feb 27, 2016 · 30 revisions

Unlambda

※CodeIQの実行くんやIDEONEで標準入力を取得できないためCodeIQで解ける問題には限りがある



##IDEONEでは標準入力を取得できない!?
どうもソースコード自体が標準入力から入力されている感じ?

input(stdin)に文字を書き込んだ場合(読み取られず、当然ながら表示できない)
http://ideone.com/bOwDza
ソースコードに続けて文字を書き込んだ場合(読み取り表示される)
http://ideone.com/awlrhx


##fを保持し引数xを受け取るとf(x)を実行して結果を返す関数 これ要らないぽげ http://ideone.com/5BUsys

# fを保持し引数xを受け取るとf(x)を実行して結果を返す関数
# s( k( f ) )( i )

	``s`kfi

# これiでいいやん
# i( f )

	`if

# むしろただのfやん

	f

##fを保持し引数xを受け取るとf(x)を実行してxを返す関数 http://ideone.com/Czauyz

# fを保持し引数xを受け取るとf(x)を実行してxを返す関数
# s( k )( f )

	``skf

##fを保持し引数xを受け取るとf(x)を実行してyを返す関数 http://ideone.com/D8YMBO

# fを保持し引数xを受け取るとf(x)を実行してyを返す関数
# s( k( k( y ) ) )( f )

	``s`k`kyf

##fを保持し引数xを受け取るとf(x)を実行してfを返す関数 http://ideone.com/JfbYrR

# fを保持し引数xを受け取るとf(x)を実行してfを返す関数
# s( s( k( s ) )( s( k( k ) )( k ) ) )( i )( f )

	```s``s`ks``s`kkkif

##xを保持し引数fを受け取るとf(x)を実行して結果を返す関数 http://ideone.com/eVH84A

# xを保持し引数fを受け取るとf(x)を実行して結果を返す関数
# s( i )( k( x ) )

	``si`kx

##xを保持し引数fを受け取るとf(x)を実行してyを返す関数 http://ideone.com/hBiJo5

# xを保持し引数fを受け取るとf(x)を実行してyを返す関数
# s( k( k( y ) ) )( s( i )( k( x ) ) )

	``s`k`ky``si`kx

##fとxを保持し引数yを受け取るとf(y)(x)を実行して結果を返す関数 http://ideone.com/IJWqYj

# fとxを保持し引数yを受け取るとf(y)(x)を実行して結果を返す関数
# s( f )( k( x ) )

	``sf`kx

##f(x)を2回実行してxを返す ダメぽ
http://ideone.com/umGJUG

# 直接的にやる場合(fを2つ、xを3つ記述する必要がある)
# k( x )( k( f( x ) )( f( x ) ) )
``k.x``k`.f.x`.f.x   

##f(x)を3回実行してxを返す ダメぽ
http://ideone.com/4Ts2uD

# 直接的にやる場合(fを3つ、xを4つ記述する必要がある)
# k( x )( k( k( f( x ) )( f( x ) ) )( f( x ) ) )
``k.x``k``k`.f.x`.f.x`.f.x

##f(x)を4回実行してxを返す ダメぽ
http://ideone.com/AcushG

# 直接的にやる場合(fを4つ、xを5つ記述する必要がある)
# k( x )( k( k( f( x ) )( f( x ) ) )( k( f( x ) )( f( x ) ) ) )
``k.x``k``k`.f.x`.f.x``k`.f.x`.f.x 
Clone this wiki locally