Enviar pesquisa
Carregar
D lang
•
0 gostou
•
1,273 visualizações
Jonathan Mercier
Seguir
Why to use D programming?
Leia menos
Leia mais
Espiritual
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 21
Baixar agora
Baixar para ler offline
Recomendados
Rebort
Rebort
mahammedo
c++ part1
c++ part1
Sltnalt Cosmology
Marsh Transforms Itself With Social Technology - HR Technology Conference 2012
Marsh Transforms Itself With Social Technology - HR Technology Conference 2012
Ben Brooks
Flow of control ppt
Flow of control ppt
Indraprastha Institute of Information Technology
Números Naturais
Números Naturais
Shirley Araujo
Sql
Sql
Tiago
Apostila geo gebra
Apostila geo gebra
Raimundo Renato
Monografia tanilson = 0.1
Monografia tanilson = 0.1
Jean Souza
Recomendados
Rebort
Rebort
mahammedo
c++ part1
c++ part1
Sltnalt Cosmology
Marsh Transforms Itself With Social Technology - HR Technology Conference 2012
Marsh Transforms Itself With Social Technology - HR Technology Conference 2012
Ben Brooks
Flow of control ppt
Flow of control ppt
Indraprastha Institute of Information Technology
Números Naturais
Números Naturais
Shirley Araujo
Sql
Sql
Tiago
Apostila geo gebra
Apostila geo gebra
Raimundo Renato
Monografia tanilson = 0.1
Monografia tanilson = 0.1
Jean Souza
Apostila c# iniciantes
Apostila c# iniciantes
Caique Moretto
2012: Computação Natural - Slides do Curso
2012: Computação Natural - Slides do Curso
Leandro de Castro
Landeiro introducao
Landeiro introducao
Adriana Dassie
Python
Python
Tiago
monografia_andre_paro
monografia_andre_paro
Andre Luiz Catini Paro
Apostila de Bioestatística
Apostila de Bioestatística
Rodrigo Fioravanti Pereira
Algoritmos jabour
Algoritmos jabour
fjabour
Análise de Algoritmos de Ordenação Interna
Análise de Algoritmos de Ordenação Interna
Johnnatan Messias
Relatorio final - Blinded Walker
Relatorio final - Blinded Walker
Tiago Cunha
Cientista da computacao usando python
Cientista da computacao usando python
Jean Lopes
Caminhos Mínimos: Dijkstra e Floyd-Warshall
Caminhos Mínimos: Dijkstra e Floyd-Warshall
Johnnatan Messias
Pre- Calculo
Pre- Calculo
Jaine Fernandes
Guia Aberto Android ed.2
Guia Aberto Android ed.2
Átila Camurça
Análise bayesiana de decisões aspectos práticos
Análise bayesiana de decisões aspectos práticos
Universidade Federal Fluminense
As festas esquecidas.pdf................
As festas esquecidas.pdf................
natzarimdonorte
VICIOS MORAIS E COMPORTAMENTAIS NA VISÃO ESPÍRITA
VICIOS MORAIS E COMPORTAMENTAIS NA VISÃO ESPÍRITA
ARMAZÉM DE ARTES TANIA PAUPITZ
Série Evangelho no Lar - Pão Nosso - Cap. 132 - Em tudo
Série Evangelho no Lar - Pão Nosso - Cap. 132 - Em tudo
Ricardo Azevedo
Paulo é vítima de fake news e o primeiro culto num domingo
Paulo é vítima de fake news e o primeiro culto num domingo
PIB Penha
EUBIOSOFIA - MEMÓRIAS DA SOCIEDADE TEOSÓFICA BRASILEIRA
EUBIOSOFIA - MEMÓRIAS DA SOCIEDADE TEOSÓFICA BRASILEIRA
Marco Aurélio Rodrigues Dias
Lição 4 - Como se Conduzir na Caminhada.pptx
Lição 4 - Como se Conduzir na Caminhada.pptx
Celso Napoleon
O Livro dos Mortos do Antigo Egito_240402_210013.pdf
O Livro dos Mortos do Antigo Egito_240402_210013.pdf
mhribas
METODOLOGIA ELANA* – ENSINO LEVA AUTONOMIA NO APRENDIZADO. UMA PROPOSTA COMP...
METODOLOGIA ELANA* – ENSINO LEVA AUTONOMIA NO APRENDIZADO. UMA PROPOSTA COMP...
PIB Penha
Mais conteúdo relacionado
Semelhante a D lang
Apostila c# iniciantes
Apostila c# iniciantes
Caique Moretto
2012: Computação Natural - Slides do Curso
2012: Computação Natural - Slides do Curso
Leandro de Castro
Landeiro introducao
Landeiro introducao
Adriana Dassie
Python
Python
Tiago
monografia_andre_paro
monografia_andre_paro
Andre Luiz Catini Paro
Apostila de Bioestatística
Apostila de Bioestatística
Rodrigo Fioravanti Pereira
Algoritmos jabour
Algoritmos jabour
fjabour
Análise de Algoritmos de Ordenação Interna
Análise de Algoritmos de Ordenação Interna
Johnnatan Messias
Relatorio final - Blinded Walker
Relatorio final - Blinded Walker
Tiago Cunha
Cientista da computacao usando python
Cientista da computacao usando python
Jean Lopes
Caminhos Mínimos: Dijkstra e Floyd-Warshall
Caminhos Mínimos: Dijkstra e Floyd-Warshall
Johnnatan Messias
Pre- Calculo
Pre- Calculo
Jaine Fernandes
Guia Aberto Android ed.2
Guia Aberto Android ed.2
Átila Camurça
Análise bayesiana de decisões aspectos práticos
Análise bayesiana de decisões aspectos práticos
Universidade Federal Fluminense
Semelhante a D lang
(14)
Apostila c# iniciantes
Apostila c# iniciantes
2012: Computação Natural - Slides do Curso
2012: Computação Natural - Slides do Curso
Landeiro introducao
Landeiro introducao
Python
Python
monografia_andre_paro
monografia_andre_paro
Apostila de Bioestatística
Apostila de Bioestatística
Algoritmos jabour
Algoritmos jabour
Análise de Algoritmos de Ordenação Interna
Análise de Algoritmos de Ordenação Interna
Relatorio final - Blinded Walker
Relatorio final - Blinded Walker
Cientista da computacao usando python
Cientista da computacao usando python
Caminhos Mínimos: Dijkstra e Floyd-Warshall
Caminhos Mínimos: Dijkstra e Floyd-Warshall
Pre- Calculo
Pre- Calculo
Guia Aberto Android ed.2
Guia Aberto Android ed.2
Análise bayesiana de decisões aspectos práticos
Análise bayesiana de decisões aspectos práticos
Último
As festas esquecidas.pdf................
As festas esquecidas.pdf................
natzarimdonorte
VICIOS MORAIS E COMPORTAMENTAIS NA VISÃO ESPÍRITA
VICIOS MORAIS E COMPORTAMENTAIS NA VISÃO ESPÍRITA
ARMAZÉM DE ARTES TANIA PAUPITZ
Série Evangelho no Lar - Pão Nosso - Cap. 132 - Em tudo
Série Evangelho no Lar - Pão Nosso - Cap. 132 - Em tudo
Ricardo Azevedo
Paulo é vítima de fake news e o primeiro culto num domingo
Paulo é vítima de fake news e o primeiro culto num domingo
PIB Penha
EUBIOSOFIA - MEMÓRIAS DA SOCIEDADE TEOSÓFICA BRASILEIRA
EUBIOSOFIA - MEMÓRIAS DA SOCIEDADE TEOSÓFICA BRASILEIRA
Marco Aurélio Rodrigues Dias
Lição 4 - Como se Conduzir na Caminhada.pptx
Lição 4 - Como se Conduzir na Caminhada.pptx
Celso Napoleon
O Livro dos Mortos do Antigo Egito_240402_210013.pdf
O Livro dos Mortos do Antigo Egito_240402_210013.pdf
mhribas
METODOLOGIA ELANA* – ENSINO LEVA AUTONOMIA NO APRENDIZADO. UMA PROPOSTA COMP...
METODOLOGIA ELANA* – ENSINO LEVA AUTONOMIA NO APRENDIZADO. UMA PROPOSTA COMP...
PIB Penha
Oração A Bem-Aventurada Irmã Dulce Dos Pobres
Oração A Bem-Aventurada Irmã Dulce Dos Pobres
Nilson Almeida
Tabela bíblica Periódica - Livros da Bíblia.pdf
Tabela bíblica Periódica - Livros da Bíblia.pdf
Agnaldo Fernandes
Dar valor ao Nada! No Caminho da Autorrealização
Dar valor ao Nada! No Caminho da Autorrealização
corpusclinic
Lição 5 - Os Inimigos do Cristão - EBD.pptx
Lição 5 - Os Inimigos do Cristão - EBD.pptx
Celso Napoleon
2 joão (1) 1.pptx As TRÊS CARTAS DO APÓSTOLO JOÃO têm uma mensagem solene e u...
2 joão (1) 1.pptx As TRÊS CARTAS DO APÓSTOLO JOÃO têm uma mensagem solene e u...
MiltonCesarAquino1
Aprendendo a se amar e a perdoar a si mesmo
Aprendendo a se amar e a perdoar a si mesmo
Rivaldo Guedes Corrêa. Jr
O Sacramento do perdão, da reconciliação.
O Sacramento do perdão, da reconciliação.
LucySouza16
As violações das leis do Criador (material em pdf)
As violações das leis do Criador (material em pdf)
natzarimdonorte
Centros de Força do Perispírito (plexos, chacras)
Centros de Força do Perispírito (plexos, chacras)
Sergio Luiz , Palestrante Espírita - Professor, Cientista Social e Jornalista
Último
(17)
As festas esquecidas.pdf................
As festas esquecidas.pdf................
VICIOS MORAIS E COMPORTAMENTAIS NA VISÃO ESPÍRITA
VICIOS MORAIS E COMPORTAMENTAIS NA VISÃO ESPÍRITA
Série Evangelho no Lar - Pão Nosso - Cap. 132 - Em tudo
Série Evangelho no Lar - Pão Nosso - Cap. 132 - Em tudo
Paulo é vítima de fake news e o primeiro culto num domingo
Paulo é vítima de fake news e o primeiro culto num domingo
EUBIOSOFIA - MEMÓRIAS DA SOCIEDADE TEOSÓFICA BRASILEIRA
EUBIOSOFIA - MEMÓRIAS DA SOCIEDADE TEOSÓFICA BRASILEIRA
Lição 4 - Como se Conduzir na Caminhada.pptx
Lição 4 - Como se Conduzir na Caminhada.pptx
O Livro dos Mortos do Antigo Egito_240402_210013.pdf
O Livro dos Mortos do Antigo Egito_240402_210013.pdf
METODOLOGIA ELANA* – ENSINO LEVA AUTONOMIA NO APRENDIZADO. UMA PROPOSTA COMP...
METODOLOGIA ELANA* – ENSINO LEVA AUTONOMIA NO APRENDIZADO. UMA PROPOSTA COMP...
Oração A Bem-Aventurada Irmã Dulce Dos Pobres
Oração A Bem-Aventurada Irmã Dulce Dos Pobres
Tabela bíblica Periódica - Livros da Bíblia.pdf
Tabela bíblica Periódica - Livros da Bíblia.pdf
Dar valor ao Nada! No Caminho da Autorrealização
Dar valor ao Nada! No Caminho da Autorrealização
Lição 5 - Os Inimigos do Cristão - EBD.pptx
Lição 5 - Os Inimigos do Cristão - EBD.pptx
2 joão (1) 1.pptx As TRÊS CARTAS DO APÓSTOLO JOÃO têm uma mensagem solene e u...
2 joão (1) 1.pptx As TRÊS CARTAS DO APÓSTOLO JOÃO têm uma mensagem solene e u...
Aprendendo a se amar e a perdoar a si mesmo
Aprendendo a se amar e a perdoar a si mesmo
O Sacramento do perdão, da reconciliação.
O Sacramento do perdão, da reconciliação.
As violações das leis do Criador (material em pdf)
As violações das leis do Criador (material em pdf)
Centros de Força do Perispírito (plexos, chacras)
Centros de Força do Perispírito (plexos, chacras)
D lang
1.
.. .......... ......
..................... ..................... ..................... ..... ..... . ..... .......... .
2.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . . Walter Bright .. ...... If a
language can capture 90% of the power of C++ with 10% of its complexity I argue that is a worthwhile tradeoff. Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 2 / 21
3.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Factorial number: C++
vs D Imperative .. 1 typedef unsigned long ulong; 2 3 ulong factorial (ulong n){ 4 if (n < 2) 5 return 1; 6 else 7 return n ∗ factorial (n − 1); 8 } .. 1 ulong factorial (ulong n){ 2 if (n < 2) 3 return 1; 4 else 5 return n ∗ factorial (n − 1); 6 } Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 3 / 21
4.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Factorial number: C++
vs D Imperative and generics .. 1 template<class T> T factorial(T n){ 2 if (n < 2) 3 return 1; 4 else 5 return n ∗ factorial (n − 1); 6 } .. 1 T factorial (T n){ 2 if (n < 2) 3 return 1; 4 else 5 return n ∗ factorial (n − 1); 6 } Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 4 / 21
5.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Factorial number: C++
vs D Imperative, generics and contract .. 1 template<class T> T factorial(T n){ 2 assert ( n >= 1 ); 3 if (n < 2) 4 return 1; 5 else 6 return n ∗ factorial (n − 1); 7 } .. 1 T factorial (T n) 2 in{ assert ( n >= 1 ); } 3 out{ assert ( n >= 1 ); } 4 body{ 5 if (n < 2) 6 return 1; 7 else 8 return n ∗ factorial (n − 1); 9 } Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 5 / 21
6.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Factorial number: C++
vs D Meta-programing .. 1 typedef unsigned long ulong; 2 3 template <ulong N> struct Factorial { 4 enum { value = N ∗ Factorial<N − 1>::value }; 5 }; 6 7 template <> struct Factorial<0> { 8 enum { value = 1 }; 9 }; 10 11 const ulong x = Factorial<4>::value; 12 const ulong y = Factorial<0>::value; .. 1 template Factorial (ulong n){ 2 static if (n < 2) 3 const Factorial = 1; 4 else 5 const Factorial = n ∗ Factorial !(n − 1); 6 } 7 8 immutable ulong x = Factorial !( 4 ); 9 immutable ulong y = Factorial !( 0 ); Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 6 / 21
7.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Factorial number: C++
vs D CTFE .. 1 typedef unsigned long ulong; 2 3 ulong factorial (ulong n){ 4 if (n < 2) 5 return 1; 6 else 7 return n ∗ factorial (n − 1); 8 } 9 10 enum ulong x = factorial ( 4 ); 11 enum ulong y = factorial ( 0 ); .. 1 ulong factorial (ulong n){ 2 if (n < 2) 3 return 1; 4 else 5 return n ∗ factorial (n − 1); 6 } 7 8 enum ulong x = factorial ( 4 ); 9 enum ulong y = factorial ( 0 ); Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 7 / 21
8.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . . John Carmack .. ...... Using D
for my daily work is not an option, but I applaud their inclusion of a pure attribute. Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 8 / 21
9.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Factorial number: C++
vs D functional .. 1 typedef unsigned long ulong; 2 3 ulong factorial (ulong n){ 4 if (n < 2) 5 return 1; 6 else 7 return n ∗ factorial (n − 1); 8 } .. 1 @safe pure nothrow 2 ulong factorial (immutable ulong n){ 3 if (n < 2) 4 return 1; 5 else 6 return n ∗ factorial (n − 1); 7 } Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 9 / 21
10.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . .. Imperative. Generics . Contracts . Meta- programing . Functional . . . . . . . . . . . . . . . . . . .
. . . . . . C++ D Python Java Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 10 / 21
11.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Do you like
it ? .. .Yes .. .No Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 11 / 21
12.
.. .. .continue .......... ...... .....................
..................... ..................... ..... ..... . ..... .......... .
13.
.. .......... ......
..................... ..................... ..................... ..... ..... . ..... .......... .
14.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Factorial number: Java
vs D A language survey .. 1 public class Factorial { 2 public static int factorial ( int n ){ 3 if (n < 2) 4 return 1; 5 else 6 return n ∗ Factorial . factorial (n − 1); 7 } 8 } .. 1 pure ulong factorial ( immutable ulong n){ 2 if (n < 2) 3 return 1; 4 else 5 return n ∗ factorial (n − 1); 6 } Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 14 / 21
15.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Factorial number: Python
vs D A language survey .. 1 def factorial ( n ): 2 if n < 2: 3 return 1 4 else : 5 return n ∗ factorial (n − 1) .. 1 pure ulong factorial ( immutable ulong n ){ 2 if (n < 2) 3 return 1; 4 else 5 return n ∗ factorial (n − 1); 6 } Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 15 / 21
16.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Computing Factorial 50,
1 million time ..... java . C++ . D . Python .0 . 2 . 4 . 6 . 8 . 10 . 0.167 . 0.003 . 0.014 . 11.399 Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 16 / 21
17.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Computing Factorial 50,
20 millions times ..... java . C++ . D . Python .0 . 50 . 100 . 150 . 200 . 1.692 . 0.002 . 0.006 . 228.815 Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 17 / 21
18.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . Do you like
it ? .. .Yes .. .No Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 18 / 21
19.
.. .. .continue .......... ...... .....................
..................... ..................... ..... ..... . ..... .......... .
20.
.. .......... ......
..................... ..................... ..................... ..... ..... . ..... .......... .
21.
.. ..... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . .... . .... . ..... . .... . ..... . .... . .... . . Andrei Alexandrescu .. ......D rox
!!! Thanks Jonathan MERCIER aka bioinfornatics D Programing October 9, 2013 21 / 21
Baixar agora