Skip to content

Commit 6417d9f

Browse files
committed
🐛 fix: substituir imagens SVG faltantes por componente MemoryDiagram
Resolve falha de build causada por referências a imagens inexistentes: - Substituir img_javascript/Fig5.14b.std.svg por <MemoryDiagram type="memory-vectors" /> - Substituir img_javascript/Fig5.15c.std.svg por <MemoryDiagram type="garbage-collection" /> - Figuras 5.14 e 5.15 agora usam visualizações interativas React - Build passa sem erros Fixes #build-error-chapter-5-images
1 parent 3909a7d commit 6417d9f

2 files changed

Lines changed: 2 additions & 2 deletions

File tree

docs/chapter-5/5.3.1.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Por exemplo, se `v` é um vetor, então `vector_ref(v, 5)` obtém a quinta entra
1919

2020
Podemos usar vetores para implementar as estruturas de par básicas necessárias para uma memória estruturada em lista. Vamos imaginar que a memória do computador está dividida em dois vetores: `the_heads` e `the_tails`. Representaremos a estrutura de lista da seguinte forma: um ponteiro para um par é um índice nos dois vetores. O `head` do par é a entrada em `the_heads` com o índice designado, e o `tail` do par é a entrada em `the_tails` com o índice designado. Também precisamos de uma representação para objetos que não sejam pares (como números e strings) e uma maneira de distinguir um tipo de dado do outro. Existem muitos métodos para realizar isso, mas todos se reduzem a usar *ponteiros tipados*, ou seja, estender a noção de "ponteiro" para incluir informação sobre o tipo de dado.[^4] O tipo de dado permite que o sistema distinga um ponteiro para um par (que consiste do tipo de dado "par" e um índice nos vetores de memória) de ponteiros para outros tipos de dados (que consistem de algum outro tipo de dado e qualquer coisa que esteja sendo usada para representar dados daquele tipo). Dois objetos de dados são considerados os mesmos (`===`) se seus ponteiros forem idênticos. A Figura 5.14 ilustra o uso deste método para representar `list(list(1, 2), 3, 4)`, cujo diagrama de caixas e ponteiros também é mostrado. Usamos prefixos de letra para denotar a informação de tipo de dado. Assim, um ponteiro para o par com índice 5 é denotado `p5`, a lista vazia é denotada pelo ponteiro `e0`, e um ponteiro para o número 4 é denotado `n4`. No diagrama de caixas e ponteiros, indicamos no canto inferior esquerdo de cada par o índice do vetor que especifica onde o `head` e o `tail` do par são armazenados. As localizações em branco em `the_heads` e `the_tails` podem conter partes de outras estruturas de lista (não de interesse aqui).
2121

22-
![Figura 5.14](img_javascript/Fig5.14b.std.svg)
22+
<MemoryDiagram type="memory-vectors" />
2323

2424
**Figura 5.14:** Representações de caixas e ponteiros e vetores de memória da lista `list(list(1, 2), 3, 4)`.
2525

docs/chapter-5/5.3.2.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ Agora usamos nossa linguagem de máquina de registradores para descrever o algor
3636

3737
A coleta de lixo é disparada quando esgotamos as células livres na memória de trabalho atual, ou seja, quando uma operação `pair` tenta incrementar o ponteiro `free` além do fim do vetor de memória. Quando o processo de coleta de lixo estiver completo, o ponteiro `root` apontará para a nova memória, todos os objetos acessíveis a partir da `root` terão sido movidos para a nova memória, e o ponteiro `free` indicará o próximo lugar na nova memória onde um novo par pode ser alocado. Além disso, os papéis da memória de trabalho e da nova memória terão sido intercambiados — novos pares serão construídos na nova memória, começando no lugar indicado por `free`, e a memória de trabalho (anterior) estará disponível como a nova memória para a próxima coleta de lixo. A Figura 5.15 mostra a disposição da memória logo antes e logo depois da coleta de lixo.
3838

39-
![Figura 5.15](img_javascript/Fig5.15c.std.svg)
39+
<MemoryDiagram type="garbage-collection" />
4040

4141
**Figura 5.15:** Reconfiguração da memória pelo processo de coleta de lixo.
4242

0 commit comments

Comments
 (0)