[解決済み] .の違いは何ですか?(ドット)と$(ドルマーク)の違いは何ですか?
2022-03-23 15:13:53
質問
ドットの違いは何ですか?
(.)
とドル記号
($)
?
私の理解では、どちらも括弧を使わなくてもいいようにするための構文上の糖分です。
どのように解決するのですか?
その
$
演算子は、括弧を避けるためのものです。 この演算子の後に現れるものは、その前に現れるものに優先します。
たとえば、次のような行があったとします。
putStrLn (show (1 + 1))
もし、これらの括弧を取り除きたいのであれば、次のどの行でも同じことができます。
putStrLn (show $ 1 + 1)
putStrLn $ show (1 + 1)
putStrLn $ show $ 1 + 1
の主な目的は
.
演算子は、括弧を避けるためではなく、関数を連結するためのものです。右側に表示されるものの出力を、左側に表示されるものの入力に結びつけることができる。 これも通常、括弧の数は少なくなるが、動作は異なる。
同じ例に戻ると
putStrLn (show (1 + 1))
-
(1 + 1)
は入力がないので.
演算子を使用します。 -
show
を取ることができます。Int
を返しString
. -
putStrLn
を取ることができます。String
を返しIO ()
.
を連鎖させることができます。
show
から
putStrLn
このように
(putStrLn . show) (1 + 1)
もし、括弧が多すぎて気に入らない場合は
$
演算子を使用します。
putStrLn . show $ 1 + 1
関連
-
[解決済み] Haskellバイナリツリー
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] パラメータに**(ダブルスター/アスタリスク)、*(スター/アスタリスク)がありますが、これはどういう意味ですか?
-
[解決済み] Pythonで改行(行継続)をするにはどうしたらいいですか?
-
[解決済み] PHPの文字列で、シングルクオートとダブルクオートの違いは何ですか?
-
[解決済み] .の違いは何ですか?(ドット)と$(ドルマーク)の違いは何ですか?
-
[解決済み] Bashのシングルクォートとダブルクォートの違い
-
[解決済み] 割り算で使う場合の「/」と「//」の違いは何ですか?
-
[解決済み] 読んで学ぶべき良いHaskellのソース [終了しました]。
-
[解決済み】Scalaにおける中括弧と括弧の正式な違い、また、どのような場合に使用すべきなのか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 機能における非網羅的なパターン【重複あり
-
[解決済み] Hindley-Milnerのどの部分が理解できないのでしょうか?
-
[解決済み] RustのtraitとHaskellのtypeclassの違いは何ですか?
-
[解決済み] ghciで関数を複数行に渡って定義するには?
-
[解決済み] Haskell における `mod` と `rem` の違い
-
[解決済み] GHCiの複数行コマンド
-
[解決済み] GHCはなぜこんなに大きいのか/大きいのか?
-
[解決済み] なぜ依存型でないのか?
-
[解決済み] TLSサーバーを実装するためのHsOpenSSL APIの適切な使用法
-
[解決済み] Haskellの関数合成(.)と関数応用($)イディオム:正しい使い方