タグ

言語に関するannoyのブックマーク (8)

  • プログラミングでつまづいてきたこと - 覚書

    プログラミング初心者に対してどういう情報が役立つのかをぼんやり考えていると、そこそこコードを書けるベテランが、いつ、どういうことにつまづいてきたのかを書くとけっこう有益なのではないかと思ったので書きました。これを読むと直接プログラミング能力が上がるわけではないですが、「ああ、こういうところでつまづいてもいっぱしのプログラマになれている人もいるのだな」と思ってもらうのが目的です。成功談よりも失敗談のほうが役立つとよく言われますが、それと少し似ているのかもしれません。 全段落で「いっぱしのプログラマ」とか言った手前、自分のことを書いておきます。18歳ごろから20年くらい前からプログラミングをしていて、主に有名どころのOSSに向けてコードを書いてきました。昔はLinuxカーネルを10年少々やっていて、ここ最近はCephオーケストレータであるRookの開発とかをしています。プログラマとしてはスーパ

    プログラミングでつまづいてきたこと - 覚書
    annoy
    annoy 2020/01/16
    オブジェクトとヒープは今でも混乱させられる。異なる概念が同じ用語なのと同じ概念が複数の用語で語られるのほんと困る。
  • Python 3.8 の概要 (その1) - Assignment expressions - atsuoishimoto's diary

    古来、Pythonでは「代入は文であるべき!」と一貫して主張してきました。 C言語などでは、代入は足し算や掛け算と同じ、値を計算する「式」で、たとえば a = (b=100) / 2; と書くと、b には 100 を代入し、a に 100/2=50 を代入します。1+1 は 2 という値になる 式 ですが、b=100 も同様に値が 100 となる 式 なのです。 Pythonでは、代入は式ではないので、こういう書き方はできません。 Pythonの代入は、足し算などの演算子の仲間ではなく、if や for のような制御文の仲間で、あまり自由な書き方は出来ないのです。 Python FAQ では、その理由として Python の式中での代入を許さない理由は、この構造によって起こる、他の言語ではありがちで見つけづらいバグです: if (x = 0) { // error handling } e

    Python 3.8 の概要 (その1) - Assignment expressions - atsuoishimoto's diary
    annoy
    annoy 2019/09/03
    元 Pascal ユーザーとしては代入文と代入演算子を逆にして欲しい。
  • Pythonはコードが書きやすい?ご冗談でしょう

    Pythonが大変な人気を集めている。先日、都内の大型書店のプログラミング書籍コーナーに行って驚いた。とにかくPythonの解説書が大量にあるのだ。複数の書架をPythonの解説書が埋め尽くしている。すべてのプログラミング言語の中で書籍数が一番多いように見えた。これほどまでに増えているとは正直、思っていなかった。 自社の近くにある中規模の書店でも確かめてみた。ビジネス書が中心で技術書はあまりないタイプの書店だ。それでも、タイトルにPythonを含む書籍は10冊近くあった。他の言語の書籍は、メジャーな言語でもせいぜい1~2冊程度。対照的な状況である。 Pythonが人気を集めるに従って、Pythonのことを褒めそやす記事も増えている。そうした記事には、例えば「Pythonのコードは書きやすい」と書かれていたりする。Pythonで有名なプログラマーが言えば説得力があるが、あまりコードを書かない

    Pythonはコードが書きやすい?ご冗談でしょう
    annoy
    annoy 2019/06/14
    ただの言いがかりだな。ライターは書いてて恥ずかしくないのか?
  • Cello - もはや別物、C言語で高レベルプログラミングを実現するライブラリ | ソフトアンテナ

    C言語は機械語やアセンブリ言語といった低水準言語に近く、最近流行のPythonRubyといった高水準言語で利用できるさまざまな便利な機能を使用することができません。例えば文字列にも専用の型が存在せず、さまざまな落とし穴に注意しつつ慎重に使用する必要があるのです。 日紹介する「Cello」は、このなにかと不便なC言語で、高レベルプログラミングを実現するユニークなライブラリです。 Cellは以下の機能を実現するC言語用ライブラリです。 一般的なデータ構造 ポリモーフィック関数 インターフェイス/タイプクラス コンストラクタとデストラクタ オプションのガベージコレクション 例外 リフレクション 作者のDaniel Holden氏は、Ubisoft Montrealのアニメーション研究員で、C言語の可能性を追求するためのファンプロジェクトとしてCelloの開発を始めたと開発の動機を説明していま

    Cello - もはや別物、C言語で高レベルプログラミングを実現するライブラリ | ソフトアンテナ
    annoy
    annoy 2019/04/19
    令和の時代にはキモい CPP マクロで独自言語作るのはやめよう。
  • PHPはもうダメだ、PHP万歳! | POSTD

    (編注:2020/08/18、いただいたフィードバックをもとに記事を修正いたしました。) GutenbergとWordPressに関する騒動は、PHPの終焉につながる最新記事です。深呼吸をしてください、みなさん。トロールは無視し、Mark TwainとFidel CastroとPHPとの共通点を見ていきましょう。そして、もっと重要なのは、スタートアップやスモールビジネスにとって、PHPが今でも合理的な選択である理由です。 PHPはいつから廃れ始めたのか “PHPはもうダメだ”といったブログの投稿が、登場し始めたのは2011年のようです(これより古いものを見つけたら、お知らせください)。Mediumや、mushroomsのように突然出現したcoding bootcampsを探し回れば、その唯一の共通点は、みんながPHPを嫌っているか、あるいは単に無視しているかです。どうやら、法外な値段のコー

    PHPはもうダメだ、PHP万歳! | POSTD
  • 数値計算屋がFortranを捨てるべき3つの理由 - コンピュータ将棋 Qhapaq

    パンチカード時代の負の遺産として数値計算系を中心に今も生き続けている言語Fortran。稿では仮に数値計算用途であってもFortranを使うべきでない理由を説明することで、悪しき文化の終幕を促進したいと思います。 因みに筆者は量子系を中心にした数値計算を生業としています。C++Pythonがメインですが数値計算ライブラリの拡張などの用途でFortran77も90も触ったことがありますし、Fortran製のライブラリは頻繁に利用しています。 あくまで筆者の経験に基づいたものでありFortranを使っている技術者からすれば反論もあるものとおもいます。 【1.教材として不適切である】 Fortranの長所として計算向けに設計されているため、行列や複素数の計算が簡単であるという点がよく挙げられます。確かに、Fortranの計算はC++などに比べ直感的で簡単です。しかし、高度なプロダクトを開発す

    数値計算屋がFortranを捨てるべき3つの理由 - コンピュータ将棋 Qhapaq
  • IoTデバイス用プログラミング言語「Eclipse Mita」登場。C言語へ変換、組み込み開発を容易に

    IoTデバイス用プログラミング言語「Eclipse Mita」登場。C言語へ変換、組み込み開発を容易に Eclipse Mitaでは、IoTデバイスをプログラミングする際に面倒になりがちな、センサーの読み取りやネットワークデバイスの制御といった低レベルかつデバイスごとに異なる部分をプラットフォームごとに吸収する仕組みを持ち、IoTデバイスにおいてもモダンなプログラミングを実現できるとのこと(プラットフォーム吸収部分のドキュメントはまだ準備中のようです)。 また、イベントループを用いることでプログラミングモデルを分かりやすくするなど、組み込み開発を経験したことのないプログラマでも容易にIoTデバイスのプログラミングができるような言語設計になっています。 Eclipse MitaのコードはC言語として出力されるため、多くのIoTデバイスに対応できる見通しです。 Eclipse Mitaの発表に

    IoTデバイス用プログラミング言語「Eclipse Mita」登場。C言語へ変換、組み込み開発を容易に
  • 窓の杜 - 【NEWS】テキストが何語で書かれているのか世界432言語から自動識別「Polyglot 3000」

    入力したテキストが何語で書かれているのか世界432言語から自動識別できるソフト「Polyglot 3000」v2.1が、21日に公開された。Windows 95/98/Me/NT/2000/XPに対応するフリーソフトで、現在作者のホームページからダウンロードできる。 「Polyglot 3000」は、コピー&ペーストなどで入力したテキストが何語で書かれているのか、世界各地の432言語から自動識別できるソフト。 たとえばWeb検索で調べものをしていると、何語で書かれているのか不明なWebページに出くわすことがあるが、ソフトを使えば何語か調べられるため、ページを読むのに必要な辞書や翻訳サービスの見当がつくだろう。 使い方は簡単で、まず任意のソフトからコピーした文字列をソフトへ貼り付けるか、ソフトの[ファイル]メニューからテキストファイルを読み込む。あとは、ボタンを1回押せば文字列の解析が

  • 1