並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1258件

新着順 人気順

引数の検索結果1 - 40 件 / 1258件

  • Perlでコマンドラインオプションの解析に Getopt::Long を使う時、絶対に忘れてはいけない引数 - たごもりすメモ

    Perlでコマンドラインオプションをparseしようと思うと組込みモジュールとしては Getopt::Std と Getopt::Long がある。が、long style option *1 つまり --option-name のようなオプションを解釈してくれるのは Getopt::Long だけだ。なので普通はこちらを使おう。 ただし 絶対にデフォルト、つまり以下のようにして使ってはいけない。 use Getopt::Long; my (@primary, @secondary, $silent); GetOptions( "server-primary|p=s" => \@primary, "server-secondary|s=s" => \@secondary, "silent|S" => \$silent ); これダメ! 絶対ダメ! 死ぬ! 最初に結論を書く 必ず以下のように

      Perlでコマンドラインオプションの解析に Getopt::Long を使う時、絶対に忘れてはいけない引数 - たごもりすメモ
    • PHP で引数をそのまま返す関数を作っておくと便利 - IT戦記

      PHP では以下のように new してすぐメソッドを呼べない <?php new DateTime()->getOffset(); なので、引数をそのまま返す関数を作ってやると <?php function expr($a) { return $a; } expr(new DateTime())->getOffset(); // OK! 便利だなー おまけ 配列アクセス用のも作っておくと便利 <?php function expr($a) { return $a; } function idx($array, $i) { return $array[$i]; } echo idx(idx(expr(new DateTimeZone('Asia/Tokyo'))->getTransitions(), 0), 'abbr') . "\n"; おまけ2 無名関数をそのまま呼ぶときにも使える。 <

        PHP で引数をそのまま返す関数を作っておくと便利 - IT戦記
      • 「化学」を「ばけがく」と読むみたいな例を「私立」を「わたくしりつ」と読む以外に思いつかない話…「抜糸」「引数」「架線」など例が続々

        西村まさゆき @tokyo26 ☎09038043720/ ✉tokyo26@gmail.com/ ライター。企画、執筆。移動好き。好物は海藻。東京都中央区月島在住(鳥取県倉吉市出身)/著書『日本の路線図』三才ブックス/『たのしい路線図』グラフィック社/『ふしぎな県境』中公新書/『ファミマ入店音の正式なタイトルは大盛況に決まりました』笠倉出版社 dailyportalz.jp/writer/kijilis…

          「化学」を「ばけがく」と読むみたいな例を「私立」を「わたくしりつ」と読む以外に思いつかない話…「抜糸」「引数」「架線」など例が続々
        • C言語で可変長引数をとる関数を、型安全に書く方法

          C言語の可変長引数は、型安全でない(まちがった型の引数を渡してもコンパイルエラーにならない)とされています。これは言語仕様の理解としては正しいのですが、特定の型の引数を任意の個数とる関数に限っては、マクロを使うことで型安全性を確保することができます。 任意の個数のdoubleを引数にとり、その和を返す関数「sumf」を例にあげて説明します。 C言語の可変長引数機構を使ってsumfを定義すると、以下のようになります。 #include <math.h> #include <stdarg.h> #include <stdio.h> static double sumf(double nfirst, ...) { double r = 0, n; va_list args; va_start(args, nfirst); for (n = nfirst; ! isnan(n); n = va_a

          • 引数を処理する | UNIX & Linux コマンド・シェルスクリプト リファレンス

            引数を処理する 引数とは? 引数 (ひきすう) とはコマンド (シェルスクリプト) 実行時に、コマンドラインから渡される値のことである。 引数は実行時にプログラム内で参照され、シェルスクリプトの実行結果 (動作) に影響を与える。引数はパラメータと呼ばれることもある。 → コマンド名に続けて引数としてコマンドに渡したい値のリストを指定する。 引数はコマンド名に続けてスペース区切りで指定する。引数として指定可能な値の数は各コマンドにより異なる。 【参考】 引数とオプション コマンド実行時に指定する値には引数とオプションがある。引数は実行に使用されるファイル名や出力されるメッセージなどを指定するのに使用される。 一方、オプションは -f などのように - (ハイフン) とアルファベット1文字で表記され、主にコマンドの振る舞い方を指定する目的で使用されるものである。 また、オプションは -a -

              引数を処理する | UNIX & Linux コマンド・シェルスクリプト リファレンス
            • 【C言語】引数なしの関数には void を書いた方がよいという話 - 0x19f (Shinya Kato) の日報

              C言語で引数なしの関数を書くときに void を書かないのと書くのとで挙動が違うなんて話を聞いたことはないでしょうか? つまり void func() {} と void func(void) {} で挙動が違うという話ですね。 自分も話だけ聞いたことがあったものの2つがどう違うのかはわかっていなかったため、C言語の規格を読みながら何が違うのかを調べてみました。 結果だけ述べると、この2つの書き方は同じように見えて実は明確な違いがあり、引数がない関数を定義/宣言する場合には後者を使うのが適切です。 とは言え、2つの書き方で違いがあるとかほんとかよ?と思う方もいると思うので、まずはこの二つがどう違うのか見ていきましょう。 2つの関数の書き方の違い 早速ですが、以下のプログラムを見てみましょう。 // func_empty.c void func() {} int main(void) { f

                【C言語】引数なしの関数には void を書いた方がよいという話 - 0x19f (Shinya Kato) の日報
              • cdの引数を絶対パスにしてコマンドヒストリに残す - ももいろテクノロジー

                cdの引数が相対パスのままコマンドヒストリに残って便利な例が思いつかないので、絶対パスでコマンドヒストリに残すようにする。 具体的には、以下のシェル関数を.bashrcに書く。 if [[ -n "$PS1" ]]; then cd() { command cd "$@" local s=$? if [[ ($s -eq 0) && (${#FUNCNAME[*]} -eq 1) ]]; then history -s cd $(printf "%q" "$PWD") fi return $s } fi いくつかの重要なポイントを以下に記す。 cdの定義を上書きしているが、このような場合中で普通にcdを呼ぶと再帰してしまうためcommand組み込みコマンドを使う。 "$@"の代わりに"$1"を使うことはできない。cdを引数なしで呼んだときホームディレクトリに移動しなくなってしまう。 cdの

                  cdの引数を絶対パスにしてコマンドヒストリに残す - ももいろテクノロジー
                • 引数の型を何でも List にしちゃう奴にそろそろ一言いっておくか - Qiita

                  この記事は C# その2 Advent Calendar 2018 の第一日の記事である。 はじめに この記事では、主にエンタープライズアプリケーション(SI、企業向けの業務システムやパッケージ製品)の開発に於いて、新規開発ではなく修正や拡張を行うようなシーンを想定して、無駄な工数をなるべく削減すべく自分なりに考えて実践しているベストプラクティスを書いている。 新規開発の場合でも、将来の拡張や修正が見込まれるはずなので、考慮すべき事は同じだ。 競技プログラミングや、組み込み開発の場合でも基本的な考え方は適用可能だが、メモリ効率やパフォーマンスを考慮する必要もあるので、あえて配列を使ったり、逸脱するようなケースもあるだろう。 対象とする読者層は、C#プログラミング歴1年以上、SIer やユーザー企業に所属(もしくは常駐)し、特に複数人チームでの開発に携わる若手プログラマ、初級から中級へのステ

                    引数の型を何でも List にしちゃう奴にそろそろ一言いっておくか - Qiita
                  • [Android] JSONの整形ってこんなに簡単にできるの!? 〜ログが劇的に見やすくなる魔法の引数〜 | DevelopersIO

                    [Android] JSONの整形ってこんなに簡単にできるの!? 〜ログが劇的に見やすくなる魔法の引数〜 JSON使ってますか? モダンなアプリ開発とJSONは切っても切れない関係です。 今、この記事を見ているあなたもきっとJSONに触れたことがあるでしょう。 今回は、Android開発時に覚えておくと便利なJSONの小技を紹介します。 こんな時に使うと便利です ネットワークとの通信を行うと、レスポンスがJSONで返ってくるってことよくありませんか? そんなときは、大抵ログにレスポンスの内容を表示するものです。 この「ログ出力」するときに今回紹介する小技を使うと、ログが劇的に見やすくなってどんな値が入っているのかが一目でわかるようになります! 結局どうすればいいの? 実際なんてことないものなんで、さらっとご紹介します。 JSONを文字列に変換するときにJSONObject#toString

                      [Android] JSONの整形ってこんなに簡単にできるの!? 〜ログが劇的に見やすくなる魔法の引数〜 | DevelopersIO
                    • jQuery.stopのjumpToEnd引数が便利すぎてやばい(JavaScript Advent Calendar 2010 5日目) - KAYAC engineers' blog

                      JavaScript Advent Calendar 20105日目のago(@kyo_ago)です。 jQueryのソースを眺めててjQuery.stopに引数があることに気づいたので調べてみました。 まず、簡単なスライドダウンメニューを作ってみたいと思います。 jQuery.stop 1 - jsdo.it - share JavaScript, HTML5 and CSS JS部分は以下の通りです。 $(function () { $('div').hover(function () { $(this).find('ul').slideDown(); }, function () { $(this).find('ul').slideUp(); }); }); 少し触ると分かると思いますが、マウスがmenuから外れた後も何度も.slideDown、.slideUpが実行されるため非常に

                        jQuery.stopのjumpToEnd引数が便利すぎてやばい(JavaScript Advent Calendar 2010 5日目) - KAYAC engineers' blog
                      • 引数なしのgit pushは危険なので気をつけましょう · DQNEO日記

                        絨毯爆撃pushの例 いまmasterブランチに、未プッシュのコミットがあるとします。 ここで、新たにbr1ブランチを作ってチェックアウトします。 $ git checkout -b br1 master $ git branch * br1 master br1ブランチでコミットを作ります。 echo hello >> hello.txt git add . git ci -m "add file" 引数なしでプッシュします。 git push すると、どこに何がpushされると思いますか? 実は、master -> masterにpushされます。 masterがまだpushできる状態でない場合、これはかなり痛い。すごく痛い。頭が頭痛でおなかが腹痛。 しかもpushしたかった当のbr1ブランチはpushされないというオチ。(リモートにbr1ブランチがない限りは) この挙動は大半のユーザ

                          引数なしのgit pushは危険なので気をつけましょう · DQNEO日記
                        • Kentaro Haraさんのツイート: "Googleの2億行のソースコードを解析した結果、関数に渡す引数の順番を間違える系のバグは、引数の個数が6個以上になったときに著しく増えるので、引数の個数は5個以下が望ましいことがわかったという話。 https://t.co/R5yy31pDyu"

                          Googleの2億行のソースコードを解析した結果、関数に渡す引数の順番を間違える系のバグは、引数の個数が6個以上になったときに著しく増えるので、引数の個数は5個以下が望ましいことがわかったという話。 https://t.co/R5yy31pDyu

                            Kentaro Haraさんのツイート: "Googleの2億行のソースコードを解析した結果、関数に渡す引数の順番を間違える系のバグは、引数の個数が6個以上になったときに著しく増えるので、引数の個数は5個以下が望ましいことがわかったという話。 https://t.co/R5yy31pDyu"
                          • Java で引数の null チェックで迷った話 - yukungのブログ

                            これは Java Advent Calendar 2015 の 15 日目の記事です。 昨日は @opengl_8080 さんの Byteman 使い方メモ+α でした。明日は @irof さんです。 前置き ついこないだチームでちょっとだけ話題に上って、みんなある程度指針は持っているものの、割と悩みつつ明確に答えを出せなかったので、もっと良い意見があればと思って晒してみます。まぁよくある話だし、Java 8 で Optional が使えるようになって null について語られるケースが増えたと思うので、再考するちょうどよい機会になればいいなーと思います。初心者向けです。 どう処す?処す? こんな状況の時にあなたならどうしますか? // Generics なのは例です。String でもなんでもいいです public T doSomething(T input) { // input が

                              Java で引数の null チェックで迷った話 - yukungのブログ
                            • MeCabのコマンドライン引数一覧とその実行例 | mwSoft

                              -r --rcfile 使用するリソースファイルを指定する リソースファイルとは、辞書ディレクトリに入っている「dicrc」ファイルを指します。 試しにシステム辞書の「dicrc」ファイルをコピーして、「dicrc2」というファイルを作り、その中の「; simple」の「EOS」を「eos」に書き換えます。するとこんな風になります。 // リソースを指定せずに実行 $ echo テスト | mecab -O simple テスト 名詞-サ変接続 EOS // リソースを改変したdic2に指定して実行 $ echo テスト | mecab -r dicrc2 -O simple -d /usr/local/lib/mecab/dic/naist-jdic テスト 名詞-サ変接続 eos 我が家の環境では、システム辞書ディレクトリをカレントディレクトリとした状態にするか、「-d」でシステム辞書

                              • 初心者プログラマーのジレンマがわかった!プログラムに「変数」とか「引数」とかの「日本語」いらないし! : KNN KandaNewsNetwork 4knn.tv

                                【追記】 突如としてバズってしまったので、少し、追記しておきますね。 初心者がプログラム初心者本に、接して(特に自分)いつもガックリきてしまうのが、用語の解説が、延々と続く初心者本の多い事。 基本的にプログラムしたい!と思った人は、何かを動かしたい!とか、何かに命を吹き込みたいと思ってコードを書きたいと思うのです。 なのに、延々とそのコードを書くための文法やお作法を教える教え方で落ちこぼれている人は多いはず。 Rest of yours なのです。 プログラマー以外の人にもプログラムに親しんでもらい、教養としてのプログラム知識も必要な時代だと考えております。 【/追記】 初心者プログラマーのジレンマがやっとわかった! ボクは、FortranやCOBOLに始まって、もうプログラミング歴は、HELLO WORLDをすべての言語で、書き続けて30年になるが、いまだにプログラムができない!そう、ず

                                  初心者プログラマーのジレンマがわかった!プログラムに「変数」とか「引数」とかの「日本語」いらないし! : KNN KandaNewsNetwork 4knn.tv
                                • 引数の明示という観点からのPerlモジュール群 | hirobanex.net

                                  Perlモジュールのバリデーターと呼ばれるジャンルのモジュールなどをバリデーションという観点ではなく、引数を明示するという観点から整理しました。 バリデーターの種類 バリデーターというものは、一般的に引数が期待される型など(整数か、文字列か、URLか、メアドか等)になっているかどうかをチェックするというものです。特に、Webアプリにおけるフォームから入力されるデータのチェックに活用されることが多いです。そういういった意味から、Perlのバリデーターモジュールはフォーム系と非フォーム系に分類することができます。 フォーム系のバリデーター等 FormValidator::Lite CPAN本にも紹介されている強力なフォームバリデーターです。フォームバリデーターとしては、フォームの型の定義、チェック、エラーメッセージの定義、が必要ですが、やりたいであろうことのだいたいがそろっているモジュールで実

                                  • Javaでコマンドライン引数を処理する

                                    本文書は、Javaにおけるコマンドライン引数の処理方法について検討・紹介するものです。まずはじめに、コマンドライン引数を含むパラメータの設定方式について整理し、それから本題のコマンドライン引数の処理について見ていくことにします。コマンドライン引数の処理には、JDKの範囲でコーディングする方法の他、オープンソースのライブラリを利用する方法について紹介します。最後に、アノテーションを使ったコマンドライン引数の処理を作っていきます。 プログラムにおけるパラメータ設定 はじめに 多くのプログラムでは、パラメータとして設定値を外から与えることが必要となります。パラメータをプログラム中に記述する、いわゆるハードコーディングをしてしまうと、パラメータを変更するためにはソースコードを修正して再ビルドすることになってしまうからです。したがって、プログラムを実行するときにパラメータを外部から取り込んでその設定

                                    • Rubyのデフォルト引数で再帰 - ( ꒪⌓꒪) ゆるよろ日記

                                      Rubyのデフォルト引数では、他の引数に依存した式を書ける。地味に便利。 [1] pry(main)> def foo(a, b = a * 2) [1] pry(main)* puts b [1] pry(main)* end => nil [2] pry(main)> foo(3) 6 => nil 再帰もかける。デフォルト引数で再帰させてフィボナってみる [3] pry(main)> def fib(n,r = (n <=1 ? n : fib(n-2) + fib(n-1))) [3] pry(main)* r [3] pry(main)* end => nil [4] pry(main)> 11.times do |n| puts "fib(#{n}) => #{fib(n)}" end fib(0) => 0 fib(1) => 1 fib(2) => 1 fib(3) =>

                                        Rubyのデフォルト引数で再帰 - ( ꒪⌓꒪) ゆるよろ日記
                                      • Pythonのコマンドライン引数処理の決定版 docopt (あとJuliaに移植したよ) - りんごがでている

                                        Pythonをよく使う人にはよく知ってる人も多いのですが、docoptという便利ライブラリがあります。 docoptはargparseやoptparseのようなコマンドライン引数をパースするライブラリなのですが、その発想がコロンブスの卵なのです。 例えばPython標準のargparseだと、argparseのAPIを組み合わせてパーサを組み立てるわけです。するとパーサと一緒にヘルプも作ってくれて、"program --help"などとすると自動生成されたヘルプを表示してくれるようになります。 しかし、そのAPIを覚えるのが大変で、毎回ドキュメントを読まないと忘れちゃうわけです。 import argparse parser = argparse.ArgumentParser(description='Process some integers.') parser.add_argument

                                          Pythonのコマンドライン引数処理の決定版 docopt (あとJuliaに移植したよ) - りんごがでている
                                        • 田崎晴明著「統計力学I」(培風館)の注釈に「対数の引数は必ず無次元になるとはいえない」とあり、これが理解できません。何か... - Yahoo!知恵袋

                                          田崎です。拙著をお読みいただき、ありがとうございます。 これは「自分で考えて」というつもりで注に投げたのですが、軽く説明します。 まず、まともな物理の関係式で A = exp(B) というのがあったとしたら、本に説明した理由により B は無次元。だから A も無次元。 これをひっくり返せば、 B = log(A) ですから、この場合はログの引数 A も無次元です。 しかし、ここで A = C D と書けて、しかも C と D が次元をもっているということは可能です。すると上の式は B = log(C) + log(D) となります。ちゃんと左辺は無次元ですが、ログの中身は次元をもっている。 これは別に悪い計算でも何でもありません。ぼくの本の先の方をご覧いただくと、きっと、これに相当することをやっている部分がたくさんあるはずです。 「対数の引数も無次元にしたほうが見通しがいいから、なるべくそ

                                            田崎晴明著「統計力学I」(培風館)の注釈に「対数の引数は必ず無次元になるとはいえない」とあり、これが理解できません。何か... - Yahoo!知恵袋
                                          • コマンドラインプログラムにおける引数、オプションなどの標準仕様 | プログラマーズ雑記帳

                                            コマンドラインプログラムの引数、オプションといったインターフェースには ちゃんと仕様、ガイドラインといったものが存在しています。 Unix(Linux) では慣習としてなんとなく合うものなのですが、 Windows や Java のプログラムなどでは、インターフェースがめちゃくちゃなプログラムも結構あります。 今回はコマンドラインプログラムの標準的なインターフェースの仕様、動作を紹介します。 プログラムを作る際の参考にしてもらえればと思います。 標準インターフェースはよくあるケースを考慮されて作られているものです。 自分の作っているプログラムは標準的なケースと違うといったことがあるかもしれません。 しかし、 標準のスタイルは合わせること自体に意味があります。 作成する場合にはなるべく標準インターフェースにあわせて作るべきだと思います。 Windows or Unix スタイル コマンドライ

                                            • Android:引数はthisか?getApplicationContextか?ActivityとApplicationの違い

                                              Android:引数はthisか?getApplicationContextか?ActivityとApplicationの違い AndroidにはContextを引数にとるAPIが数多く存在しています。 例えばArrayAdapterのコンストラクタArrayAdapter<T>(Context, int)があります。 このコンストラクタ。Activityで使用する場合、第一引数へはthisとしてActivityContextを指定すべきでしょうか? それともthis.getApplicationContext()としてApplicationContextを指定すべきでしょうか? ContextはAndroidアプリを作成している場合によく使用されるクラスですが、その役割や 詳細は下記のような理由から不透明な部分が多いです。 Contextがアプリケーションに関する様々な情報へのインタフェ

                                                Android:引数はthisか?getApplicationContextか?ActivityとApplicationの違い
                                              • JavaScriptの即時関数とは何か。意味やメリット、引数の使い方についてまとめてみた。 | ゴトーのブログ

                                                  JavaScriptの即時関数とは何か。意味やメリット、引数の使い方についてまとめてみた。 | ゴトーのブログ
                                                • シェルスクリプト 引数の処理方法

                                                  サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは本日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

                                                  • Ruby のメソッド定義時に仮引数があるとき、それをカッコでくくらないのは私だけなの? - STORES Product Blog

                                                    テクノロジー部門で Ruby インタプリタの開発をしている笹田です。RubyKaigi 2024 楽しみですね。 さて、Ruby のメソッドを定義するとき、仮引数がある場合、カッコを省略することができます。 def foo(x, y) end def bar x, y end bar の定義の方法ですね。私は好んでこの書き方をしてたんですが、同僚の遠藤さんに「そんな書き方をしているのは今時笹田だけだ」と言われてショックを受けたので、ちょっと調べてみました。 ちなみに、カッコがないと使えないメソッド定義の方法があるので、その時には涙を呑んでカッコをつけます。 def foo(kw:) # 必須キーワード引数 end def bar(&) # 無名ブロック引数 end 補足1:Ruby では「メソッド呼び出し時にカッコをつけるかどうか」にいろいろな論争がありますが、ここでは「メソッドを定義する

                                                      Ruby のメソッド定義時に仮引数があるとき、それをカッコでくくらないのは私だけなの? - STORES Product Blog
                                                    • cloned.log - PHPの参照渡しは関数の引数だけじゃない

                                                      PHPの参照渡しについて。参照渡しについて説明しているサイトでは圧倒的に関数の引数を例にしていることがほとんど。例えば以下のような感じ。 <?php $v = "default"; rewrite($v); print $v; function rewrite(&$arg) { $arg = "HelloWorld"; } これで「HelloWorld」と出力される。$vを直接変更していないのに、rewrite関数内での変更が$vに対して有効になっていると解く。関数の引数に「&」を付けなければ上書きされることはない(値渡し)。 最初はこれが一番判り易いけれど、もう一歩、変数代入の参照渡しと関数戻り値の参照渡しにも触れて欲しいところ。特に関数戻り値の参照渡しについて触れているサイトが本当に少ない。 変数代入の参照渡しというのは以下のコードのような場合。 <?php $a = "default

                                                        cloned.log - PHPの参照渡しは関数の引数だけじゃない
                                                      • Swiftの関数の引数は、常に一つ - Qiita

                                                        だとしたら、Swiftではカリー化は不要ということになってしまう。 すなわち、ざっくり言うとカリー化とは複数の引数を1つに減らすことを指します - Swiftで関数のカリー化(currying)入門 Swiftの関数は、つねに一つの値を受け取り、一つの値を返すのだから。 以下のコードを動かしてみれば、それがわかる。 func call<A,R>(f:A->R, a:A)->R { return f(a) } func id(i:Int)->Int { return i } func add(x:Int, y:Int)->Int { return x + y } call(id, 42) // 42 call(add, (21,21)) // 42 上記のcall()は、「『型Aの値を一つだけ取って型Rの値を返す関数』と『型Aの値』を取って『型Rの値』を返す関数」なはずなのに、「IntとIn

                                                          Swiftの関数の引数は、常に一つ - Qiita
                                                        • hogehoge - addEventListener の第三引数について

                                                          hogehoge @teramako

                                                            hogehoge - addEventListener の第三引数について
                                                          • 型引数の基本から学ぶ、FreeモナドとCoyoneda - AweKuit日記

                                                            このエントリはScalaアドベントカレンダーの3日目です。昨日は Kuchitama さんのScalaがつないでくれた縁-NetflixMeetup Kyoto 開催後記- でした。 前おき この記事は、タイトル通りFreeモナドとCoyonedaを扱うものの、あまりそれらの直接的な話やモナモナした話ではなく、そこに至るまでの実装のあれこれを『Scalaのプログラミングとして』手探りで追ってみよう、というものです。 その過程で、特に型引数(型変数)や高階型や、それらが継承時にどう扱えるかというあたりのScalaの基本にたっぷり触れます。 なので、Freeモナドに興味がない方でも 型引数で A とか F[_] とか出てくると、まだちょっとこわい Scalaでいざプログラミングすると型が合わずつまづく事が多い という方にも、役に立つ部分があると思うので参考にぜひ読んでみてもらいたいです。 もち

                                                              型引数の基本から学ぶ、FreeモナドとCoyoneda - AweKuit日記
                                                            • 多くのプログラミング言語に危険な脆弱性 ~Windows環境の引数エスケープ処理に不備「Rust」「PHP」「Node.js」「Haskell」などに影響/

                                                                多くのプログラミング言語に危険な脆弱性 ~Windows環境の引数エスケープ処理に不備「Rust」「PHP」「Node.js」「Haskell」などに影響/
                                                              • JavaScript で引数束縛: Days on the Moon

                                                                引数束縛 (カリー化) の話。まずは「JavaScriptでカリー化」(檜山正幸のキマイラ飼育記)。タイトルを見てどこかで聞いたような話だなと思ったら「関数の変形」(Effecttive JavaScript - Dynamic Scripting) だった。だが、前者は文字列に戻してから評価というのが力技っぽくて個人的に好きでないし、後者は汎用的過ぎていささかわかりにくい。そこで今回は先頭の引数から束縛していくというのに的を絞ってみたいと思う。 まず第 1 引数のみを束縛する場合。Function#apply を使えば引数を配列として渡せるので、束縛された値と後から渡された引数とを連結してやればいいのではないか。 function curry(func) { return function (first) { return function () { var args = Array.p

                                                                • Big Sky :: Go 言語の struct の実体を引数で(なるべく)渡せない様にするテクニック

                                                                  Go 言語は struct のレシーバがポインタの場合は実体であってもポインタの場合であっても呼び出せるので、もし struct が参照カウントに従い動作する様な場合は実体でコピーされてしまっては困る場合があります。例えば以下の様なインタフェースを考えます。 package main import ( "fmt" "sync/atomic" "time" ) type foo struct { n int64 q chan struct{} } func (f *foo) Add() { if atomic.AddInt64(&f.n, 1) == 1 { f.q = make(chan struct{}) } } func (f *foo) Done() { if atomic.AddInt64(&f.n, -1) == 0 { f.q <- struct{}{} } } func (f

                                                                    Big Sky :: Go 言語の struct の実体を引数で(なるべく)渡せない様にするテクニック
                                                                  • Big Sky :: Re: Goでコマンドライン引数と環境変数の両方からflagを設定したい

                                                                    Goでコマンドライン引数と環境変数の両方からflagを設定したい - Qiita Goで実装したプログラムでオプションをコマンドライン引数から取るには標準の `flag` パッケージを使いますが、値を環境変数からも読みたいことがあります。(特に Docker で動かす場合) htt... http://qiita.com/sfujiwara/items/f177d85e9c10f4c34fb6 実は結構簡単に出来ます。github.com/namsral/flag に依存したくない場合や github.com/namsral/flag が実は flag 互換で無かった、なんて問題が見付かった場合に使えるハックです。 オリジナルのコード package main import ( "flag" "fmt" ) func main() { var age int flag.IntVar(&ag

                                                                      Big Sky :: Re: Goでコマンドライン引数と環境変数の両方からflagを設定したい
                                                                    • 「Excel」でMapやReduceなどが利用可能に~ラムダを引数にとる7つの関数がテスト導入/フィルタリングや集計に役立つ

                                                                        「Excel」でMapやReduceなどが利用可能に~ラムダを引数にとる7つの関数がテスト導入/フィルタリングや集計に役立つ
                                                                      • javascript - Array.prototype.slice.apply(arguments) // 引数一発配列化 : 404 Blog Not Found

                                                                        2010年04月28日22:00 カテゴリLightweight Languages javascript - Array.prototype.slice.apply(arguments) // 引数一発配列化 これなのですが… 細かいJavaScriptの仕様や習慣やテク集 - 三等兵 var func = function() { var leng = arguments.length; for(var i = 0, arr = []; i < leng; i++){ arr[i] = arguments[i] * 10; } alert(arr); }; こう書けます。 var func = function() { var args = Array.prototype.slice.apply(arguments); var arr = args.map(function(n){ r

                                                                          javascript - Array.prototype.slice.apply(arguments) // 引数一発配列化 : 404 Blog Not Found
                                                                        • シェルスクリプトでスクリプトの引数をループする方法

                                                                          B! 63 0 0 0 今更ながら知ったこと。 通常の方法 in無し The for Loop (POSIX Shell Command Language) ;の省略 man bash その他の方法 参考 通常の方法 bashとかでよくやる方法は arg1.sh 1 2 3 4 5 #!/usr/bin/env bash for arg in "$@";do echo "$arg" done とする方法。 "$@"はスクリプトの引数を展開し、ダブルクォートしてあると 引数毎に分けてダブルクォートした状態で展開します。 1 2 3 4 $ ./arg1.sh a b c a b c "$*"とすると同じく展開しますがダブルクォートが全体について for文で回すと1つの引数として扱われます。 大概のシェルで同様の動作をします。 これは関数の引数も同じで、 arg2.sh 1 2 3 4 5 6

                                                                            シェルスクリプトでスクリプトの引数をループする方法
                                                                          • Cの可変長引数とABIの奇妙な関係 - Qiita

                                                                            printf に関する以下のツイートが流行っていました。 上のツイートでは割とあっさり説明されていますが、amd64 SysV ABIでこの現象が起こる理由にはもっと深遠なものがあると思うので、可変長引数とからめて説明してみたいと思います。 前提条件として「ABI」「可変長引数」「non-prototyped関数」の知識が必要なのでそこから説明します ABIとは ABI (Application Binary Interface) とは、機械語レベルでのインターフェースのことです。 機械語そのもののルールはISA (Instruction Set Architecture) によって規定されていますが、たとえばC言語の「関数呼び出し」などの概念を機械語でどのように表現するかについては規定していません。そのルールを定めたのがABIです。したがって、ISAとABIはおよそ1対多の関係にあります

                                                                              Cの可変長引数とABIの奇妙な関係 - Qiita
                                                                            • PHP 5.3 でネイティブ関数の引数型エラー時の返り値が変更になったけど大丈夫? - co3k.org

                                                                              PHP 5.5.0 リリースおめでとうございます。 タイミング的に PHP 5.5 の話だと読み間違えた方 (もしくは「こいつ間違って PHP 5.3 って書いてやがるプギャー」と思った方) におかれましては、このテキーラはサービスだから、まず飲んで落ち着いてほしい。 はい。ということで、驚くべきことに、いまから、真顔で、 PHP 5.3 の変更点の話をします。でも PHP 5.5 が出るにあたってコードを見直す方もいるでしょうし、なんというかついでに気に掛けていただければと。 何の話か PHP 5.3 の「下位互換性のない変更点」として、マニュアルに以下のように示されている件についての話です。 引数を解釈する内部API が、PHP 5.3.x に同梱されている全ての拡張機能に 適用されるようになりました。つまり、互換性のないパラメーターが渡された場合、 この引数を解釈するAPIは NUL

                                                                              • TypeScript で querySelector メソッドを使うときに型引数を指定する - Hatena Developer Blog

                                                                                こんにちは、エンジニア職の id:nanto_vi です。(この記事は、はてなエンジニア Advent Calendar 2020 の 12 日目の記事です。昨日は id:cohalz さんによる「Webサービスのモニタリングについてのチェックリスト」でした。) 結論 TypeScript で querySelector、querySelectorAll メソッドを呼び出すときは、型引数を指定しましょう (メソッド名の直後の < > で囲んだ部分です)。 const foo = document.querySelector<HTMLElement>('.foo'); if (foo) { foo.style.display = ''; } const bars = document.querySelectorAll<HTMLInputElement>('input[name="bar"]'

                                                                                  TypeScript で querySelector メソッドを使うときに型引数を指定する - Hatena Developer Blog
                                                                                • Python: コマンドライン引数の取得 – sys.argv変数

                                                                                  コマンドラインで与える引数によってプログラムの挙動を変えたいという場面はよくあります。Python ではコマンドライン引数は sys モジュールの argv 属性に文字列を要素とするリストとして格納されています。そして、リストの先頭要素(sys.argv[0])はスクリプトファイル名となっています。 ソースコード # coding: Shift_JIS import sys # モジュール属性 argv を取得するため argvs = sys.argv # コマンドライン引数を格納したリストの取得 argc = len(argvs) # 引数の個数 # デバッグプリント print argvs print argc print if (argc != 2): # 引数が足りない場合は、その旨を表示 print 'Usage: # python %s filename' % argvs[0]

                                                                                    Python: コマンドライン引数の取得 – sys.argv変数