Caderno de Anotações - Programação

Table of Contents

1 INTRO

Esta é a minha tentativba de construir um "caderno" em Org Mode!

Pretendo anotar de maneira mais sistemática o que ando aprendendo com as diversas linguagens, e assim ficar menos perdido acerca delas.

2 Sketchy LISP

  • Fala de Scheme, não de (Common) LISP
  • Scheme:
    • Linguagem pequena
    • Sintaxe simples
    • Semântica clara
    • Notação Prefixa
    • Formato:

      ;; Formato:(procedimento argumento1 argumento2 ... )
      
      (+ 5 7 9) ;=> 5+7+9 (= 21)
      (f x)     ;=> f(x)
      (* (+ a b) (+ c d)) ;=> (a+b)*(c+d)
      
    • Evaluação Estrita

2.1 Programação Funcional

  • Calcular o fatorial!
    • Código em C:

      int factorial (int n)
        return n==0? 1: n * factorial(n-1);
      }
      
    • Código em Scheme:

      (define (factorial n)
        (cond ((zero? n) 1)
              (#t (* n (factorial (- n 1))))))
      

3 Practical Common LISP

Autor: Peter Seibel

3.1 Capítulo 1

  • Permite fazer mais e mais rápido!
    • Afirmação arrojada!
    • Tem que aprender para confirmar
  • História do pai lispeiro
    • Contato do pai com computadores: ASM
      • programa de coleta de dados
      • tese de mestrado em Física
    • Depois, passou a trabalhar em Farmácia
    • Empresa precisava de um programa
      • Modelagem do processo de produção
      • Time original usou FORTRAN
      • 50% do dinheiro, e nada para mostrar
    • Anos 80, boom da IA
      • e do LISP!
    • Pai foi até Carnegie Melon University
      • "Esse tal de LISP é bom?"
      • "Veja por você mesmo!"
      • "É, é bom mesmo!"
    • Pai resolve usar LISP (e o resto da grana)
    • Produto entregue em 1 ano!

3.1.1 Por que LISP?

3.1.2 História

3.1.3 Objetivo do livro

3.2 Capítulo 2

3.3 Capítulo 3: Base de Dados!

4 ANSI Common Lisp (Paul Graham)

4.1

Author: Tradutor Bastardo

Created: 2020-04-04 sáb 03:16

Validate