タグ

言語とZennに関するmohnoのブックマーク (4)

  • 最近のC言語と、次期C標準(C23)

    C言語といえば古い言語なイメージですが、その重要性はまだまだ落ちていません(多分)。重要な言語だからこそ、今もひっそりと進化を続けています。この記事では、そんなC言語の最近の動向を紹介します。 まずはC言語の前世紀の標準であるC99、現行の標準であるC11/C17を振り返り、その後に未来の標準であるC23に触れます。 C99 C99では色々追加されました。ここでは一部のみの紹介とします。 _Bool _Complex C++の std::complex とメモリ上での互換性がある(C++11以降)。 可変長配列(VLA) 可変長引数マクロ 浮動小数点数の強化 十六進表記 筆者による関連記事:浮動小数点数の16進表記 fma 筆者による関連記事:FMA (fused multiply-add) の話 #pragma STDC FENV_ACCESS, #pragma STDC CX_LIMI

    最近のC言語と、次期C標準(C23)
    mohno
    mohno 2022/01/30
    「K&Rスタイルの関数定義の廃止」はさておき、C++にないC独自の拡張はVisual Studioでは採用されない可能性が高いから、どっちにしろgcc独自機能っぽくなっちゃうんだけどな。
  • Goへのヘイトに対する考え方

    https://www.kbaba1001.com/entry/2021/09/17/073149 (該当記事が削除されました) RubyのサービスをGoで置き換えるのは3倍人手がかかる 何するにも機能不足 JSONの読み書きにわざわざ構造体書くの面倒 同僚がGoを選ぼうとしたら愚かな選択ですねと答える サーバーサイド開発にGoを使うのは危険 っぽい内容だったかと。 だいぶGoの特徴や既存の言語との考え方の違いが広まってきてるのかなぁと思っていた矢先だったので十年くらい前のような指摘をあえて今されていてびっくりした。 正直、ここに書かれたようなヘイト項目は既出すぎるので、もし影響の大きい項目を多くの人が同様に嫌っているならばGoはここまでの人気のある処理系になることはなかったと思う。(もしくは多くの人が嫌ってはいるが影響の小さい項目ということ) Goは出た当初、こういうヘイトが世界中のブロ

    Goへのヘイトに対する考え方
    mohno
    mohno 2021/09/18
    わが道をGo(行く)、ってことだね。「「RubyのRoRのようなサービスをGoで置き換えるのは3倍人手がかかる」なら納得」←C言語を使ったら、もっと人手がかかるだろうけど、なくなりそうにないしね。
  • Goに三項演算子が採用されない理由

    Goには「なぜ三項演算子がないの?」という意見を時々見かけます。言語開発側の意見と僕の見解をまとめていきますー。 FAQ その回答はGoのFAQに明瞭に書かれています。 Goに?:演算子がないのはなぜですか? Goには3項テスト操作がありません。 同じ結果を得るには、次を使用できます。 Goに?:がない理由は、言語の設計者が、操作が頻繁に使用されて不可解な複雑な式を作成するのを見ていたためです。 if-else形式は、長くなりますが、間違いなく明確です。 言語に必要な条件制御フロー構造は1つだけです。 ネストを許す GoPythonもif-elseが文であり、式として扱えない方針を採りました。式として扱えないということは、一定の構文でのみ記述が可能ということです。三項演算子はその性質上式として扱えることになります。 式として扱える場合なにが書けるようになるのかというと、各項や条件に式が書

    Goに三項演算子が採用されない理由
    mohno
    mohno 2021/04/10
    「コードカバレッジ」←Goは論理演算の短絡評価ないのか、と思ったら、普通にあるみたいだし、だったら「f1() && f2()」でf2が呼ばれないケースあるよね。と思ったら、FAQに書いてあるのは訳されている最初の理由だけか。
  • Go 言語にやってくる Generics は我々に何をもたらすのか

    2021 年リリース予定の Go 1.17 に、多くの皆さんが待ち望んでいた Generics が導入される予定です。Go が Generics を採用したプロセス、C++Java の Generics とどの様に違うのか、また Go の Generics はどの様に使えるのかをご紹介します。

    Go 言語にやってくる Generics は我々に何をもたらすのか
    mohno
    mohno 2020/09/22
    今どき、ジェネリクスないんだ、とは思ったものだ。
  • 1