BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ Language Design に関するすべてのコンテンツ

  • C#の機能: Null許容参照型

    いや、見出しはタイプミスではない。C#の新しい提案のひとつは、既定で全ての参照型変数をNull非許容型とみなすというものだ。この新しい文法のもとでは、値型と同様に、参照型変数がNull許容であることを明示的に指定する必要がある。

  • .NETの将来: 多重継承

    .NETへの新しい提案に関する論争は、抽象インタフェイスを通じての多重継承の限定された形式の導入を示唆している。この機能はJavaのデフォルトメソッドに触発されている。

  • 新しいJEPはJavaの型変位をシンプルにする

    新たなJEP候補は次のことを提案する。Javaでの型変位の概念をよりうまく扱えるようにすることだ。新しい提案は、Java 10を対象にする可能性が高いが、それはジェネリックな型の定義において対象の型に対してデフォルトの変位を扱えるように、手段を導入するだろう。ジェネリックな型をインスタンス化する時にワイルドガードを通じてそれを示す現在のスタイルとはまったく異なる。この提案はワイルドカードを置き換えるのではなく、むしろその必要を減らす方法である。

  • Don Syme、.Net FringeでF#の設計原則を語る

    F#の生みの親であるDon Symeが、F#の現況評価について.Net Fringe 2016で示した。氏はF#が持つ二重性、すなわちオブジェクト指向言語のためのランタイム上に開発された関数型言語であることについてもコメントした。

  • Anders Hejlsberg氏、現代のコンパイラ構築について語る

    コンパイラ作成の一番の参考書、ドラゴンブックとしても知られる『Compiler: Principles, Techniques, and Tools』(邦訳『コンパイラ―原理・技法・ツール』)が出版されたのは、1986年のことだ。Channel 9のインタビューで、Turbo Pascal、Delphi、C#、TypeScriptで有名なAnders Hejlsberg氏は、現在のコンパイラ作成が30年前のやり方とどう違うのか説明した。

  • スレッドモデルを変更したRust 0.9がリリース

    Rustチームが次世代プログラム言語Rustの最新バージョンをリリースした。今回のリリースで新しいのは,スレッディングシステムが再設計されたことと,1.0リリースに向けて言語としての改良がいくつか加えられたことだ。

  • 調査: もっとも表現力に富んだ汎用プログラム言語は Clojure,CoffeeScript,Haskell

    ある調査によると,表現力のもっとも高い汎用プログラム言語は Clojure と CoffeeScript,そして Haskell なのだという。調査では LoC /コミットを表現力の測定単位として採用している。

  • 一意性と参照不変性におけるC#での安全な並列性に関する研究

    Microsoft、Microsoft Research、ワシントン大学の著名人らがC#の新たな派生の導入について研究している。具体的には、言語レベルでの可読性と参照不変性の概念の導入を試みている。これにより、各参照は4つの許可修飾子(writable, readable, immutable, isolated)のうちの一つを持ち、変数やパラメータを修飾することが可能になる。

  • Ruby 2.0 Preview 1リリース、最終リリースは2013年2月に

    Ruby 2.0のリリースマネージャー、遠藤侑介氏がRuby 2.0の最初のプレビューリリースとリリース目標が2013年2月であることをアナウンスした。Ruby 2.0の大きな新機能(Refinements、キーワード引数、Enumerator#lazyなど)とアップグレード時にユーザが知っておくべきことについて学ぼうと、遠藤侑介氏に話を聞いた。

  • C#のNull非許容型の提案

    .NETがまだベータだった時から、開発者は参照型セマンティクスでnull非許容型変数を求めてきた。しかし問題は、単にアトリビュートや他の装飾を変数につけるよりも遥かに複雑である。Twisted Oak StudiosのCraig氏は、この問題のいくつかに対する解決を提案している。

  • Rust - Mozilla の開発したシステムプログラミング言語 - に関するインタビュー

    Rust はハイパフォーマンスアプリケーションを対象として Mozilla が開発したシステムプログラム言語である。今回の記事では,開発者である Graydon Hoare 氏とのインタビューを紹介する。

  • 「なぜ成功する言語と失敗する言語があるのか?」疑問を解明する試み

    UC Berkeleyの研究者2人がプログラミング言語の選択を社会学的観点から研究している。この記事では研究を簡単に紹介するとともに、彼らとのインタビューをお届けする。

  • D1が2012年で打ち切られることに

    C++の代替言語Dの作成母体であるデジタルマーズがDのオリジナルバージョンを打ち切ることを決めた。彼らは2007年以来D1をその後継であるD2とともにメンテナンスし続けてきたが、D2が今や十分に地歩を固めているため、2012年12月以降古い言語にリソースを投入するのはもはや適切でないと感じている。

  • Google Dartまとめ: DartをJSにするコンパイラFrog、プレビルドエディタ/IDE 、型システムの提案

    Dartエディタのプレビルドバージョンが手に入るようになった。これはEclipseのDart IDEでDartを簡単に始められる。FrogはDartをJavascriptに変換するコンパイラだ。Dartで書かれていて、JythonとIronPythonの作者が実装している。また、DartチームはDart言語の説明を盛んに行い、nullable型のような型システムに関する機能の提案を行っている。

  • Googleが言語Dartとツールをアナウンス。動的言語、任意の型付け、見慣れたシンタックス

    Googleが新言語をアナウンスした:Google Dartとツール。言語とツールは現在、技術プレビュー段階で、オープンソースとしてリリースされた。Chromeには未だ入っていない。Dartは動的で、任意の型、具体化されたジェネリックスである。並列化には、Isolateと呼ばれるErlangスタイルのプロセスを使い、非同期のメッセージパッシングによって、何も共有しない。

BT