clojure-japan

ayato_p 2016-01-15T07:28:13.000079Z

こんにちは。ふと疑問に思ったのでちょっと意見ください。 require 書くときに次のような書き方ができると思いますけど、これで書いてるって人いますか?

ayato_p 2016-01-15T07:28:23.000080Z

(ns demo.core
  (:require [clojure
             [set :as set]
             [string :as str]]))

ayato_p 2016-01-15T07:31:06.000081Z

プレフィックスをまとめるような書き方ですけど、たぶんスタイルガイドとかでは言及されてなかったきがするので(あったら御免なさい><)

athos 2016-01-15T07:34:28.000082Z

🖐️

athos 2016-01-15T07:35:12.000083Z

厳密にはプレフィックスを囲うのは (clojure …) とリストにするべきだったと思いますけど。

ayato_p 2016-01-15T07:36:26.000085Z

ほうほう、でもこれ cljr-refactor の clean ns で自動的にベクターにされるんですよね…

athos 2016-01-15T07:37:01.000086Z

まぁ、むしろリストで書いてるコードの方が少ない感じはします。

ayato_p 2016-01-15T07:37:51.000087Z

プレフィックスで囲うのは好みの問題ですかね、やっぱり。

athos 2016-01-15T07:39:39.000088Z

自分のプロジェクトの名前空間だと共通するプレフィックスを持つものが続くことが多いので、個人的にはわりと使ってますね。

ayato_p 2016-01-15T07:43:21.000089Z

なるほど。

ayato_p 2016-01-15T07:45:59.000090Z

あまり、ライブラリとかでこのスタイルって見ない気がするんで、使われてるのか気になったんですよね。

meow 2016-01-15T12:35:14.000091Z

moarji

fhanreich 2016-01-15T16:30:53.000093Z

@ayato_p: そういう書き方知らなかったです。うちはvectorなしでrequireしてます。勉強になりました。ありがとう!

2016-01-15T16:45:16.000094Z

その書き方は普通に使うスタイルガイド(https://github.com/bbatsov/clojure-style-guide#comprehensive-ns-declaration ) に書いてないけど、全然いいと思います

2016-01-15T16:46:04.000097Z

一番重要なのは :require :all:use を使わない方がいいっていうことだと思います

2016-01-15T16:48:17.000101Z

ベクターでできると知らなかったけど、勉強になりました。

fhanreich 2016-01-15T19:38:47.000105Z

@ddellacosta 私はよく:referを使います。ありがとう :simple_smile:

2016-01-15T19:39:38.000106Z

あ、間違いました。 :require :all じゃなくて :refer :all と書くつもりでした。笑

2016-01-15T19:40:49.000108Z

@fhanreich そうですね、 :refer ってよく使いますね。

fhanreich 2016-01-15T19:41:13.000112Z

@ddellacosta: I think we got what you meant 😉

2016-01-15T19:41:20.000113Z

good. 😄