■F#とは F#は、マイクロソフト社製のプログラミング言語で、Visual Studio 2010から標準搭載されている。まずは、F#がどのような言語なのかを見てみよう。 ●マルチパラダイム言語「F#」 F#は複数のパラダイムをサポートするマルチパラダイム言語だ。F#がサポートするパラダイムには、 手続き型 関数型 オブジェクト指向プログラミング などがある。 マルチパラダイム言語であるため、C#やVB(Visual Basic)といった従来の.NET言語を置き換える形でF#を使うこともできる。しかし、本記事ではF#のメインとなるパラダイムである「関数型」にフォーカスを当てて紹介していく。 ●関数型言語「F#」 F#は、静的型付けの関数型言語である「OCaml」に強い影響を受けている。そのため、F#の主となるパラダイムは関数型プログラミングになる。 さて、関数型言語とは何だろうか? この問
Do Not Use Go for 32bit Development 私は今、大量のGoのコードをCに書き換える作業をしている。時間は金で買えない。主たる開発者として、金はここで止まってしまう。わたしは顧客と話し、責任を負った訳だ。私の過ちは、Goを信頼したことだ。私は自分のモットーを思い出すべきだったのだ。Nullius in verba(政治信教の言を入るべからず) Goは1.0がリリースされたが、もし、32bitサポートが必須であれば、Goを選んではいけない。 32bit Goには多くのバグがあるが、特に問題なのがひとつある。 実行開始の初期化時に、Goは512MBの仮想アドレス空間を予約しようとする。予約できなければ、クラッシュする。Goは、ガベージコレクションのためにこの空間を必要とする、おそらく、すべてのGC言語、いや、すべての言語は、メモリ管理に対して、似たような手法を用い
今や、GNU/Linuxの方が不自由なWindowsより日本語サポートが優れている。これは純然たる事実である。 私は、UIが日本語化の質を論じているのではない。私はUIの言語を英語にしているので、UIの日本語の質についてはわからない。ただ、2012年となった今では、GNU/Linux/Xの環境の方が、圧倒的に日本語を扱う環境が優れていると考えているのだ。 まず、現行のまともなディストリは、文字エンコードをデフォルトでUTF-8にしている。このため、不自由なWindowsにおける、カオスな大量のマルチバイト文字コード混在環境の問題は存在しない。確かに、不自由なWindowsのネイティブの文字エンコードはUTF-16だが、下位互換性を保証するために、既存のマルチバイト文字をすべて継続してサポートしているために、未だにカオスな状況になっている。多くのプログラムは、嘆かわしいことに、いまだにANS
Welcome to CommonJS, a group with a goal of building up the JavaScript ecosystem for web servers, desktop and command line apps and in the browser. This wiki is a starting point for collecting up ideas, any draft API suggestions for the CommonJS group. Discussions occur on that mailing list and on IRC (#commonjs on freenode). Meta Introduction FAQ Process Target Platforms Coding Standards Current
http://tora-lang.org/ Perl6 の開発が宣言されてから10年以上の歳月がたち、いまだ実用的な実装はあらわれません。 そんななかで、next perl 的なものをつくりたいと gfx がいってから 3ヶ月ぐらいたっていますが、こちらも一行もコードをかいた様子はありません しょうがないので僕がつくってみました。まだあらけずりですが、意外とうごいています。 今回、とくに Perl5 にあった機能のなかでけずりたかったものは以下のとおり context@ary, %hashつけたかったものは以下のとおり autoboxingMoose 的なものの組み込みハックしやすいVM組み込みライブラリの実装しやすさ 未実装な点は以下のとおり Moose 的なアクセサSignal handlingこまかい socket 関連のものHash::MultiValue の組み込みなどなど。 g
米Googleは3月28日、同社が開発するプログラミング言語「Go」の安定版となる「Go version 1(Go 1)」を公開した。ライフサイクルを通じて互換性を確保するものとして言語の安定性にフォーカスしたという。Googleは同時に、Goに対応した「Google App Engine SDK」も公開した。 GoはGoogleが2009年に発表したコンパイル型のプログラミング言語。Pythonのような動的言語の開発スピードとCやC++の安全性を組み合わせることを目的とし、高速な実行速度や安全性、シンプルさなどを特徴とする。ライセンスはBSD License。 Go 1では、Mac OS X、Linux、Free BSDに加えてWindowsのバイナリディストリビューションも用意された。また、本バージョンでは言語およびコアライブラリに対する「安定性」も提供するという。これにより、Go 1
Programming Language Challenges in Systems Codes システムコードにおけるプログラミング言語の挑戦、あるいは、なぜいまだにシステムプログラミングはCなのか。 著者がJonathan Shapiroであることが興味深い。Jonathan ShapiroはD&Eに頻出する名前である。Bjarne Stroustrupの記述からして、初期のC++の設計に多大な影響を与えた人物である。それに、最初にC++を使って本格的で大規模なプロジェクトを始めたのも、Jonathan Shapiroだ。しかし、今日、Jonathan Shapiroの名前はC++界では、あまり有名ではない。私はMLとかHaskellなどの言語には疎いので、この方面の話は知らなかった。 なぜシステム・プログラミングは、いまだに1970年代に開発された大昔の高級アセンブリ言語で書かれてい
Twitterのタイムラインが面白すぎて、ついうっかり言語を擬人化して脳内で言語女子会なるものを開いてしまいました。なお、登場人物と実在の人物は1対1に対応しません。 undefinedとnullの両方必要なの? とあるプログラミング言語が集う女子会にて: Perl: そういえばさ、なんでJavaScriptちゃんってundefinedとnullの両方もってるの? JavaScript: えっ、未定義の変数にアクセスした時undefined返したいじゃない? Python: 例外投げて死ねばいいじゃん Ruby: 例外投げて死ねばいいよね Python & Ruby: ねー♡ Java: いやそこは参照型ならnull、数値型なら0で初期化すべきでしょ C: これだから最近の若い子は…初期化にだってコストが掛かるんだからね!デフォルトで初期化するなんて無駄遣いよ!必要な人だけが責任をもって初
Internet Watchの記事「国家によるサイバー戦争は新局面に? メディア報道の動きや謎の言語の発見」に興味深い一文があった。記事内容としては、国家ぐるみでのサイバー攻撃が増えているというものなのだが、Kasperskyが「Duqu」というマルウェアを調査したところ、どのようなプログラミング言語で実装されたのかまったく特定できなかったというのだ。 このほか3月8日には、Stuxnetの亜種と考えられているマルウェア「Duqu」に関し、ロシアのKaspersky Labsが奇妙な知見をもたらした。同社では「数え切れないほどの時間を費やしてもなお、Duquが開発されたプログラミング言語を全く特定できない」とし、世界中の研究者に援助を求め、ブログにその分析内容を公開した。 該当のブログによると、Duquのコードが格納されているDLLにはC++のラインタイムライブラリやSTLの関数が含まれて
luaを使って webアプリ作れれば面白くね? と、いうことで、 PHPのノリで lua を使えるテンプレートを作ってみました。 <html> <body> <?lua for(i=1,99){ local key=""..i..""; if( not out["records"][key]){ break; } local value = out["records"][key]; ?> <div class="img" id="img-1"> <div><a href="javascript:void(0)" onclick="mediaplay(<?= key ?>)"> <img width="255" height="255" src='data:image/jpeg;base64,<?= value["image"] ?>'><br /> <div class="msg" ><s
ECMAScript® 2024 language specification 15th edition, June 2024 This Standard defines the ECMAScript 2024 general-purpose programming language. Kindly note that the normative copy is the HTML version; the PDF version has been produced to generate a printable document. This 15th edition has been prepared under the Ecma RF patent policy. Please note that for ECMAScript Edition 4 the Ecma standard nu
The score is added when the following condition is met: eval(question) === eval(your answer) So, for example, the answer for "typeof 1" is ' "number"', not 'number'. If you think the answer is runtime error, click the [Error] button, and then click [Answer] button. Each code is evaluated in an iframe created for every question and its answer. -------------------------------------------------------
こんにちは。毎年花粉症になりかけている飯塚です。 最近のNode.jsの普及などによってサーバサイドJavaScript界隈が盛り上がっています。 そんなホットなJavaScriptをラクにかつエレガントに書くためのCoffeeScriptという言語をチュートリアル風に紹介します。 何かしらのライブラリを自分で書く程度にJavaScriptで開発している人は絶対に使ったほうがいいと思います。 JavaScriptを知っていれば1-2時間程度で十分駆使できるようになります。 (2011/6/28:@m_satyr様にご指摘頂いた箇所を修正しました。) 目次 CoffeeScriptとは? インストール Hello World 構文 関数 変数展開 Objectの生成 ループ 存在チェック ヒアドキュメント thisのバインド クラス 無名関数 {var} Tips ?の使い分け 存在チェック
Processing(プロセシング)は、ケイシー・リース(英語版)(Casey Reas)とベンジャミン・フライ(英語版)(Benjamin Fry)によるオープンソースプロジェクトであり、かつてはMITメディアラボで開発されていた。電子アートとビジュアルデザインのためのプログラミング言語であり、統合開発環境(IDE)である。アーティストによるコンテンツ制作作業のために、詳細な設定を行う関数を排除している。 視覚的なフィードバックが即座に得られるため、初心者がプログラミングを学習するのに適しており、電子スケッチブックの基盤としても利用できる。Java を単純化し、グラフィック機能に特化した言語といえる。 Processing のIDE Processing にはsketchbook(スケッチブック)と呼ばれる必要最小限のIDEが含まれている。 Processing でのプログラミングでは、
Download and open the 'Processing' application. Select something from the Examples. Hit the Run button. Lather, rinse, repeat as necessary. More information on using Processing itself is can be found in the environment section of the reference. To learn the Processing language, we recommend you try a few of the built-in examples, and check out the reference. A group of diverse books have been writ
Haxe 4 is here! Haxe is an open source high-level strictly-typed programming language with a fast optimizing cross-compiler. Download 4.3.6 Released: 2024-08-07 Haxe can build cross-platform applications targeting JavaScript, C++, C#, Java, JVM, Python, Lua, PHP, Flash, and allows access to each platform's native capabilities. Haxe has its own VMs (HashLink and NekoVM) but can also run in interpre
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く