タグ

programmingと言語に関するvanbraamのブックマーク (120)

  • Go言語の例外を必ず扱うような言語機能のありがたさ - 日記マン


    GoGo Goerror func GetUser(id int) (*User, error) { // do some thing ... if err != nil { return nil, err } return user, nil }  (error) iferr != nil {return err} ()  
    Go言語の例外を必ず扱うような言語機能のありがたさ - 日記マン
    vanbraam
    vanbraam 2018/08/31
    例外処理を強制する,という意味では,Javaの検査例外も同じなのだが,Goだと擁護する人もいるのにJavaの方は(今は)ほぼ批判一色なのは何故なのだろう?(この記事の擁護はJavaの検査例外には余り当てはまらないが)
  • Go言語のGCについて - LINE ENGINEERING


    Go GoogleRick HudsonISMM 2018 Keynote Getting To Go 2014Read barrier free concurrent copying GC CMSCGoChanges to the runtime TCMalloc Go malloc.go This was originally based on tcmal
    Go言語のGCについて - LINE ENGINEERING
    vanbraam
    vanbraam 2018/08/09
    「Goにこれがない(からダメ)」という論を述べる人は,その前に(この記事にある様に)なぜそういう設計/実装になっているのか,を調べるべき.その種のWhyはだいたい公開されてるので
  • C++入門書で再帰について解説しようとしたら思わぬ最適化できないコードに出くわした


    C++C++17  void hello() { std::cout << "hello\n"s ; hello() ; } segmentation faultGCCClangC++  void hello() { std::cout << "hello\n" ; hello() ; } 
    vanbraam
    vanbraam 2018/04/24
    C++はimplicitな仕様は余りない印象だが,仕様がexplicitでも場合分けが複雑過ぎて結局使いこなせない.この例は問題が仕様か実装かはまだ不明だが,こういう言語で自分の足を撃たずにコードを書くのは記憶力が良くないと無理
  • http://www.pllab.riec.tohoku.ac.jp/education/lectures/compiler/compilerSlides.pdf

  • Pythonのリスト内包表記はチューリング完全だから純LISPだって実装できる - Qiita


     Python: >>> [2*n for n in range(5)] [0, 2, 4, 6, 8] # for >>> lis = [] >>> for n in range(5): ... lis.append(2*n) ... >>> lis [0, 2, 4, 6, 8]    by @KTakahiro1729  Python&   brainfxxk使
    Pythonのリスト内包表記はチューリング完全だから純LISPだって実装できる - Qiita
    vanbraam
    vanbraam 2018/03/28
    XX信者:"それXXでできるよ!". Lisper:"それでLISPできるよ!"; Lisperは変態のレベルが違う
  • ラムダ計算基礎文法最速マスター - 貳佰伍拾陸夜日記

    ラムダ計算は, 多くのプログラミング言語, とくに関数型言語の原形になっています. ラムダ計算について理解しておくことは, 多くのプログラミング言語の習得に役立つでしょう. ラムダ計算はチューリング完全で, 計算能力としてはふつうのプログラミング言語と同じです. ラムダ計算で計算を書く訓練をしておくことは, 任意の計算を関数のみを使って(他の制御構文を用いずに)書くときに役立ちます. ふつうに書いたら煩雑な処理を, 関数型言語のやり方で書くとすっきりすることが多々あり, コードを自由自在に書くためには必須の考え方と言えるでしょう. 項 ラムダ計算の式を項(term)と言います. 項は変数, 抽象, 適用のいずれかです. 変数 変数(variable)はふつう1文字で書きます. 変数には関数内の束縛変数(bound variable)か自由変数(free variable)かという区別があり

    ラムダ計算基礎文法最速マスター - 貳佰伍拾陸夜日記
  • 「型」のお気持ち 〜 「型なし」と「動的型」って同じ?違う? - Qiita


     JavaScriptRuby  2       vsvs
    「型」のお気持ち 〜 「型なし」と「動的型」って同じ?違う? - Qiita
    vanbraam
    vanbraam 2018/03/02
    とても勉強になった;"型について語る前に『型システム入門』を読め","「型」という語の多義性"<我が身を振り返って反省.type systemは最終的には数学だから,ちゃんと数学やらんといかんのだろうなぁ
  • 型付き ⊄ 型なし - soutaroブログ


    TypeScriptSideCIWeb使SteepTypeScript TypeScriptJavaScript使JavaScriptWebpacknpmTypeScriptJavaScript RubyJava
    型付き ⊄ 型なし - soutaroブログ
    vanbraam
    vanbraam 2018/02/07
    JavaScriptって動的型付き言語では? "型なし"や"型検査器がない"と書くのは違う様な;静的型付き言語の方が,実行前に計算機が型の整合性をチェックしてくれる分,安心して書ける&実行できるという点には同意するが
  • 🐟日本語入力の落とし穴 #burikaigi - みずぴー日記


    BuriKaigi2018  🎤稿  Java+α+α   MisocaWeb  Misoca使RubyRailsSlackGithub使 使  
    🐟日本語入力の落とし穴 #burikaigi - みずぴー日記
    vanbraam
    vanbraam 2018/02/05
    面白かった;Input method周りの難しさはしばしば感じる.例えば辞書登録時の入力文字列の定義はキー入力列ではない(例:macOSではkk=>株式会社の"入力文字列"は"っk"になる);英語圏の人の入力/文字列周りへの無理解は常々感じる
  • Amberで検討されているJava構文の変更 - Qiita

    Amberとは Java言語を拡張するプロジェクトです http://openjdk.java.net/projects/amber/ Amberのブランチ records データ保持用のクラスです sealed-types シールドタイプ newesapes line blockのエスケープ対応 patterns パターンマッチの全体的な開発 patterns-deconstruction パターンマッチでのデコンストラクション patterns-stage-1 instanceofのみのパターンマッチ pattern-runtime パターンマッチのランタイム? local-methods ローカルメソッド lambda-leftovers ラムダで_使えるようにする concise-method-declarations メソッド定義の簡略化 enhanced-enums 拡張enu

    Amberで検討されているJava構文の変更 - Qiita
    vanbraam
    vanbraam 2018/01/28
    予想より小幅な修正だった(Perl6比);recordは簡易classみたいなものか.やりたいことはわからなくもないがscopeを人間が理解しやすいように定義しないと死にそうな予感;他はまあ細かい改善
  • languagehealth.com - Domain Name For Sale | Dan.com

    VAT overview )Value Added TaxThe Value Added Tax (VAT) is a consumption tax applied in the European Union (EU) to all goods and services. All consumers in the EU are charged VAT on the purchase of goods and services. Businesses in the EU buying from a business in the same country are also charged VAT. Businesses in the EU buying from a business in a different EU country are not charged VAT. Consum

    languagehealth.com - Domain Name For Sale | Dan.com
    vanbraam
    vanbraam 2018/01/23
    "currently we look at the percentage of commits all to public projects on GitHub"<コミット数なのか,コミット量(行数?文字数?)なのか
  • C++作者によるC++否定声明、その元になったC作者によるC否定声明(もちろんネタ) - 仮想と現実


    1999C++ Bjarne Stroustrup  () C++使C++C++ 
    C++作者によるC++否定声明、その元になったC作者によるC否定声明(もちろんネタ) - 仮想と現実
    vanbraam
    vanbraam 2017/12/29
    自分はC++使いこなせない.例えば,変数の初期化syntaxが4種程あって,各々semacticsが微妙に異なり,使うべきcontextが違う.その差異はほぼ全て性能の為で,使いこなせれば多分強い;自分の能力不足と言語の複雑さは分けて考えたい
  • Tabs or Spaces

    The Top Starred repositories in Github have been analysed to understand which are the most common whitespace types in different programming languages.

    vanbraam
    vanbraam 2017/11/16
    tab派/space派勢力比を,言語ごとに,各110のリポジトリーを分析して計測.知らない言語を書き始める時,微妙に助かる
  • 社内開発環境の紹介 ~社内製プログラミング言語Mintについて~ | ハル研ブログ | ハル研究所


      使 Mint VM Mint  C++ OSC# C++ C/C++ 使 使 
    社内開発環境の紹介 ~社内製プログラミング言語Mintについて~ | ハル研ブログ | ハル研究所
    vanbraam
    vanbraam 2017/11/10
    "似たような(しかもコピーする必要がある)クラスを、 名前を変えながら数十、数百と増やしていく"<この一文を読んだだけだとモジュール化ができないプログラミング言語の様に思えてしまう
  • 『なぜ私達は Python から Go に移行したのか - Frasco』へのコメント

    ブックマークしました ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください Twitterで共有

    『なぜ私達は Python から Go に移行したのか - Frasco』へのコメント
    vanbraam
    vanbraam 2017/10/26
    Javaが遅いと言っている/思っている人へ:Javaはプログラムの起動に時間がかかるだけで処理性能は高い.例えばhttp://benchmarksgame.alioth.debian.org/u64q/java.htmlから各テスト(k-nucleotide,etc)のリンクを辿ればJavaの処理性能の高さがわかる
  • なぜ多くの開発者が今なお Swift よりも Objective-C を好むのか - Frasco

    iOS SDK がアナウンスされてから数年間、アプリ開発ゴールドラッシュの恩恵を得ようと、開発者たちは Objective-C の世界に群がっていました。しかしその時代は去りました。Swift が我々の前に現れて3年以上、それは古い同種の言語を主役の座から押しやりました。 Objective-C - かつてはアプリ開発の世界で人気急上昇のスター的存在でしたが - は、Apple の開発環境の中では2級の扱いになっていきました。そうです、それは時おり WWDC にて1枚か2枚のスライドに引っ張り出されることはあるかもしれませんが、カンファレンスの大部分は Swift に関してです。AppleSwift教育を推進しており、主要な言語の機能はまず Swift に対応するようになっています。 しかし、まだ Objective-C を使ってるなら、あなたは一人ではありません。たくさんの開発

    なぜ多くの開発者が今なお Swift よりも Objective-C を好むのか - Frasco
    vanbraam
    vanbraam 2017/10/25
    多くの人がSwiftを使わない理由として挙げているのは,"コンパイル時間の長さ(Objective-C比)","ABIの安定性の問題",そして勿論"Objective-C資産の大きさ(含む自身のスキル)"辺りか
  • Kotlinのスキルを持たないAndroid開発者は恐竜のようになるリスクに直面。モバイルアプリプラットフォームのRealmが予測


    KotlinAndroidRealm AndroidJava Realm調201812AndroidKotlinJavaRealm Report KotlinAndoproid KotlinAndroidGoogle I/OKotlin Google I/O841
    Kotlinのスキルを持たないAndroid開発者は恐竜のようになるリスクに直面。モバイルアプリプラットフォームのRealmが予測
    vanbraam
    vanbraam 2017/10/23
    これが正しい予測なら,KotlinがAndroid外にも広がってもおかしくないと思うのだが,そうならない理由は何なのだろう?
  • ソ連の宇宙開発で使われていたプログラミング言語は?


    stackexchange.com使 稿ProLog使使稿 稿CIA調ProLog使  First computers for space applications (Герман Носкин, Первые БЦВМ космического применения)
    ソ連の宇宙開発で使われていたプログラミング言語は?
    vanbraam
    vanbraam 2017/10/12
    "水城徹"氏のコメントも含めて興味深い;旧ソ連のプログラミング言語は,ガラパゴスの生物の様な進化を遂げたのだろうか?西側の情報は(党が許せば)かなり入手可能だろうから,外界から全く影響を受けない訳でもなさそう
  • Javaのジェネリクスは「まがい物」ではない - kmizuの日記


     kmizu.hatenablog.com JavaJavaC#(C++2017/09/24) methane  JavaJavaC++JavaJava
    Javaのジェネリクスは「まがい物」ではない - kmizuの日記
    vanbraam
    vanbraam 2017/09/25
    全く文脈の異なる記事だが,b:id:entry:286074513の時も思ったのは,何かを"まがい物"という人物は"本物"の定義を明示すべき,という事.定義が違ってたら議論以前の問題だし,オレオレ定義に基づく言葉は感想でしかない
  • むかしむかし、あるところにチェック例外という機能があったそうな | システムアーキテクトのごった煮


     Java  Java   dis     
    むかしむかし、あるところにチェック例外という機能があったそうな | システムアーキテクトのごった煮
    vanbraam
    vanbraam 2017/09/24
    例外=大域脱出の手段,検査例外=例外も戻り値の一種なので静的に型を把握,という認識.利点はある&コストも(IDEを使えば)大きいと思わないので,忌避される理由に納得感が余りない;Goの様に大域脱出を否定する方が理解できる