タグ

関連タグで絞り込む (205)

タグの絞り込みを解除

programmingとProgrammingに関するNyohoのブックマーク (443)

  • 継続渡しスタイル - Wikipedia

    継続渡しスタイル (CPS: Continuation-passing style) とは、プログラムの制御を継続を用いて陽に表すプログラミングスタイルのことである。この用語は、ジェラルド・ジェイ・サスマン とガイ・スティール・ジュニアにより、Scheme言語に関する初期の論文において導入された[1][2]。 継続渡しスタイルで書かれた関数は、通常の直接スタイル (direct style) のように値を「返す」かわりに、「継続」を引数として陽に受け取り、その継続に計算結果を渡す。継続とは、関数の計算結果を受け取るための(一般には元の関数とは別の)1引数の関数のことである。継続渡しスタイルの関数を呼び出すときは、呼び出し側の関数が、呼び出される関数の「戻り値」を受け取るための継続を与える必要がある。この形でコードを書くと、直接スタイルにおいて暗黙に仮定されていた様々な動作が、陽に表される。

    Nyoho
    Nyoho 2021/04/03
  • UE4 ネットワークマルチプレイヤーゲームを作る時の役割について - Let's Enjoy Unreal Engine

    ここ最近はUE4でネットワークを使ったマルチプレイヤーゲームを作る機会が多くなってきました。UE4はエンジン自体が最初からネットワークマルチプレイヤーを幅広くサポートしています。しかし、実際に制作を行うためにはエンジン独特のノウハウが必要で、これらを解説している情報というのは少ないというのが現状です。 そこで今回はUE4でネットワークマルチプレイヤーゲームを作るための設計やクラスごとの役割についてを解説したいと思います。UE4のネットワーク周りについてのドキュメントは以下のページにありますのでこちらも参考にしてください。 docs.unrealengine.com またUE4でネットワークを扱う際に非常に重要な部分となる所有権とRPCについて、ヒストリアさんのブログ記事が非常に参考になるので、こちらもどうぞ。 historia.co.jp 今回の記事はListenサーバー、Dedicate

    UE4 ネットワークマルチプレイヤーゲームを作る時の役割について - Let's Enjoy Unreal Engine
  • 65 Things I wish I knew when I started to Code 🌱🚀

    Subscribe to my newsletter and never miss my upcoming articles No success story is the same, we all have had our ups and downs in the learning process and things we wish we knew when we started out. If you are a new, aspiring developer, these 65 things will prepare you for the long journey ahead. Use them as a shortcut in your own learning path. 1. Coding is about problem-solving. Being a programm

  • マクドナルドで一日分の栄養を取れる組み合わせを計算したら衝撃の結果に - Qiita

    コレステロールは最低摂取基準量はないので0としています(実はこれが伏線になっている)。 そして目的は、一日必要な栄養素を満たす最もカロリーの低い商品の組み合わせとします。金に糸目はつけません。健康第一! 解く 商品の数が96個、栄養素の数が16個なので、とても人間の手では解けません。そこでコンピューターの力を借ります。幸いPuLPというPythonで無料で利用できるソルバーがあるので、これで計算します。ちなみにExcelにもソルバーが搭載されていますが、この程度の数の決定変数でもエラーになって計算できませんでした。 # Import PuLP modeler functions from pulp import * # A new LP problem prob = LpProblem(name="mac", sense=LpMinimize) # Variables AA = LpVar

    マクドナルドで一日分の栄養を取れる組み合わせを計算したら衝撃の結果に - Qiita
  • mimium

    fn dsp(){ let phase = (now/samplerate)%1 let r = 440* phase * 6.2831853 |> sin (r,r) }fn dsp(){ let phase = (now/samplerate)%1 let r = 440* phase * 6.2831853 |> sin (r,r) } mimium (MInimal-Musical-medIUM) は音楽の記述/生成に特化したプログラミング言語です。 mimiumは音楽プログラミング言語を音楽家やプログラマーのためのツールとしてだけではなく、ソースコードという形で音楽を配布するための基盤:インフラストラクチャとなるべく設計され、開発されています。 mimiumは、ラムダ計算を基にした関数型プログラミング言語です。独自の意味論を採用することで、オシレーターやフィルターのような非常に

    mimium
    Nyoho
    Nyoho 2021/02/20
    “低レベルの信号処理から作曲レベルの長い時間軸を扱う表現まで、サンプル単位での制御処理を含めてシンプルな文法で記述ができます” すごい!
  • 音楽プログラミング言語って結局なんなのさ? 2. データとプログラムの境目

    音楽プログラミング言語って結局なんなのさ? 2. データとプログラムの境目published: 2021-02-19 last modified: 2023-07-25 この記事、音楽プログラミング言語って結局なんなのさ?は続き物でおおよそ週間ペースを目指しています。 言語仕様データとプログラムの境目(記事)言語とライブラリの境目松浦知也です。ここ2年ぐらい音楽のための新しいプログラミング言語mimiumを開発しています。 https://mimium.org/ja 前回の記事が思ったより反響があってわりと驚きました。 はてブやTwitterに寄せられたコメントを見ていて改めて音楽プログラミング言語という存在の普及度が改めて低いということがよくわかり脳内基準をリセットするいいきっかけになりました。 その中でも「MMLの話かと思ったら違った」というコメントが結構ありましたので、当初と予定を

    音楽プログラミング言語って結局なんなのさ? 2. データとプログラムの境目
    Nyoho
    Nyoho 2021/02/20
    面白い
  • 2D ゲームを作るためのヒントを一挙公開

    Unity」の名称、Unity のロゴ、およびその他の Unity の商標は、米国およびその他の国における Unity Technologies またはその関係会社の商標または登録商標です(詳しくはこちら)。その他の名称またはブランドは該当する所有者の商標です。

    2D ゲームを作るためのヒントを一挙公開
  • If PHP Were British

    If PHP Were British When Rasmus Lerdorf first put PHP together, he - quite sensibly, despite his heritage - chose not to write it in Greenlandic or Danish. Good job too - that would have been rather unpleasant to work with. He opted instead, being in Canada, for a more local tongue. No, not French. Not Canadian English either. No, he went for that bastard dialect of the Queen's English commonly re

    If PHP Were British
  • プログラミング言語の未来はどうなるか | κeenのHappy Hacκing Blog

    κeenです。最近JEITAのソフトウェアエンジニアリング技術ワークショップ2020に参加したんですが、そこで五十嵐先生、柴田さん、Matzとパネルティスカッションをしました。その議論が面白かったので個人的に話を広げようと思います。 年末年始休暇に書き始めたんですが体調を崩したりと色々あって執筆に時間がかかってしまいました。 時間を置いて文章を書き足していったので継ぎ接ぎ感のある文体になってるかもしれませんがご容赦下さい。 というのを踏まえて以下をお読み下さい。 いくつか議題があったのですが、ここで拾うのは一番最後の「プログラミング言語の未来はどうなるか」という話題です。 アーカイブが1月末まで残るようです。もうあと数日しかありませんが間に合うかたはご覧下さい。 そのとき各人の回答を要約すると以下でした。 五十嵐先生:DSLを簡単に作れる言語というのが重要。それとプログラム検証、プログラム

    プログラミング言語の未来はどうなるか | κeenのHappy Hacκing Blog
  • 努力、忍耐、謙遜

    Diligence,Patience,and Humility 努力、忍耐、謙遜 Larry Wall ラリー・ウォール Translation by Akira Kurahone 我われのPerlコミュニティでは、格言を好んで使う。そういった格言の一つに、「物事のやり方は一つではない」と言うのがある。この格言はPerlコミュニティの真理である。また、Perlそのものにも当てはまる。そして、書の各章で明らかにされるように、オープンソースコミュニティにも当てはまる。私は、ここでオープンソースの効用のすべてを語るつもりはない。それは、英語が役に立つ理由を説明しようとするようなものである。ただ、Perlの現状と今後についてなら多少は語れると思う。 こんな格言もある。「プログラミングの三大徳目は、無精、短気、傲慢である」。Perlの偉大なプログラマたちは、それらの徳目を信奉している。オープンソー

    Nyoho
    Nyoho 2021/01/24
    “Diligence,Patience,and Humility 努力、忍耐、謙遜 Larry Wall ラリー・ウォール”
  • プロとしての行為 Act as Proffesional

    「ソフトウェアのプロになるには書が必要だ!」と、ボブおじさんがおっしゃっております。 このボブおじさんは、あの有名なアジャイルマニフェストにも名前を連ねているRobert C. Martinです。 プロとしての最低限必要な知識、姿勢、規律など、教育を受けたり学んだことがあるプログラマはあなたの現場に何人ぐらいいるでしょうか? 今こそ、書を取って、プロとしての道を歩み始めて欲しい。(amazonでずっと売りきれだったけど、やっと入荷したようだ。すぐに売り切れそうではあるが…) プログラミングの練習 僕はプログラミングの練習というのを意識的にあまりやったことが無い。日だとTDD Boot Campなどでおこなわれる小さなテーマでプログラミングをおこなうことである。書の6章に練習について書いてる。 個人的にはRubyKaigiで、ペアプロした外人が、これはToys Programming

    プロとしての行為 Act as Proffesional
    Nyoho
    Nyoho 2021/01/16
    「これはToys Programmingというんだ。小さなプログラムを何回も書いて遊ぶ」ボブおじさんはコーディング道場(Coding Dojo)という名前でボウリングゲームのTDDを何回も、何年も実演/これで、プログラミングがめちゃくちゃ上達
  • どうやってコーディングを学ぶか - Magnolia Tech

    CPANに上がってるモジュール、一つ一つの粒度が小さいから読みやすいし、ドキュメントもテストもしっかり揃ってて挙動を把握しやすくて、自分にとっては最高の教科書だったな 今でも他の言語で分からない時に同じ目的のPerlモジュールを見る事があるし— magnoliak🍧 (@magnolia_k_) 2021年1月7日 自分が学んだ頃の、時代的なものもあるけど、今でもPerlのモジュールは粒度が小さく、ドキュメント、テストがしっかり用意されているので、参考にするにはちょうど良いと思っている。 ScalaScalatraっていうWAFのメンテナンスに参加しているんだけど、HTTPプロトコルだったり、Webのお作法的なところが分からないことが有ったら、たいていPlackか、Rackのソースを見て理解するところから始める、みたいなことしてる— magnoliak🍧 (@magnolia_k_)

    どうやってコーディングを学ぶか - Magnolia Tech
    Nyoho
    Nyoho 2021/01/10
    “おすすめは「テスト駆動開発」に出てくるお題を、書籍で取り扱っているJavaやPython以外の言語で試してみること。”
  • C++20

    Photo by Fatos Bytyqi on Unsplash僕がC++を最後に母国語にしていたのはまだそのバージョンが03つまりは98の修正版の頃で,0x(後に0Aまたは11と呼ばれるようになる)がどうなるのか横に見つつも,僕は Objective-C へと母国語を変えた.Mac OS X (現在の macOS)向けにGUIを使ったプログラムを書くためだ.現在では Objective-C は卒業し,同じ目的のためにはSwiftを使っている. だから来年にはリリースされるであろうC++20に準拠したコードを読んだ時には,古い知識が邪魔をして読むことに大変な困難を覚えた. 例えば 10 9 8 7 6 5 4 3 2 1を印字するために,優れたC++20プログラマなら次のようなコードを書く. for (auto i: std::iota(1, 10) | reverse) { std::

    C++20
    Nyoho
    Nyoho 2020/12/20
    “ほぼすべてのプログラミング言語がLispを目指している”
  • if-then-else/if-then-else.md at master · e-n-f/if-then-else

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    if-then-else/if-then-else.md at master · e-n-f/if-then-else
  • プログラミングというかITが理解できない。

    1.具体的な事が分からないプログラミングで主にやる事は下記の2つ。 ①IFでAかBを選択させてどっちかの設定を実行 ②Whileで決められた回数分繰り返す これでやりたいことは分かる。分かるけれどこれでどうやって動画や音楽のエンコードをしたり 画像処理をしたりするソフトウェアになるのかというのがよく分からない。 あるいはWordとかExcelとかがどうやってこんなので作られているのかが分からない。 プログラミング入門書を読んでも、一般的に知られているソフトウェアの作り方みたいな事が 書いてないので、ゴールが見えてこない。だからうんざりしてくる。 入門書を読むと、判定と繰り返しとあとどこかからかそういうプログラムが既に作られている フレームワークだとかよく分からないものを持ってきて使ってくださいってなっている。 だからそのフレームワークがどういう風になっているのかって説明からして欲しいって思

    プログラミングというかITが理解できない。
    Nyoho
    Nyoho 2020/12/02
    「何をもってわかったとするか」について、たくさん段階を用意しておくのがいいと思う。
  • 富岳のディープラーニング処理を支えるJITコンパイラ「Xbyak_aarch64」誕生秘話 | gihyo.jp

    TOP500、HPCG、HPL-AI、Graph500での世界1位獲得、新型コロナウイルス対策を目的とした試行利用など、話題に事欠かないスーパーコンピュータ「富岳⁠」⁠。そのディープラーニング処理を高速化するには、あるOSSの存在が必要不可欠でした。それが、サイボウズ・ラボ(⁠株⁠)の光成滋生氏が開発したx86/x64向けC++ JITアセンブラ「Xbyak」の設計思想をベースに、光成氏の助言のもと(⁠株⁠)富士通研究所が開発したArm向けのC++ JITアセンブラ「Xbyak_aarch64」です。Xbyak_aarch64は、富岳上でのディープラーニング処理を実現するキー技術のひとつです。 記事では、Xbyakの開発者である光成氏を中心に、(⁠株)富士通研究所の上席研究員であり、Linuxカーネルへのコアコミッターでもある小崎資広氏を聞き手役として、同研究所シニアリサーチャーの川上健

    富岳のディープラーニング処理を支えるJITコンパイラ「Xbyak_aarch64」誕生秘話 | gihyo.jp
    Nyoho
    Nyoho 2020/11/23
    ガチャピン先生の「合作」とのこと https://twitter.com/kosaki55tea/status/1329032504011997184 「IntelにとってライバルであるArmのコードをIntel自身のOSSに入れたことで,すごいな,と思いました。いちユーザーとして驚きです。」
  • Smart UI パターンが再評価される世界 - id:onk のはてなブログ

    設計ナイト2020 を受けて、今どんなアーキテクチャを選ぶべきかという話をしたくなったのだ。 kichijojipm.connpass.com 設計ナイトで高ぶった結果1時間コースの発表資料が完成したので供養場所を探しています。聞いてくれ!!!— Takafumi ONAKA (@onk) 2020年11月1日 お前誰よ 2000年代前半に SI 2000年代後半にブログ、SNS 2010年代にソーシャルゲーム 2020年代に UGC サービス をやってきた人間。数百万〜数億行のデータ、月間数千万〜数十億 imp 程度を主戦場にしています。 今日の話 DDD と PofEAA から学ぶパターン/アンチパターン Rails によって発見された、密結合で速く走れるソフトウェア 今求められているアーキテクチャ 昂ぶって 15,000 字ぐらい書いてしまった。 DDD と PofEAA から学ぶパ

    Smart UI パターンが再評価される世界 - id:onk のはてなブログ
  • 達人プログラマー(第2版) 熟達に向けたあなたの旅 | Ohmsha

    序文 目次 まえがき-第2版に向けて 第1版のまえがきより 第1章 達人の哲学 1 あなたの人生 2 がソースコードをべちゃった 3 ソフトウェアのエントロピー 4 石のスープとゆでガエル 5 十分によいソフトウェア 6 あなたの知識ポートフォリオ 7 伝達しよう! 第2章 達人のアプローチ 8 よい設計の質 9 DRY 原則? 二重化の過ち 10 直交性 11 可逆性 12 曳光弾 13 プロトタイプとポストイット 14 専用の言語 15 見積もり 第3章 基的なツール 16 プレインテキストの威力 17 貝殻(シェル)遊び 18 パワーエディット 19 バージョン管理 20 デバッグ 21 テキスト操作言語 22 エンジニアリング日誌 第4章 妄想の達人 23 契約による設計(DbC) 24 死んだプログラムは嘘をつかない 25 表明を用いたプログラミング 26 リソースのバラ

    達人プログラマー(第2版) 熟達に向けたあなたの旅 | Ohmsha
  • ウェブフロントエンドの設計力を高めるためにアプリケーションの構造を捉えてみる話 - kubell Creator's Note

    こんにちはー。 フロントエンド開発部の火村(ひむら/id:eiel)です。前回までは id:cw-himura で記事を書いていましたが、個人アカウントに切り替わりました。 よろしくおねがいします。 以前はサーバーサイド開発部に所属していましたが、2019年6月ぐらいからフロントエンドチームにヘルプとして無期限レンタル移籍中です。 主な担当している業務は「難しいバグ対応」と「これからChatworkのウェブフロントエンドをどうするかを考える」です。 昨日は期待の新人であるレオくんの入社して3ヶ月の熱烈な想いでした。アツいです。 さて、今回のお題は「レガシーフロントエンド脱却への挑戦」と雑に上から投げられたのですが、未来のことを考える作業をしているので書きやすいネタがありません。 あってもオチがつきません。 ということで、設計に役立つかもしれない話をラフに書くことにしました。 アプリケーショ

    ウェブフロントエンドの設計力を高めるためにアプリケーションの構造を捉えてみる話 - kubell Creator's Note
    Nyoho
    Nyoho 2020/11/06
    わしは最初 useEffect とかを自分で作ってみる話なのかと思ったら違った。全体的に状態モナドとreducerを合わせてReduxみたいなの手で作っている。その先にも期待。
  • Lispはなぜ覇権を握らなかったのでしょうか?

    回答 (9件中の1件目) え?覇権ですか?とってますよ。 ご家庭での掃除ロボットの制御分野ですが。 * ルンバ一強に拍車、ロボット掃除機市場でシェア7割超え - BCN+R ルンバ (掃除機) - Wikipedia > ルンバのソースコードはカスタマイズされたLISPで書かれている[73]。 https://twitter.com/RainerJoswig/status/802642786168274944?s=19 掃除機ロボット「ルンバ」の動きが分かる長時間露光の写真 - NAVER まとめ 上記はルンバの軌跡ですが、それを描いているのがLispのコードです。 ルンバ...

    Lispはなぜ覇権を握らなかったのでしょうか?