コンテンツにスキップ

動的プログラミング言語

出典: フリー百科事典『ウィキペディア(Wikipedia)』

: dynamic programming language: dynamic languageJavaJDK/JRE

SmalltalkStrongtalkGradualtalk

[]


使

[]



eval[]


evalLISPSeval LISP eval 

[]


DLL eval eval [1]

[]


Smalltalk
Object
	subclass:		        #Some
	instanceVariableNames:	''
	classVariableNames:	    ''
	poolDictionaries:	    ''
	category:		        'Example'.

上記はクラス定義用の専用構文ではなく、Objectというクラスオブジェクトにクラス登録用のメッセージを送っているだけである。実行中に登録しているが削除も実行中に可能である。

制御構文[編集]

LispやSmalltalkをはじめ幾つかの言語は分岐や反復の専用の制御構文を持たない。無名関数と高階関数の組み合わせによって全てを代用している。

[
	Error signal: '処理失敗'. 
]
	on: Exception
	do:
	[ :exception |
		"例外を捕捉"
	].

上記はSmalltallkによる例外処理の例である。クラス登録と同じく言語機能による専用構文ではない。

メッセージ送信[編集]

Smalltalk系統のオブジェクト指向言語にみられる。一つのメソッドに複数セレクターと紐づけたり、全てのメッセージを受け取るメソッドを定義することで、メッセージを受信するオブジェクトがメッセージと同じセレクターを持つメソッドを備えていなくてもメッセージを受信できる。

"#onClick:を使ったメッセージをopen:メソッドに転送させる。"
FileEventHandler
	addSelector:	#onClick:
	withMethod:     FileEventHandler >> #open:.

Smalltalk#open:#onClick:


[]


 LISP 

[]



[]


使 LISP S

[]


 eval CC++

[]



APL

Befunge

ChucK

Curl

Dylan

ECMAScript
ActionScript

DMDScript

E4X

JavaScript

JScript

Eiffel

Erlang

Forth

Groovy



HyperTalk

Io

LISP
Scheme

LOGO

Lua

Mathematica

Oberon

Objective-C

Perl

PHP

Pike

Prolog

Python

REBOL

Ruby



Smalltalk
Bistro

Self

Slate

Squeak

SNOBOL

SuperCard

SuperCollider

Tcl
XOTcl

TeX

VBScript

Visual FoxPro

Windows PowerShell

xHarbour



CC++ JavaFORTRAN 

出典[編集]

  1. ^ Meijer, Erik and Peter Drayton (2005年). “Static Typing Where Possible, Dynamic Typing When Needed: The End of the Cold War Between Programming Languages”. Microsoft Corporation. 2008年1月18日閲覧。

外部リンク[編集]