Skip to content

Commit

Permalink
up
Browse files Browse the repository at this point in the history
  • Loading branch information
scovl committed Jul 22, 2024
1 parent 8ba6fc7 commit 60a6810
Show file tree
Hide file tree
Showing 16 changed files with 496 additions and 82 deletions.
32 changes: 9 additions & 23 deletions blog/content/post/clj1.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,20 +20,6 @@ weight = 5
* [Natureza e Uso de Def e Defn](#natureza-e-uso-de-def-e-defn)
* [100daysofcode](#100daysofcode)

#### Table of Contents

- Introdução
- Iniciando um Projeto com Leiningen
- Passo 1: Criando um novo projeto
- Passo 2: Estrutura do Projeto
- Passo 3: Escrevendo a História dos Três Porquinhos
- Passo 4: Executando o Projeto
- Passo 5: Gerando um JAR Executável
- Passo 6: Usando o REPL
- Def e Defn: Entendendo as Diferenças
- Natureza e Uso de Def e Defn
- 100daysofcode

### Introdução

Já pensou em começar a estudar alguma linguagem de programação funcional? Que tal começar agora? Você pode escolher qualquer uma, mas eu optarei pelo Clojure devido à minha afinidade com Java e Lisp, o que torna essa escolha mais conveniente. Mas, antes de começarmos, certifique-se de ter o Clojure e o Leiningen instalados em seu sistema. Siga os links para as instruções de instalação. Este é um exercício simples e divertido de aplicar. Então vamos começar:
Expand All @@ -50,13 +36,13 @@ lein new app three-little-pigs

Esse comando criará uma nova estrutura de projeto chamada `three-little-pigs`. O `lein new app <nome-do-projeto>` é usado para gerar um novo projeto Clojure com uma estrutura básica de diretórios e arquivos necessários para começar a desenvolver.

#### Passo 2: Estrutura do Projeto
### Passo 2: Estrutura do Projeto

Navegue até a pasta do projeto que acabamos de criar:

Uma vez dentro da pasta, você verá a seguinte estrutura de diretórios:

```
```bash
three-little-pigs/
├── CHANGELOG.md
├── LICENSE
Expand Down Expand Up @@ -106,7 +92,7 @@ Abra o arquivo `src/three_little_pigs/core.clj` em seu editor de texto preferido
(println (story)))
```

#### Passo 4: Executando o Projeto
### Passo 4: Executando o Projeto

Para executar o nosso projeto e ver a história dos Três Porquinhos em ação, volte ao terminal e execute o seguinte comando:

Expand All @@ -116,7 +102,7 @@ lein run

O comando `lein run` compila e executa o projeto, mostrando a saída no terminal. Você verá a história completa dos Três Porquinhos no terminal:

```
```bash
O primeiro porquinho decidiu construir uma casa. O porquinho construiu uma casa de palha.
O segundo porquinho decidiu construir uma casa. O porquinho construiu uma casa de madeira.
O terceiro porquinho decidiu construir uma casa. O porquinho construiu uma casa de tijolos.
Expand All @@ -142,17 +128,17 @@ java -jar target/uberjar/three-little-pigs-0.1.0-SNAPSHOT-standalone.jar

Agora, você tem um programa Clojure que pode ser distribuído e executado em quase qualquer plataforma.

#### Passo 6: Usando o REPL
### Passo 6: Usando o REPL

O REPL (Read-Eval-Print Loop) é uma ferramenta poderosa para experimentar com código. Ele permite que você interaja com um programa em execução e teste rapidamente ideias. Para iniciar um REPL, execute o seguinte comando:

```shell
```bash
lein repl
```

A saída deve ser algo assim:

```
```bash
nREPL server started on port 54015 on host 127.0.0.1 - nrepl://127.0.0.1:54015
REPL-y 0.5.1, nREPL 1.0.0
Clojure 1.11.1
Expand All @@ -173,13 +159,13 @@ three-little-pigs.core=> (-main)

Você verá a saída:

```
```bash
O primeiro porquinho decidiu construir uma casa. O porquinho construiu uma casa de palha.
O segundo porquinho decidiu construir uma casa. O porquinho construiu uma casa de madeira.
O terceiro porquinho decidiu construir uma casa. O porquinho construiu uma casa de tijolos.
O lobo veio, soprou e derrubou a casa de palha.
O lobo veio, soprou e derrubou a casa de madeira.
O lobo não conseguiu derrubar a casa de tijolos.
O lobo não conseguiu derrubar a casa de tijolos.
A casa de tijolos do terceiro porquinho os salvou.
nil
```
Expand Down
2 changes: 1 addition & 1 deletion blog/content/post/clj2.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title = "Clojure Sessions02"
description = "Advanced Three Little Pigs"
date = 2024-07-19T19:00:00-00:00
tags = ["OOP","software","engineering", "Clojure"]
draft = false
draft = true
weight = 6
+++

Expand Down
110 changes: 58 additions & 52 deletions blog/public/2024/07/19/clj1/index.html

Large diffs are not rendered by default.

336 changes: 336 additions & 0 deletions blog/public/2024/07/19/clj2/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion blog/public/index.xml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
<link>http://localhost:1313/2024/07/19/clj1/</link>
<pubDate>Fri, 19 Jul 2024 19:00:00 +0000</pubDate>
<guid>http://localhost:1313/2024/07/19/clj1/</guid>
<description>Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Introdução Já pensou em começar a estudar alguma linguagem de programação funcional? Que tal começar agora? Você pode escolher qualquer uma, mas eu optarei pelo Clojure devido à minha afinidade com Java e Lisp, o que torna essa escolha mais conveniente.</description>
<description>Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Passo 5: Gerando um JAR Executável Passo 6: Usando o REPL Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Introdução Já pensou em começar a estudar alguma linguagem de programação funcional? Que tal começar agora?</description>
</item>
<item>
<title></title>
Expand Down
8 changes: 8 additions & 0 deletions blog/public/post/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,14 @@ <h4 class="post-stub-title" itemprop="name">Java e Clojure</h4>
<h4 class="post-stub-title" itemprop="name">Clojure Sessions01</h4>
<time class="post-stub-date" datetime="2024-07-19">Published sex., jul. 19, 2024</time>

</a>
</li>

<li class="post-stub" itemprop="blogPost" itemscope="" itemtype="https://schema.org/BlogPosting">
<a href="http://localhost:1313/2024/07/19/clj2/" itemprop="url" title="Go to post detail">
<h4 class="post-stub-title" itemprop="name">Clojure Sessions02</h4>
<time class="post-stub-date" datetime="2024-07-19">Published sex., jul. 19, 2024</time>

</a>
</li>

Expand Down
9 changes: 8 additions & 1 deletion blog/public/post/index.xml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,14 @@
<link>http://localhost:1313/2024/07/19/clj1/</link>
<pubDate>Fri, 19 Jul 2024 19:00:00 +0000</pubDate>
<guid>http://localhost:1313/2024/07/19/clj1/</guid>
<description>Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Introdução Já pensou em começar a estudar alguma linguagem de programação funcional? Que tal começar agora? Você pode escolher qualquer uma, mas eu optarei pelo Clojure devido à minha afinidade com Java e Lisp, o que torna essa escolha mais conveniente.</description>
<description>Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Passo 5: Gerando um JAR Executável Passo 6: Usando o REPL Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Passo 5: Gerando um JAR Executável Passo 6: Usando o REPL Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Introdução Já pensou em começar a estudar alguma linguagem de programação funcional?</description>
</item>
<item>
<title>Clojure Sessions02</title>
<link>http://localhost:1313/2024/07/19/clj2/</link>
<pubDate>Fri, 19 Jul 2024 19:00:00 +0000</pubDate>
<guid>http://localhost:1313/2024/07/19/clj2/</guid>
<description>Table of Contents Introdução Evoluindo o Projeto com Leiningen Passo 1: Refatorando o Código Passo 2: Dividindo em Módulos Passo 3: Usando def para Variáveis Globais Passo 4: Adicionando Mais Complexidade Passo 5: Executando o Projeto Refatorado Conclusão Compartilhando Seu Progresso 100daysofcode Introdução Neste segundo artigo, vamos avançar no nosso projeto &amp;ldquo;Three Little Pigs&amp;rdquo; utilizando conceitos mais avançados do Clojure. Iremos refatorar nosso código para torná-lo mais modular e introduzir o uso de def para variáveis globais.</description>
</item>
</channel>
</rss>
3 changes: 3 additions & 0 deletions blog/public/sitemap.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@
</url><url>
<loc>http://localhost:1313/2024/07/19/clj1/</loc>
<lastmod>2024-07-19T19:00:00+00:00</lastmod>
</url><url>
<loc>http://localhost:1313/2024/07/19/clj2/</loc>
<lastmod>2024-07-19T19:00:00+00:00</lastmod>
</url><url>
<loc>http://localhost:1313/tags/clojure/</loc>
<lastmod>2024-07-19T19:00:00+00:00</lastmod>
Expand Down
10 changes: 10 additions & 0 deletions blog/public/tags/clojure/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,16 @@ <h4 class="post-stub-title">Clojure Sessions01</h4>
<p class="post-stub-description">Three Little Pigs</p>


</a>
</li>

<li class="post-stub">
<a href="http://localhost:1313/2024/07/19/clj2/">
<h4 class="post-stub-title">Clojure Sessions02</h4>

<p class="post-stub-description">Advanced Three Little Pigs</p>


</a>
</li>

Expand Down
9 changes: 8 additions & 1 deletion blog/public/tags/clojure/index.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,14 @@
<link>http://localhost:1313/2024/07/19/clj1/</link>
<pubDate>Fri, 19 Jul 2024 19:00:00 +0000</pubDate>
<guid>http://localhost:1313/2024/07/19/clj1/</guid>
<description>Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Introdução Já pensou em começar a estudar alguma linguagem de programação funcional? Que tal começar agora? Você pode escolher qualquer uma, mas eu optarei pelo Clojure devido à minha afinidade com Java e Lisp, o que torna essa escolha mais conveniente.</description>
<description>Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Passo 5: Gerando um JAR Executável Passo 6: Usando o REPL Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Passo 5: Gerando um JAR Executável Passo 6: Usando o REPL Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Introdução Já pensou em começar a estudar alguma linguagem de programação funcional?</description>
</item>
<item>
<title>Clojure Sessions02</title>
<link>http://localhost:1313/2024/07/19/clj2/</link>
<pubDate>Fri, 19 Jul 2024 19:00:00 +0000</pubDate>
<guid>http://localhost:1313/2024/07/19/clj2/</guid>
<description>Table of Contents Introdução Evoluindo o Projeto com Leiningen Passo 1: Refatorando o Código Passo 2: Dividindo em Módulos Passo 3: Usando def para Variáveis Globais Passo 4: Adicionando Mais Complexidade Passo 5: Executando o Projeto Refatorado Conclusão Compartilhando Seu Progresso 100daysofcode Introdução Neste segundo artigo, vamos avançar no nosso projeto &amp;ldquo;Three Little Pigs&amp;rdquo; utilizando conceitos mais avançados do Clojure. Iremos refatorar nosso código para torná-lo mais modular e introduzir o uso de def para variáveis globais.</description>
</item>
</channel>
</rss>
10 changes: 10 additions & 0 deletions blog/public/tags/engineering/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,16 @@ <h4 class="post-stub-title">Clojure Sessions01</h4>
<p class="post-stub-description">Three Little Pigs</p>


</a>
</li>

<li class="post-stub">
<a href="http://localhost:1313/2024/07/19/clj2/">
<h4 class="post-stub-title">Clojure Sessions02</h4>

<p class="post-stub-description">Advanced Three Little Pigs</p>


</a>
</li>

Expand Down
9 changes: 8 additions & 1 deletion blog/public/tags/engineering/index.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,14 @@
<link>http://localhost:1313/2024/07/19/clj1/</link>
<pubDate>Fri, 19 Jul 2024 19:00:00 +0000</pubDate>
<guid>http://localhost:1313/2024/07/19/clj1/</guid>
<description>Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Introdução Já pensou em começar a estudar alguma linguagem de programação funcional? Que tal começar agora? Você pode escolher qualquer uma, mas eu optarei pelo Clojure devido à minha afinidade com Java e Lisp, o que torna essa escolha mais conveniente.</description>
<description>Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Passo 5: Gerando um JAR Executável Passo 6: Usando o REPL Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Passo 5: Gerando um JAR Executável Passo 6: Usando o REPL Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Introdução Já pensou em começar a estudar alguma linguagem de programação funcional?</description>
</item>
<item>
<title>Clojure Sessions02</title>
<link>http://localhost:1313/2024/07/19/clj2/</link>
<pubDate>Fri, 19 Jul 2024 19:00:00 +0000</pubDate>
<guid>http://localhost:1313/2024/07/19/clj2/</guid>
<description>Table of Contents Introdução Evoluindo o Projeto com Leiningen Passo 1: Refatorando o Código Passo 2: Dividindo em Módulos Passo 3: Usando def para Variáveis Globais Passo 4: Adicionando Mais Complexidade Passo 5: Executando o Projeto Refatorado Conclusão Compartilhando Seu Progresso 100daysofcode Introdução Neste segundo artigo, vamos avançar no nosso projeto &amp;ldquo;Three Little Pigs&amp;rdquo; utilizando conceitos mais avançados do Clojure. Iremos refatorar nosso código para torná-lo mais modular e introduzir o uso de def para variáveis globais.</description>
</item>
</channel>
</rss>
10 changes: 10 additions & 0 deletions blog/public/tags/oop/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,16 @@ <h4 class="post-stub-title">Clojure Sessions01</h4>
<p class="post-stub-description">Three Little Pigs</p>


</a>
</li>

<li class="post-stub">
<a href="http://localhost:1313/2024/07/19/clj2/">
<h4 class="post-stub-title">Clojure Sessions02</h4>

<p class="post-stub-description">Advanced Three Little Pigs</p>


</a>
</li>

Expand Down
9 changes: 8 additions & 1 deletion blog/public/tags/oop/index.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,14 @@
<link>http://localhost:1313/2024/07/19/clj1/</link>
<pubDate>Fri, 19 Jul 2024 19:00:00 +0000</pubDate>
<guid>http://localhost:1313/2024/07/19/clj1/</guid>
<description>Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Introdução Já pensou em começar a estudar alguma linguagem de programação funcional? Que tal começar agora? Você pode escolher qualquer uma, mas eu optarei pelo Clojure devido à minha afinidade com Java e Lisp, o que torna essa escolha mais conveniente.</description>
<description>Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Passo 5: Gerando um JAR Executável Passo 6: Usando o REPL Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Table of Contents Introdução Iniciando um Projeto com Leiningen Passo 1: Criando um novo projeto Passo 2: Estrutura do Projeto Passo 3: Escrevendo a História dos Três Porquinhos Passo 4: Executando o Projeto Passo 5: Gerando um JAR Executável Passo 6: Usando o REPL Def e Defn: Entendendo as Diferenças Natureza e Uso de Def e Defn 100daysofcode Introdução Já pensou em começar a estudar alguma linguagem de programação funcional?</description>
</item>
<item>
<title>Clojure Sessions02</title>
<link>http://localhost:1313/2024/07/19/clj2/</link>
<pubDate>Fri, 19 Jul 2024 19:00:00 +0000</pubDate>
<guid>http://localhost:1313/2024/07/19/clj2/</guid>
<description>Table of Contents Introdução Evoluindo o Projeto com Leiningen Passo 1: Refatorando o Código Passo 2: Dividindo em Módulos Passo 3: Usando def para Variáveis Globais Passo 4: Adicionando Mais Complexidade Passo 5: Executando o Projeto Refatorado Conclusão Compartilhando Seu Progresso 100daysofcode Introdução Neste segundo artigo, vamos avançar no nosso projeto &amp;ldquo;Three Little Pigs&amp;rdquo; utilizando conceitos mais avançados do Clojure. Iremos refatorar nosso código para torná-lo mais modular e introduzir o uso de def para variáveis globais.</description>
</item>
</channel>
</rss>
10 changes: 10 additions & 0 deletions blog/public/tags/software/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,16 @@ <h4 class="post-stub-title">Clojure Sessions01</h4>
<p class="post-stub-description">Three Little Pigs</p>


</a>
</li>

<li class="post-stub">
<a href="http://localhost:1313/2024/07/19/clj2/">
<h4 class="post-stub-title">Clojure Sessions02</h4>

<p class="post-stub-description">Advanced Three Little Pigs</p>


</a>
</li>

Expand Down
Loading

0 comments on commit 60a6810

Please sign in to comment.