Size: a a a

Emacs — русскоговорящее сообщество

2020 October 05

n

nvkv in Emacs — русскоговорящее сообщество
если, конечно, в манямирке борщелиспов догнивать, то в этом может быть и есть смысл
источник

AP

Alex Peresmeshnik in Emacs — русскоговорящее сообщество
nvkv
чем sexp лучше-то?
Читаемостью же
источник

a

akater in Emacs — русскоговорящее сообщество
nvkv
чем sexp лучше-то?
Секспы менее многословны, чем json, например, и старше.
источник

n

nvkv in Emacs — русскоговорящее сообщество
Alex Peresmeshnik
Читаемостью же
(let ((user '(("name" . "Василий") 
            ("surname" . "Митрофанович")
            ("lastname" . "Кочерга-Крестовоздвиженский")
            ("backpack" . (("small-compartment" . "Топор")
                           ("big-compartment" . "Голова жены"))))))
    (print ...))
источник

n

nvkv in Emacs — русскоговорящее сообщество
теперь напиши пожалуйста код, который достанет значение "big-compartment"
источник

n

nvkv in Emacs — русскоговорящее сообщество
akater
Секспы менее многословны, чем json, например, и старше.
и никому нахой не нужны
источник

n

nvkv in Emacs — русскоговорящее сообщество
toml еще менее многословен, чем sexp
источник

n

nvkv in Emacs — русскоговорящее сообщество
name = "Василий"
surname = "Митрофанович"
lastname = "Кочерга-Крестовоздвиженский"

[backpack]
small-compartment = "Топор"
big-compartment = "Голова жены"
источник

AP

Alex Peresmeshnik in Emacs — русскоговорящее сообщество
nvkv
(let ((user '(("name" . "Василий") 
            ("surname" . "Митрофанович")
            ("lastname" . "Кочерга-Крестовоздвиженский")
            ("backpack" . (("small-compartment" . "Топор")
                           ("big-compartment" . "Голова жены"))))))
    (print ...))
(cdadddr user)
источник

n

nvkv in Emacs — русскоговорящее сообщество
nvkv
name = "Василий"
surname = "Митрофанович"
lastname = "Кочерга-Крестовоздвиженский"

[backpack]
small-compartment = "Топор"
big-compartment = "Голова жены"
портрет перетербуржца, кстати
источник

n

nvkv in Emacs — русскоговорящее сообщество
Alex Peresmeshnik
(cdadddr user)
источник

n

nvkv in Emacs — русскоговорящее сообщество
пробуй тщательнее
источник

AP

Alex Peresmeshnik in Emacs — русскоговорящее сообщество
nvkv
пробуй тщательнее
Да че там пробовать. У меня макрос где-то завалялся на случай хешей, будет так: (extract-alist "backpack" "big-compartment")
источник

DL

Dmytro Lispyvnyi '(🌲... in Emacs — русскоговорящее сообщество
Alex Peresmeshnik
Да че там пробовать. У меня макрос где-то завалялся на случай хешей, будет так: (extract-alist "backpack" "big-compartment")
Кложуристы смеются
источник

(

(λv.vandr0iy) in Emacs — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
Кложуристы смеются
(let [user {:name "Vasiliy"
           :surname "Mitrofanovich"
           :lastname "Kocherga-Krestovozdvizhenskiy"
           :backpack {:small-compartment "Axe"
                      :big-compartment "Wife's head"}}]
  (get-in user [:backpack :big-compartment]))
> "Wife's head"
смеёмся
источник

DL

Dmytro Lispyvnyi '(🌲... in Emacs — русскоговорящее сообщество
(λv.vandr0iy)
(let [user {:name "Vasiliy"
           :surname "Mitrofanovich"
           :lastname "Kocherga-Krestovozdvizhenskiy"
           :backpack {:small-compartment "Axe"
                      :big-compartment "Wife's head"}}]
  (get-in user [:backpack :big-compartment]))
> "Wife's head"
смеёмся
И это они ещё не пытались деструктурировать на более сложных структурах
источник

AP

Alex Peresmeshnik in Emacs — русскоговорящее сообщество
(define-syntax <-
 (syntax-rules ()
   [(<- hs a)         (hash-refs hs a)]
   [(<- hs a b)       (hash-refs (hash-ref hs a) b)]
   [(<- hs a b c ...) (<- (hash-refs (hash-ref hs a) b) c ...)]))
источник

AP

Alex Peresmeshnik in Emacs — русскоговорящее сообщество
Решает. Теперь схемеры смеются +)
источник

a

akater in Emacs — русскоговорящее сообщество
nvkv
теперь напиши пожалуйста код, который достанет значение "big-compartment"
Miss.

Уж кто-кто, а юзеры секспов пишут обработчики произвольных DSL-ей чаще и охотнее кого угодно.
источник

(

(λv.vandr0iy) in Emacs — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
И это они ещё не пытались деструктурировать на более сложных структурах
на то есть https://github.com/redplanetlabs/specter , но у хаскеллеров, думаю, лучше получиться
источник