Difference between r1.45 and the current
@@ -1,6 +1,8 @@
#noindex
[[형식언어,formal_language]]
[[컴퓨터언어,computer_language]]
##======언어,language =,language . 언어 language
Sub:[[natural_language]]
[[자연어,natural_language]]
[[인공어,artificial_language]]
[[명세언어,specification_language]] - curr at [[명세,specification]][[형식언어,formal_language]]
[[컴퓨터언어,computer_language]]
@@ -43,19 +45,22 @@
WpKo:공통_중간_언어 = https://ko.wikipedia.org/wiki/공통_중간_언어
WpEn:Common_Intermediate_Language = https://en.wikipedia.org/wiki/Common_Intermediate_Language
}
[[인터페이스,interface]]
[[정의,definition]]
Sub:
ASN.1 { https://en.wikipedia.org/wiki/ASN.1 }
= https://ko.wikipedia.org/wiki/인터페이스_정의_언어
= https://en.wikipedia.org/wiki/Interface_description_language
[[PHP_language]]
[[query_language]] (for [[database]])
WpEn:Common_Intermediate_Language = https://en.wikipedia.org/wiki/Common_Intermediate_Language
}
[[interface_description_language]] or [[interface_definition_language]] (IDL)
[[기술언어,description_language]]
[[interface_description_language]] or [[interface_definition_language]] (IDL) |=,IDL IDL
{[[인터페이스,interface]]
[[정의,definition]]
[[description]]
[[기술,description]]
[[언어,language]]
[[기술언어,description_language]]
Sub:
ASN.1 { https://en.wikipedia.org/wiki/ASN.1 }
WpKo:인터페이스_정의_언어
WpEn:Interface_description_language
[[WpKo:인터페이스_정의_언어]]
= https://ko.wikipedia.org/wiki/인터페이스_정의_언어
[[WpEn:Interface_description_language]]
= https://en.wikipedia.org/wiki/Interface_description_language
}[[PHP_language]]
[[query_language]] (for [[database]])
@@ -118,80 +123,7 @@
[[Self]] { [[WpKo:셀프_(프로그래밍_언어)]] [[WpEn:Self_(programming_language)]] }
[[Newspeak]] { [[WpEn:Newspeak_(programming_language)]] }
[[아이오,Io]] { [[WpKo:아이오_(프로그래밍_언어)]] }
{
[[DSL]]=[[domain_specific_language]]로 가장 많이 쓰이는 듯?? / Neovim{ Ggl:neovim }이 Ggl:vimscript 대신 이걸 [[scripting_language]]로 씀.
[[메타테이블,metatable]] =메타테이블,metatable =,metatable 메타테이블 metatable
{
{{{
local user = {
first = "John",
last = "Doe"
}
local metaUser = {
__tostring = function(user) -- 내부 method를 재정의? <- 아래 print(user)에서 호출됨.
return user.first .. " " .. user.last
end
__call = function(user) -- user자체를 호출되게 만드는 것. <- 아래 user()에서 호출됨.
print("Tables can be functions?!")
end
}
setmetatable(user, metaUser) -- user 객체를 새로운 behavior에 연결.
print(user)
user()
}}}
via https://youtu.be/f5MpjDtnFP4?si=mLzN38g9R8ltUKtH&t=345
}
루아의 코루틴으로 cooperative multitasking을 할 수 있다. 이런 식으로. [[루아,Lua]] [[코루틴,coroutine]]
{
ex.
{{{
function task1()
for i = 1, 5 do
print("Task 1, step " .. i)
coroutine.yield()
end
end
function task2()
for i = 1, 5 do
print("Task 2, step " .. i)
coroutine.yield()
end
end
local co1 = coroutine.create(task1)
local co2 = coroutine.create(task2)
for i = 1, 5 do
coroutine.resume(co1)
coroutine.resume(co2)
end
}}}
결과는
Task 1, step 1
Task 2, step 1
Task 1, step 2
Task 2, step 2
Task 1, step 3
Task 2, step 3
Task 1, step 4
Task 2, step 4
Task 1, step 5
Task 2, step 5
via https://youtu.be/f5MpjDtnFP4?si=mLzN38g9R8ltUKtH 6:10
}
} // metatable Ggl:"Lua metatable" Ggl:"루아 메타테이블"
https://librewiki.net/wiki/Lua [[WpKo:루아_(프로그래밍_언어)]]
} // Lua .... Ggl:"Lua language" Bing:"Lua language"
[[WpKo:딜런_(프로그래밍_언어)]]
[[WpEn:Dylan_(programming_language)]] = https://en.wikipedia.org/wiki/Dylan_(programming_language)
[[Newspeak]] { [[WpEn:Newspeak_(programming_language)]] }
[[아이오,Io]] { [[WpKo:아이오_(프로그래밍_언어)]] }
[[루아,Lua]] =루아,Lua 루아,Lua 루아,Lua
[[루아,Lua]]
[[딜런,Dylan]] =,Dylan {[[WpKo:딜런_(프로그래밍_언어)]]
[[WpEn:Dylan_(programming_language)]] = https://en.wikipedia.org/wiki/Dylan_(programming_language)
@@ -225,6 +157,8 @@
[Haskell_Curry]에서 이름을 딴? - Yes
https://rosettacode.org/wiki/Category:Haskell
WtEn:Haskell
@@ -237,7 +171,7 @@
[[어셈블리,assembly]] 보다는
[[어셈블리어,assembly_language]] - rel [[어셈블러,assembler]]
{
[[어셈블리어,assembly_language]] - rel [[어셈블러,assembler]]
[[웹어셈블리,WebAssembly,Wasm]] (= Wasm)
[[웹어셈블리,WebAssembly]] (= Wasm)
=웹어셈블리,WebAssembly =,WebAssembly 웹어셈블리 WebAssembly | =,wasm wasm{
Sub:
자연어,natural_language
인공어,artificial_language
명세언어,specification_language - curr at 명세,specification
형식언어,formal_language
컴퓨터언어,computer_language
기계어,machine_language
logical_language =,logical_language . logical_language
{
logical language
logical_language (?)
https://planetmath.org/logicallanguage
https://proofwiki.org/wiki/Definition:Logical_Language
MKL: 형식언어,formal_language 언어,language 로직,logic
logical language
TODO ADDTO 로직,logic and del this line
}
// 오더,order에 따라 {
1 first-order_language =,first-order_language . first-order_language
}
프로그래밍언어,programming_language
DDL,data_definition_language
DML,data_manipulation_language
메타언어,metalanguage =메타언어,metalanguage =,metalanguage . metalanguage 메타언어 metalanguage .. metalanguage
{
cmp object_language via "혹자의 말을 빌리자면, object language와 metalanguage의 구분도 잘 안 합니다 .... 여타 교재와 달리 object language와 metalanguage의 차이"[1]
cmp object_theory vs metatheory via "object theory와 metatheory의 구분을 해 주지는 않기 때문에"
}
중간언어 intermediate_language (IL)
{
MKLINK
중간표현 intermediate_representation (IR) - 표현,representation
자연어,natural_language
인공어,artificial_language
명세언어,specification_language - curr at 명세,specification
형식언어,formal_language
컴퓨터언어,computer_language
기계어,machine_language
logical_language =,logical_language . logical_language
{
logical language
logical_language (?)
https://planetmath.org/logicallanguage
https://proofwiki.org/wiki/Definition:Logical_Language
MKL: 형식언어,formal_language 언어,language 로직,logic
logical language
TODO ADDTO 로직,logic and del this line
}
// 오더,order에 따라 {
1 first-order_language =,first-order_language . first-order_language
}
프로그래밍언어,programming_language
DDL,data_definition_language
DML,data_manipulation_language
메타언어,metalanguage =메타언어,metalanguage =,metalanguage . metalanguage 메타언어 metalanguage .. metalanguage
{
cmp object_language via "혹자의 말을 빌리자면, object language와 metalanguage의 구분도 잘 안 합니다 .... 여타 교재와 달리 object language와 metalanguage의 차이"[1]
cmp object_theory vs metatheory via "object theory와 metatheory의 구분을 해 주지는 않기 때문에"
}
중간언어 intermediate_language (IL)
{
MKLINK
중간표현 intermediate_representation (IR) - 표현,representation
Sub:
공통_중간_언어 = https://ko.wikipedia.org/wiki/공통_중간_언어
Common_Intermediate_Language = https://en.wikipedia.org/wiki/Common_Intermediate_Language
}
기술언어,description_language
interface_description_language or interface_definition_language (IDL) |=,IDL IDL
{
인터페이스,interface
정의,definition
기술,description
언어,language
기술언어,description_language
공통_중간_언어 = https://ko.wikipedia.org/wiki/공통_중간_언어
Common_Intermediate_Language = https://en.wikipedia.org/wiki/Common_Intermediate_Language
}
기술언어,description_language
interface_description_language or interface_definition_language (IDL) |=,IDL IDL
{
인터페이스,interface
정의,definition
기술,description
언어,language
기술언어,description_language
인터페이스_정의_언어
= https://ko.wikipedia.org/wiki/인터페이스_정의_언어
Interface_description_language
= https://en.wikipedia.org/wiki/Interface_description_language
}
PHP_language
query_language (for database)
프로그래밍언어,programming_language
CPlusPlus언어 (C++)
C언어 (C)
D언어,D_language (D)
CSharp언어 (C#)
언어모델,language_model
언어학,linguistics
파스칼,Pascal
델파이,Delphi
자바,Java
자바스크립트,JavaScript
파이썬,Python => 파이썬,Python
펄,Perl
루비,Ruby
스킴,Scheme
Clojure
알골,ALGOL
{
/// "ALGOL"을(를) 전체 찾아보기 => http://tomoyo.ivyro.net/123/wiki.php/asdf?action=fullsearch&value=ALGOL&context=20&case=1
= https://ko.wikipedia.org/wiki/인터페이스_정의_언어
Interface_description_language
= https://en.wikipedia.org/wiki/Interface_description_language
}
PHP_language
query_language (for database)
프로그래밍언어,programming_language
CPlusPlus언어 (C++)
C언어 (C)
D언어,D_language (D)
CSharp언어 (C#)
언어모델,language_model
언어학,linguistics
파스칼,Pascal
델파이,Delphi
자바,Java
자바스크립트,JavaScript
파이썬,Python => 파이썬,Python
펄,Perl
루비,Ruby
스킴,Scheme
Clojure
알골,ALGOL
{
/// "ALGOL"을(를) 전체 찾아보기 => http://tomoyo.ivyro.net/123/wiki.php/asdf?action=fullsearch&value=ALGOL&context=20&case=1
특징
call-by-name / call_by_name
call-by-name / call_by_name
https://zetawiki.com/wiki/ALGOL
https://zetawiki.com/wiki/알골_60
https://www.pls-lab.org/en/Algol_60
https://www.pls-lab.org/en/Algol-like_languages
https://zetawiki.com/wiki/알골_60
https://www.pls-lab.org/en/Algol_60
https://www.pls-lab.org/en/Algol-like_languages
알골_(프로그래밍_언어)
알골
}
포트란,Fortran or FORTRAN ?
{
포트란
}
BASIC - 베이직 베이식 중 tbd.
프롤로그,Prolog =,Prolog . Prolog {
프롤로그
알골
}
포트란,Fortran or FORTRAN ?
{
포트란
}
BASIC - 베이직 베이식 중 tbd.
프롤로그,Prolog =,Prolog . Prolog {
프롤로그
프롤로그_(프로그래밍_언어)
= https://ko.wikipedia.org/wiki/프롤로그_(프로그래밍_언어)
= https://ko.wikipedia.org/wiki/프롤로그_(프로그래밍_언어)
...프롤로그 프롤로그 Prolog Prolog
... 프롤로그 입문 프롤로그 입문
... 프롤로그
}
스몰토크,Smalltalk =,smalltalk .
{
스몰톡
https://rosettacode.org/wiki/Category:Smalltalk
}
Self { 셀프_(프로그래밍_언어) Self_(programming_language) }
Newspeak { Newspeak_(programming_language) }
아이오,Io { 아이오_(프로그래밍_언어) }
루아,Lua
딜런,Dylan =,Dylan {
해스컬 /ˈhæskəl/ (wpen)
{
Haskell
= https://ko.wikipedia.org/wiki/프롤로그_(프로그래밍_언어)
= https://ko.wikipedia.org/wiki/프롤로그_(프로그래밍_언어)
...프롤로그 프롤로그 Prolog Prolog
... 프롤로그 입문 프롤로그 입문
... 프롤로그
}
스몰토크,Smalltalk =,smalltalk .
{
스몰톡
https://rosettacode.org/wiki/Category:Smalltalk
}
Self { 셀프_(프로그래밍_언어) Self_(programming_language) }
Newspeak { Newspeak_(programming_language) }
아이오,Io { 아이오_(프로그래밍_언어) }
루아,Lua
딜런,Dylan =,Dylan {
딜런_(프로그래밍_언어)
Dylan_(programming_language) = https://en.wikipedia.org/wiki/Dylan_(programming_language)
}
하스켈,Haskell =,Haskell . HaskellDylan_(programming_language) = https://en.wikipedia.org/wiki/Dylan_(programming_language)
}
해스컬 /ˈhæskəl/ (wpen)
{
Haskell
monad =,monad =,monad . monad monad monad Monad adj. monadic ?
free_monad =,free_monad =,free_monad . free_monad free_monad free_monad Free_monad
{
https://wiki.haskell.org/Free_monad
}
free_monad =,free_monad =,free_monad . free_monad free_monad free_monad Free_monad
{
https://wiki.haskell.org/Free_monad
}
Twin:
Haskell_Curry에서 이름을 딴? - Yes
} // Haskell
다트,Dart =다트,Dart =,Dart 다트 Dart
{
다트_(프로그래밍_언어)
Dart_(programming_language)
}
어셈블리,assembly 보다는
어셈블리어,assembly_language - rel 어셈블러,assembler
다트,Dart =다트,Dart =,Dart 다트 Dart
{
다트_(프로그래밍_언어)
Dart_(programming_language)
}
어셈블리,assembly 보다는
어셈블리어,assembly_language - rel 어셈블러,assembler
https://ko.wikipedia.org/wiki/시뮬라
https://rosettacode.org/wiki/Category:Simula
https://en.wikipedia.org/wiki/Simula
https://rosettacode.org/wiki/Category:Simula
https://en.wikipedia.org/wiki/Simula
...
Simula
Simula
}
Caml =,Caml . / OCaml =,OCaml .
{
https://rosettacode.org/wiki/Category:OCaml
OCaml
OCaml
}
Idris =,Idris =,Idris . Idris
{
https://github.com/jwvg0425/IdrisPractice
Simula
Simula
}
Caml =,Caml . / OCaml =,OCaml .
{
https://rosettacode.org/wiki/Category:OCaml
OCaml
OCaml
}
Idris =,Idris =,Idris . Idris
{
https://github.com/jwvg0425/IdrisPractice
Idris 언어
Idris 언어
Idris 언어
Idris language
Idris
}
Clean =,Clean =,Clean . Clean
{
클린_(프로그래밍_언어)
= https://ko.wikipedia.org/wiki/클린_(프로그래밍_언어)
= https://ko.wikipedia.org/wiki/클린_(프로그래밍_언어)
}
Idris 언어
Idris 언어
Idris language
Idris
}
Clean =,Clean =,Clean . Clean
{
클린_(프로그래밍_언어)
= https://ko.wikipedia.org/wiki/클린_(프로그래밍_언어)
= https://ko.wikipedia.org/wiki/클린_(프로그래밍_언어)
}
PL 관련 주제 ¶
rel glue_language
rel wrapper { wrapper_library { = library_wrapper https://en.wikipedia.org/wiki/Wrapper_library } wrapper_function { https://en.wikipedia.org/wiki/Wrapper_function } driver_wrapper { rel device_driver https://en.wikipedia.org/wiki/Driver_wrapper }
rel shim ?
rel adapter_pattern { 인터페이스,interface https://ko.wikipedia.org/wiki/어댑터_패턴 https://en.wikipedia.org/wiki/Adapter_pattern }
https://en.wikipedia.org/wiki/Glue_code
}
rel wrapper { wrapper_library { = library_wrapper https://en.wikipedia.org/wiki/Wrapper_library } wrapper_function { https://en.wikipedia.org/wiki/Wrapper_function } driver_wrapper { rel device_driver https://en.wikipedia.org/wiki/Driver_wrapper }
기타 wrapper class / primitive wrapper class ... 이건 primitive data type을 wrap해주는 그거... (Java 등 OOPL에서.) Wrapper_class redir to https://en.wikipedia.org/wiki/Primitive_wrapper_class_in_Java }
rel stubrel shim ?
rel adapter_pattern { 인터페이스,interface https://ko.wikipedia.org/wiki/어댑터_패턴 https://en.wikipedia.org/wiki/Adapter_pattern }
https://en.wikipedia.org/wiki/Glue_code
}