usakdsteen

ゆうさくですてぃーん

2016年08月19日のTweets

のTweets | のTweets | のTweets >
  1.  @neetsdkasu #
    @neetsdkasu

    特に関係はないけどdoを使うとinを省くとエラーでないとわかった
    ideone.com/uJZjz0
    さっきユキコダでテキトーに他人の解答眺めてたときに知った

  2.  @neetsdkasu #
    @neetsdkasu

    do構文はよくわからんので特に使う気はないのだけれど

  3.  @neetsdkasu #
    @neetsdkasu

    同じくユキコダの他人の提出眺めてて知ったのが
    ドトネトフレムワクで文字列のSplitはデリミタを配列で渡す必要ないことと
    エフシャアプで無名ぽいletバインディングができるということ(謎)
    ideone.com/wVlV87

  4.  @neetsdkasu #
    @neetsdkasu

    ideone.com/zfPsdR
    シーシャアプでも文字列のSplitのデリミタ直渡しできた

  5.  @neetsdkasu #
    @neetsdkasu

    だがしかし、できる根拠を見つけられていない
    もしかしてモノ固有の実装だったりするのか・・・?

  6.  @neetsdkasu #
    @neetsdkasu

    ローカルでドットネトフレムワク上でやってみたが普通に実行でけた・・・謎

  7.  @neetsdkasu #
    @neetsdkasu

    msdn.microsoft.com/ja-jp/library/…
    オーバーロードの解決のとこのコード例に確かに文字だけ渡す例が載ってるけど、それだけなんだよなあ・・・

  8.  @neetsdkasu #
    @neetsdkasu

    あー、コード例のすぐ下に解説あった・・・引数の属性の問題かparam arrayか

  9.  @neetsdkasu #
    @neetsdkasu

    引数に値を並べると配列扱いになるやつか可変長引数ってやつか

  10.  @neetsdkasu #
    @neetsdkasu

    メソッドの定義のparams今まで見落としてたなあ・・・そんなん知るかよって話・・・うおおおおおお

  11.  @neetsdkasu #
    @neetsdkasu

    VB6とジャヴァでは可変長引数の関数やメソッドは書いたことあるけどさあ・・・
    あんま意識してたことなかったなあ・・・可変長引数の関数やメソッドは平然と使ってるけど仕組みまで意識して使ってなかったしぃ、完全に記憶の外側だった

  12.  @neetsdkasu #
    @neetsdkasu

    en.wikibooks.org/wiki/Haskell/d…
    どうもdo構文じゃなくdo表記法というらしいがletのin省略の話は見つけた

  13.  @neetsdkasu #
    @neetsdkasu

    よおく見たらwikibooksかあ・・・

  14.  @neetsdkasu #
    @neetsdkasu

    wiki.haskell.org/Monads_as_comp…
    do notationはこれかな・・・

  15.  @neetsdkasu #
    @neetsdkasu

    このページ全体的には何書いてるかワケワカメ

  16.  @neetsdkasu #
    @neetsdkasu

    あとは無名ぽいバインディングの根拠を見つけるだけか・・・
    バインディングしないを示すアンダースコアとかなら使ったことあるけど
    ideone.com/v3IDUw

  17.  @neetsdkasu #
    @neetsdkasu

    msdn.microsoft.com/ja-jp/library/…
    見つけた
    ()はアンダースコアと同様にプレースホルダの役割があるのか
    アンダースコアとの違いはunit型専用のプレースホルダってところか
    ideone.com/SZNFOG
    ideone.com/uDoam3

  18.  @neetsdkasu #
    @neetsdkasu

    あれだ、むしろアンダースコアのほうの根拠が見当たらない
    ワイルドカードとしての説明は見当たるが・・・

  19.  @neetsdkasu #
    @neetsdkasu

    ワイルドカードはさらっと酷い紹介の感じかシンボルページからはmatch式とジェネリクスにしかリンクないけどfor..inのページ内にワイルドカードに触れてるしletに関しては説明まだ見つけられてないじょ

  20.  @neetsdkasu #
    @neetsdkasu

    関係ないけど2次元配列のスライスの*ワイルドカードというのを知った

  21.  @neetsdkasu #
    @neetsdkasu

    _と()でコンパイル結果違うのか試してみたがファイルサイズは変わらんかったけど
    バイナリは数バイトほど異なってるようだった
    ildasmにかけてみたら違いはMVIDとImage baseという部分だけで
    コードそのものには違いがなかった
    同じだった

  22.  @neetsdkasu #
    @neetsdkasu

    MVIDとImage Baseはググった感じだとどーでもいい情報ぽいな(どうでもよくない)
    前者はコンパイラがファイル区別するための管理IDってだけぽいし、後者は要は実行時のメモリ上配置場所(?)の指定って感じ
    プロのガチ開発とかでは使うのかもしれんが
    まぁどーでもいい情報だわ

  23.  @neetsdkasu #
    @neetsdkasu

    うーん、まぁletでプレースホルダと明示したい場合でunit型なら()を使うべきなんだろうな
    マニュアルにも載ってるわけだし
    でもユキコダで見たあの使い方するならdoバインディングでもいいような気がしなくもない
    ideone.com/O0DuBh

  24.  @neetsdkasu #
    @neetsdkasu

    うーん、ユキコダっつか全般的に let () = より do がいいような気がしなくもない
    つか let () = にしろ do にしろ使いどころがあるとしたら明示したいときってだけだろうなあ…開発系でやたらに省略せず分かりやすいコードを書くって場合の明示?可読性か

  25.  @neetsdkasu #
    @neetsdkasu

    let _ = と ignore もどっちを使うほうがいいかってとこありそうだな
    まぁたぶん後者のほうがいい、前者のletは戻り値を置く位置に置けないし、後者なら戻り値unitだから戻り値を置く位置における
    ただタイピング量がな…前者なら戻り値の位置に()でも置いとけばいいし

  26.  @neetsdkasu #
    @neetsdkasu

    let _ = だとヘスケル感覚だと何か実行されなさそうな不安な気分になる
    ヘスケルはいまだによく分かんないけど、まぁヘスケルは遅延評価だから実行されないわけだけど

  27.  @neetsdkasu #
    @neetsdkasu

    タイピング量と言っても2文字の差くらいか?
    ignoreは6字でまぁだいたいパイプ(?)というのと一緒に使うから+3字の9字
    let _ =は7字
    微差か

  28.  @neetsdkasu #

    また微妙時間余る事態
    くだらんついーとしすぎた

  29.  @neetsdkasu #

    バッファローは調査中か・・・

  30.  @neetsdkasu #

    スタートメニューにアンインストールのショートカット並べるの誤クリックしそうで嫌なんだけど

  31.  @neetsdkasu #
    @neetsdkasu

    っていうか誤クリックを乱発するおれ自身が嫌なんだけど

のTweets | のTweets | のTweets >