SlideShare une entreprise Scribd logo
1  sur  64
Scheme
10

          yadokarielectric
         aka y14c | yad-EL
100
Scheme
Hello World
C
int main()
{
     printf(“Hello World!”);
     return 0;
}
•()

• {}
Java
public class HelloWorld {
  public static void main (String [] args) {
      System.out.println(“Hello World!”);
  }
}
•()

• {}

• []
Scheme
(display “Hello World!”)
•C

• Java
Scheme
Scheme
lambda
(lambda (   )(   ))
.
• if
  (lambda (p x y) (p x y))

• true
  (lambda (x y) x)

• false
  (lambda (x y) y)
.
Scheme
((lambda (f)
   ((lambda (p)
      (f (lambda (x) ((p p) x))))
    (lambda (p)
      (f (lambda (x) ((p p) x))))))
 (lambda (f)
   (f                   )))
Scheme
((lambda (f)
   ((lambda (p)
      (f (lambda (x) ((p p) x))))
    (lambda (p)
      (f (lambda (x) ((p p) x))))))
 (lambda (f)
   (lambda (n)
     (((lambda (n) ((n (lambda (x) (lambda (x y) y)))
                     (lambda (x y) x))) n)
      (lambda (c) (lambda (x) (c x)))
      (lambda (c)
        (lambda (x)
          (((f (lambda (c)
                  (lambda (x)
                    (((n (lambda (g)
                           (lambda (h)
                              (h (g c))))) (lambda (u) x))
                     (lambda (u) u)))))
             (n c)) x)))))))
lambda
Scheme
•

•
Scheme
10
(= #b10 2)
(= #b10 2)
#t
↓
(= #b10 2)
#t
あなたがSchemeを使うべき10の理由

Contenu connexe

En vedette

HTML5 Conference 2015 WebGLハンズオン資料
HTML5 Conference 2015 WebGLハンズオン資料HTML5 Conference 2015 WebGLハンズオン資料
HTML5 Conference 2015 WebGLハンズオン資料Kazuya Hiruma
 
開発現場で使えるかもしれないGroovy
開発現場で使えるかもしれないGroovy開発現場で使えるかもしれないGroovy
開発現場で使えるかもしれないGroovyzgmf_mbfp03
 
CSS3Rendererを使ってiOSでもサクサク3D
CSS3Rendererを使ってiOSでもサクサク3DCSS3Rendererを使ってiOSでもサクサク3D
CSS3Rendererを使ってiOSでもサクサク3DAdvancedTechNight
 
恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡Aya Komuro
 
桐島、Rubyやめるってよ
桐島、Rubyやめるってよ桐島、Rubyやめるってよ
桐島、RubyやめるってよNarihiro Nakamura
 
Rubyからscalaに変えるべき15の理由
Rubyからscalaに変えるべき15の理由Rubyからscalaに変えるべき15の理由
Rubyからscalaに変えるべき15の理由Yukishige Nakajo
 
D3.jsと学ぶVisualization(可視化)の世界
D3.jsと学ぶVisualization(可視化)の世界D3.jsと学ぶVisualization(可視化)の世界
D3.jsと学ぶVisualization(可視化)の世界AdvancedTechNight
 
Scala.js触ってみた
Scala.js触ってみたScala.js触ってみた
Scala.js触ってみたAsami Abe
 

En vedette (8)

HTML5 Conference 2015 WebGLハンズオン資料
HTML5 Conference 2015 WebGLハンズオン資料HTML5 Conference 2015 WebGLハンズオン資料
HTML5 Conference 2015 WebGLハンズオン資料
 
開発現場で使えるかもしれないGroovy
開発現場で使えるかもしれないGroovy開発現場で使えるかもしれないGroovy
開発現場で使えるかもしれないGroovy
 
CSS3Rendererを使ってiOSでもサクサク3D
CSS3Rendererを使ってiOSでもサクサク3DCSS3Rendererを使ってiOSでもサクサク3D
CSS3Rendererを使ってiOSでもサクサク3D
 
恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡
 
桐島、Rubyやめるってよ
桐島、Rubyやめるってよ桐島、Rubyやめるってよ
桐島、Rubyやめるってよ
 
Rubyからscalaに変えるべき15の理由
Rubyからscalaに変えるべき15の理由Rubyからscalaに変えるべき15の理由
Rubyからscalaに変えるべき15の理由
 
D3.jsと学ぶVisualization(可視化)の世界
D3.jsと学ぶVisualization(可視化)の世界D3.jsと学ぶVisualization(可視化)の世界
D3.jsと学ぶVisualization(可視化)の世界
 
Scala.js触ってみた
Scala.js触ってみたScala.js触ってみた
Scala.js触ってみた
 

あなたがSchemeを使うべき10の理由