タグ

ブックマーク / blog.magnolia.tech (5)

  • 『なっとく!関数型プログラミング』は読者の理解度の進捗を先読みして作り込まれた”プログラミング入門”の良書 - Magnolia Tech

    なっとく!関数型プログラミング 作者:Michał Płachta翔泳社Amazon 良い、買おう、読もう、(コードを)書こう、以上! めっちゃ良いですよ、この 中盤のプリミティブじゃやりづらい→直積→直和→二つ合わせてADT→値を取り出すためのパターンマッチの解説の流れの疾走感がいいですね— magnoliak🍧 (@magnolia_k_) 2023年8月6日 『なっとく!関数型プログラミング』は、2022年に出版された『Grokking Functional Programming』の邦訳版で、主にScalaを題材として関数型プログラミングを学んでいくための入門書("Grokking"は、完全に理解する、という意味)。あくまで関数型プログラミングの考え方、コードの書き方、良い設計の指針の解説が主眼に置かれているので、Scalaの言語機能の入門書ではない。Scalaの言語仕様を網羅

    『なっとく!関数型プログラミング』は読者の理解度の進捗を先読みして作り込まれた”プログラミング入門”の良書 - Magnolia Tech
    masa8aurum
    masa8aurum 2023/08/07
    『なっとく!関数型プログラミング』(『Grokking Functional Programming』の邦訳版)
  • 『Go言語プログラミングエッセンス』を読み始めた - Magnolia Tech

    Go言語プログラミングエッセンス エンジニア選書 作者:mattn技術評論社AmazonGo言語プログラミングエッセンス』、C言語の勉強に役立つなぁ(?)— magnoliak🍧 (@magnolia_k_) 2023年3月11日 普段、Go言語のコードを書くことは無いのだけど、ざっと読むくらいのスキルは身につけておきたいなーと思って、『Go言語プログラミングエッセンス』を読み始めた。 単に言語の仕様とか、ツールの使い方を知りたいだけならば公式ドキュメントを読んで、他の人のコードを読んで、実際に書いてみればいいのだけど、このではしつこいくらいに、「他の言語との比較」や、「仕様が決まった背景」が語られている。 変数や関数の定義の記述順に関しては、わざわざC言語の構文解析の難しさを図を使ってまで説明した上で、「一方、Go言語ではこうなっている」と説明されてとても分かりやすかった。 この

    『Go言語プログラミングエッセンス』を読み始めた - Magnolia Tech
    masa8aurum
    masa8aurum 2023/03/13
    “「他の言語との比較」や、「仕様が決まった背景」が語られている”
  • 紙の技術書を開いたままコードを書く時は、クラスプクリップがおすすめです - Magnolia Tech

    紙の技術書を開いたままの状態にして、参考にしながらコードを書きたい時ってありますね。ただ、を開いた状態にしておくのが結構大変です。ブックスタンドなどもありますが、けっこう大きいし、持ち運びには向いていないです。 そんな時には、ステンレス製のクラスプ クリップがおすすめです。ペンケースにも入るサイズなので持ち運びもできます。 (写真のは、最近読んでいる『Learning Go』です) 紙の質にもよりますが、150ページくらいまでは止めておけるし、それ以上のページになれば自重で全体は開いたままの状態になるので、めくれないように手前のページを数ページ軽く挟んで押さえておけばいいだけです。 一番大きなサイズでも275円なので、試しに買えるレベルなのもオススメの理由の一つです。 ステンレスクラスプ クリップ シンプル 書類 整理 オフィス 備品 Lサイズ ステンレス製 DAS-2501 スリッ

    紙の技術書を開いたままコードを書く時は、クラスプクリップがおすすめです - Magnolia Tech
  • Scala3学習メモ: Scalaとnull, Scala2とScala3と - Magnolia Tech

    Rustの公式ドキュメントにnullに関する興味深い記事("Null References: The Billion Dollar Mistake"(Null参照: 10億ドルの間違い))が引用されています。 Enumを定義する - The Rust Programming Language nullは、インタフェースにおける双方の合意として取り得る値とするか、しないかがいつもあいまいになってしまう点が問題。ある変数の型を見てもnullを取り得るかは明示されていないにも関わらず、人によって「nullを考慮すべき」「nullは取り得ない」の二つの状態が混在してしまう。たとえ、同じ人が双方のコードを書いていたとしても。 ScalaにおけるNull型のクラス階層における位置付けと、nullの代入 https://docs.scala-lang.org/tour/unified-types.htm

    Scala3学習メモ: Scalaとnull, Scala2とScala3と - Magnolia Tech
    masa8aurum
    masa8aurum 2022/02/18
    “Scala3から(中略)null代入を不可とするモードが追加になりました” / 良さそう。nullが混入しないと保証されているのは大きい。
  • どうやってコーディングを学ぶか - Magnolia Tech

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

    どうやってコーディングを学ぶか - Magnolia Tech
    masa8aurum
    masa8aurum 2021/01/08
    ・『テスト駆動開発』のお題をJavaやPython以外で試す ・他の言語で書かれたプログラムを移植する ・ログのフィルタやJSONの単純なパーサーなど、比較的小さなものを書く ・OSSのissueを勝手に解決するPRを書いてみる
  • 1