Konrad Scorciapino
@konr (defn novo-pedido [pedido](let [campos (extrair-campos-uteis pedido)adequada (adequar campos)](salvar adequada))
user> (novo-pedido amostra)..alguma coisa..user>
(defn novo-pedido [pedido](let [campos (extrair-campos-uteis pedido)_ (println campos) ;; <--------------adequada (adequar campos)](println adequada) ;; <---------------(salvar adequada))
user> (novo-pedido amostra)..CAMPOS....ADEQUADA....alguma coisa..user>
user> (extrair-campos-uteis pedido)..CAMPOS..user> (adequar (extrair-campos-uteis pedido))..ADEQUADA..user> (salvar (adequar (extrair-campos-uteis pedido)))..RESULTADO..
user> (-> pedido)..PEDIDO..user> (-> pedido extrair-campos-uteis)..CAMPOS..user> (-> pedido extrair-campos-uteis adequar).. ADEQUADA..user> (-> pedido extrair-campos-uteis adequar salvar)..RESULTADO..
user=> (use '[clojure.tools.namespace.repl :only (refresh)])
nil
user=> (refresh)
:reloading (com.example.util com.example.app com.example.app-test)
:ok
> cd /tmp
> lein new meu-projecto
...
>








(defvar elpa-packages '(starter-kit ido starter-kit-lisp starter-kit-bindingserc-hl-nicks ercn yaml-mode dired+ ;; cljclojure-mode nrepl evil evil-leader evil-paredit ac-nrepl paredit rainbow-delimiters auto-complete))





user> (use 'clojure.repl)niluser> (use 'clojure.pprint)nil
user> (/ 1 0)
ArithmeticException Divide by zero clojure.lang.Numbers.divide (Numbers.java:156)
user> (pst)
ArithmeticException Divide by zero
clojure.lang.Numbers.divide (Numbers.java:156)
clojure.lang.Numbers.divide (Numbers.java:3691)
user/eval2826 (NO_SOURCE_FILE:1)
clojure.lang.Compiler.eval (Compiler.java:6619)
...
nil
user>
user> (apropos "def")
(deftest- deftest default-handler default-middlewares defmethod defstruct defrecord with-redefs definline default-data-readers defn- *verbose-defrecords* with-redefs-fn defn defmacro *default-data-reader-fn* deftype definterface defmulti defonce defprotocol default-streams-impl)
user>
user> (doc defmulti)
-------------------------
clojure.core/defmulti
([name docstring? attr-map? dispatch-fn & options])
Macro
Creates a new multimethod with the associated dispatch function.
The docstring and attribute-map are optional.
Options are key-value pairs and may be one of:
:default the default dispatch value, defaults to :default
:hierarchy the isa? hierarchy to use for dispatching
defaults to the global hierarchy
nil
user>
user> (source ->)
(defmacro ->
"Threads the expr through the forms. Inserts x as the
second item in the first form, making a list of it if it is not a
list already. If there are more forms, inserts the first form as the
second item in second form, etc."
{:added "1.0"}
([x] x)
([x form] (if (seq? form)
(with-meta `(~(first form) ~x ~@(next form)) (meta form))
(list form x)))
([x form & more] `(-> (-> ~x ~form) ~@more)))
nil
user>
user> (pprint '(ns meu-projecto.test (:require [midje.sweet :refer :all] [clojure.pprint :refer :all] [meu-projecto.utils :refer :all] [meu-projecto.core :refer :all ])))(ns meu-projecto.test (:require [midje.sweet :refer :all] [clojure.pprint :refer :all] [meu-projecto.utils :refer :all] [meu-projecto.core :refer :all])) nil user>
user> (print-table [{:nome "Konrad" :altura "2m"} {:nome "Pedro" :altura "1.75m"} {:nome "Erick" :altura "1.62m"}])
| :altura | :nome |
|---------+--------|
| 2m | Konrad |
| 1.75m | Pedro |
| 1.62m | Erick |
nil
user>
(def hijacked (ref []))
(defn hijack [thing]
(dosync (alter hijacked conj thing))
thing)
(defn nuclear-bomb-access-code [context](hijack context)(let [blablabla ...inner-thing (hijack ...)...](hijack (final-function final-result)))
(doseq [bla blablabla](hijack bla)...)




!so clojure android