Making kernels for Jupyter |
Jupyterカーネルの作成 |
A 'kernel' is a program that runs and introspects the user's code. IPython カーネルとは、ユーザの書いたコードを実行し、内部状態を確認するためのプログラムです。IPythonは includes a kernel for Python code, and people have written kernels for
package model | |
type UTTypeTagSpecification struct { | |
publicFilenameExtension map[int]string `json:"public.filename-extension"`//=> [0 => "gputrace"] | |
} | |
type UTImportedTypeDeclaration struct { | |
UTTypeIdentifier string//=> "com.apple.gputools.gputrace" | |
UTTypeConformsTo map[int]string//" => [0 => "com.apple.package"] | |
UTTypeDescription string//=> "GPU Trace" | |
UTTypeTagSpecification UTTypeTagSpecification |
mkdir 58 | |
cd 58 | |
svn co http://anonsvn.jboss.org/repos/jbossas/trunk | |
cd trunk | |
svn up -r 58 | |
cd ../../ | |
mkdir 2239 | |
cd 2239 | |
svn co http://anonsvn.jboss.org/repos/jbossas/trunk | |
cd trunk |
Making kernels for Jupyter |
Jupyterカーネルの作成 |
A 'kernel' is a program that runs and introspects the user's code. IPython カーネルとは、ユーザの書いたコードを実行し、内部状態を確認するためのプログラムです。IPythonは includes a kernel for Python code, and people have written kernels for
digraph "Swift Standard Library" {graph [charset = "UTF-8";label = "Swift Standard Library";labelloc = t;labeljust = c;bgcolor = "#000000";fontcolor = white;fontsize = 18;style = filled;rankdir = TB;margin = 0.2;splines = spline;ranksep = 7;nodesep = 2];node [style = "solid,filled";fontsize = 16;fontcolor = white;fontname = "Migu 1M";fixedsize = false;height = 0.6;width = 1.2;shape = box];edge [style = solid;fontsize = 14;fontcolor = white;fontname = "Migu 1M";color = white;labelfloat = true;labeldistance = 10;labelangle = 100];subgraph cluster_979385246 {UTF16 [fillcolor = "#e95464"];UTF32 [fillcolor = "#e95464"];UTF8 [fillcolor = "#e95464"];UnicodeCodec [fillcolor = "#727171";height = 3;width = 3];graph [labelloc = t;labeljust = c;margin = 30;style = "filled,dashed";fillcolor = "#000000";color = "#ffffff";label = "UnicodeCodec Family"]};subgraph cluster_1347124626 {subgraph cluster_2120525211 {LazyBidirectionalCollection [fillcolor = "#e95464"];LazyCollection [fillcolor = "#e95464"];LazyDropWhileBidirection |
Author: Ian Lance Taylor
Created: January 2011
Last updated: April 2016
Discussion at https://golang.org/issue/15292
In this section I will attempt to compare and contrast ABCs to other approaches that have been proposed.
ABCの導入はDuck Typingの終わりを意味するのか?私はそうは思わない。Pythonは __getitem__
メソッドが定義されている時にクラスが BasicMapping
や Sequence
に由来することを求めないし、x
がABCのインスタンスであることを x[y]
構文が求めることもない。書き込みメソッドを持つ限り"file-like"なオブジェクトを sys.stdout
に結びつけることが未だ可能である。
もちろん、適切な基底クラスから派生させるために使用者を励ます餌は存在する;これらは、特定の機能のデフォルトの実装からmappingとsequenceを区別するための改良された機能に変わる。しかしそこにスティックは存在しない。もし hasattr(x, "__len__")
が動けば素晴らしい!ABCはmappingとsequenceの区別といったPython2に良い解決法が存在しない問題を解決するためのものである。
https://github.com/apple/swift/blob/cc852042c9da5892fb5cdedfb6cf49740004755c/docs/TypeChecker.rst
このドキュメントでは,Swiftにおける型検査器の設計と実装について説明する. 型検査器の修正,拡張,改良をしたい開発者,あるいは型検査器がどのように働くかを深く理解したいだけの開発者に向けたものである. Swiftに精通していることが前提である.