Yep, we're talking about it Why have operator overloading at all? Useful for new proposed data types - BigInt, Decimal Operator support make these "look more like" first class data types Offers a set of well-understood base level semantics (`+` is better understood than `.plus`) C++, F#, Scala, Ruby, Haskell, & Rust all agree! Why have operator overloading at all? const a = 2n const b = 8n const c
Pythonの__init__これなんて読むのかと思ってたら、"dunder init"と読むらしいです。 python wikiに書いてあることを抜粋すると、 とあるインターネット上のフォーラムにてMark Jacksonと言う人が以下のように提案したのが発端らしいです。 An awkward thing about programming in Python: there are lots of double underscores. My problem with the double underscore is that it's hard to say. How do you pronounce __init__? "underscore underscore init underscore underscore"? "under under init under under"?
コンパイルエラーの問題点 DeepFix Iterative Repair まとめ 参考文献 プログラミング言語のコンパイルエラーを自動で検知して修復することができたら、プログラマの作業時間を減らせる可能性があります。もしくは、テキストエディタがプログラムを書いている最中に、エラーだろうと思われる構文を見つけたときにさり気なく教えてくれたら生産性が著しく向上することも考えられます。 “Software is eating the world.“という言葉は、マーク・アンドリーセンの提唱した言葉です。まだまだ「食い尽くす」ほどではないものの、徐々にその影響力は高まっていると感じます。ソフトウェアを開発する必要性が増すにつれて、ソフトウェアエンジニアも次第に求められていくことでしょう。そして、そのプログラマの仕事の大部分はデバッグに費やされます。 バグや構文エラーを自動検知するシステムがテキス
SQL、書いてますか? こと大規模データ処理の分野においてはSQLはもはや標準インターフェイスであり、 分析やらバッチやらに関わっている皆様は日々大量のSQLクエリーを生産していることと思います。 そこでちょっと気になるのが、 SQLのコーディングスタイルってどうするのが一般的なんだっけ……? という点です。 イマドキはSQLなんてO/R mapperに吐かせることが多いからなのか、 それともコードを広い範囲で共有することがそもそもないからか、 SQLのコーディングスタイルについて見聞きすることは他のプログラミング言語に比べるとだいぶ少なく、 いまいち決定版と言えるスタイルがないなと感じています。 そんなわけで本日は、SQLのコーディングスタイルについての意識を活発化させるべく、 クックパッドでわたし(青木)が使っているコーディングスタイルから特徴的な点を紹介したいと思います。 特に、分析
プログラミング言語のコンパイラで用いられる構文解析の手法を図解で解説。 演算子順位法・LR法・再帰下降構文解析・Backtrack parsing・Packrat parsing・左再帰を許すPackrat parsingを扱っています。 非常に長いですがパラパラ漫画的な感覚で読んでみてください。Read less
Check out code samples and rest of the wiki for more. CST means Concrete Syntax Tree. Unlike an AST (Abstract Syntax Tree), a CST contains all the information from the JavaScript source file: whitespace, punctuators, comments. This information is extremely useful for code style checkers and other code linters. CST is also useful for cases when you need to apply modifications to existing JavaScript
概要 待ち焦がれた人も多いことだろう。ES2015の一番の目玉機能とも言えるクラス構文が、ついにV8でサポートされた。 Class構文は、『関数(コンストラクタ)定義』+『.prototypeへのメソッド定義』の糖衣構文である。 JSで今まで様々に工夫されてきたクラスの書き方を、綺麗に統一してくれる可能性を秘めている。 クラスを作る 従来、Catクラスを作ろうとした場合このように書いてきた。 function Cat(name) { this.name = name } Cat.prototype.meow = function () { alert( this.name + 'はミャオと鳴きました' ) } しかしこの書き方だとどうしても、コンストラクタとメソッドの定義が分離されているため、クラスとしてまとまりがなく分かりづらく感じる。 メソッドが増えてきた時も、Cat.prototyp
Rubyで微積分や統計解析を快適に扱うDSL作ったヨ!↓ github バグ報告を頂ければ24時間以内に直します. このDSLで一番大事にしたのは、 微積分や極限、対数や三角関数などを紙上で数学をする感覚と同じ感覚で取り扱える事. わざわざRubyでやる必要、あったの...?(;゜0゜) 僕がこのDSLをRubyで作ったのにはいくつか訳があります. Rubyが好き MATLABが苦手 Rubyが好き mathmaticaが苦手 Rubyが好き pythonが苦手 Rubyが好き ... とにかくRubyが好きです. 少しマジレスすると僕の大好きなRubyは数学色が薄いのが少し悲しかったのです. (蛇足ですが、この想いからrubyのMatrixクラスにシコシコcommit してます. ex. https://github.com/ruby/ruby/pull/568 Matrixを成長させ組
⾃ࠞ然⾔ࢠ語処理ྞ分野における ディープラーニングの現状 渡邉 ̀陽太郎ྒ 東北ྖ⼤֒学⼤֒学院情報科学研究科 IBIS2013 企画セッション2:ディープラーニング 2013/11/12 NLPにおけるディープラーニング 2 ⾔ࢠ語モデル の構築 ⾔ࢠ語の構成性 のモデル化 構成的意味論ྔ ⾔ࢠ語解析 (構造予測) Recursive Neural Networks Autoencoders (Socher et al., 2011, 2012, 2013) RBM (Minh and Hinton 2007) Feed-forward Deep NN (Bengio et al., 2003, Arisoy et al., 2012) Recurrent NN (Mikolov et al., 2010) (Wang and Manning 2013) (Mansur et al.,
Please see the online version of this article for supplementary materials. A Layered Grammar of Graphics Hadley WICKHAM A grammar of graphics is a tool that enables us to concisely describe the components of a graphic. Such a grammar allows us to move beyond named graphics (e.g., the “scat- terplot”) and gain insight into the deep structure that underlies statistical graphics. This article builds
Grammar of Graphics in HTML5 Source code, Live Demo Curran Kelleher 4/29/2013 Introduction If I’ve learned anything in this Design of Programming Languages class, it is that in Computer Science, the context you are working in (the language, the tools, the abstractions) determine what makes sense...
この記事は Vim Advent Calendar 2012 194日目の記事になります。 例えば、html では <script type="text/javascript"> console.log("Hello, JavaScript") </script> 例えば、markdown では ```vim echo "hello, vim" ``` ```ruby echo "hello, ruby" ``` 例えば、Vim では python << EOF print map(str, range(1, 10)) print "-".join(map(str, range(1, 10))) for value in range(1, 10): print "mami%d" % value EOF ruby << EOF result = (1..10).map(&:to_s).joi
Firefox Nightly (22) に ES6のArrow Function来たる - fragmentary ということで、早速試しているわけです。 基本 var f1 = () => "OK"; // 引数なしの場合は、"()"が必須 var f2 = arg => arg + 1; // 引数一つなら、"()"は省略可 var f3 = (arg1, arg2) => arg1 + arg2; // 複数の引数の場合は"()"必須 var f4 = arg => { // ステートメントを入れる場合は "{}" でブロックを生成する if (arg) return "OK"; else return "NG"; }; // オブジェクトを返す場合は、ブロックと間違われないように // ({...}) と () 等を使用する var f5 = () => ({ a: "A", b
About J.DepP is a C++ implementation of Japanese dependency parsing algorithms [1,2,3,4]. It takes a raw sentence as input and performs word segmentation, POS tagging (thanks to MeCab), bunsetsu chunking and dependency parsing. Syntactic parsers have been believed to be (significantly) slower than front-end part-of-speech taggers, and it is rarely utilized in industry that needs to handle massive
Dead simple Include prism.css and prism.js, use proper HTML5 code tags (code.language-xxxx), done! Intuitive Language classes are inherited so you can only define the language once for multiple code snippets. Light as a feather The core is 2KB minified & gzipped. Languages add 0.3-0.5KB each, themes are around 1KB. Blazing fast Supports parallelism with Web Workers, if available. Extensible Define
Syntastic is a syntax checking plugin for Vim created by Martin Grenfell. It runs files through external syntax checkers and displays any resulting errors to the user. This can be done on demand, or automatically as files are saved. If syntax errors are detected, the user is notified and is happy because they didn't have to compile their code or execute their script to find them. At the time of th
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く