#noindex 프로그래밍에서 '''함수''': 어떤 계산을 수행하는 문장들에 이름을 붙인 것. '''함수'''를 정의한다는 것: 이름을 지정하고 문장들의 순서를 지정한 것. 이후에 이름으로 '''함수'''를 “[[호출,call]]”할 수 있음. (Think Python) curr [[함수,function#s-2]] 이거 pagename을 펑션 보다는 [[루틴,routine]] [[서브루틴,subroutine]]으로 하는 건 어떤가? [[기능,function]]이라는 뜻도 있다 NdEn:function WtEn:function 다음 것들과 매우 밀접하고 어쩔 땐 거의 같거나 완전히 같을 때도 있는데 chk + mkl * [[사상,sasang]]? (KmsK:사상 [[사상,map]] [[사상,mapping]] [[사상,morphism]] ....) .... [[맵,map]] [[매핑,mapping]] KmsE:map * [[변환,transform]] or [[변환,transformation]] KmsK:변환 ..... + 변환을 나타내는 [[행렬,matrix]] Ndict:변환행렬 Ggl:변환행렬 * [[연산,operation]] [[연산자,operator]] [[작용소,operator]] KmsE:opera * ....and? * 참고: 함수 사상 변환 http://www.ktword.co.kr/test/view/view.php?m_temp1=4979 and rel.: [[대응,correspondence]] [[관계,relation]] [[사영,projection]] 위 목록끼리 할 수 있는 게 * [[합성,composition]] * ...and? <> = Sub (특정 이름의 function) = == apply == [[apply_function]] [[애플리케이션,application]] ...maybe [[적용,application]] == eval == [[eval_function]] Rel [[평가,evaluation]] [[homoiconicity]] https://namu.wiki/w/eval == (esp. labmda calculus) == === application === 위에 apply랑 같은 거? chk 자료 F, 자료 A가 있다면 F·A 는 F는 [[입력,input]] A에 "적용"되는 알고리듬으로 간주할 수 있다. 이걸 두 가지 방법으로 보면 1. 계산 과정 FA. - captured by the notion of conversion, and even better of reduction. // [[전환,conversion]]? =,conversion . conversion { '''conversion''' } // conversion Ggl:conversion KmsE:conversion 2. 이 과정의 [[출력,output]]. - captured by the notion of models([[시맨틱스,semantics]]). type-free라서, FF같은 것도 있다. 이 땐 [[재귀,recursion]]를 시뮬레이트하기에 유용하다. (Barendregt 2000 p7) === abstraction === 만약 M≡M[x] 가 x를 포함한('x에 의존하는') [[식,expression]]이라면 λx.M[x] 는 함수 x ↦ M[x] 를 뜻한다^^denote^^. ex. λx.2*x+1 은 x ↦ 2*x+1 일반적으로 (λx.M[x])N = M[N] 이다. 더 보기 좋게^^preferably^^ 이렇게도 쓸 수 있다. (λx.M)N = M[x:=N] 여기서 [x:=N] denotes substitution of N for x. // [[치환,substitution]] (Barendregt 2000 p7) = Sub (function) = == function call == function call = call 함수호출 펑션호출 [[functionl_call]] or 그냥 [[호출,call]] == function composition == 함수합성 펑션합성 [[function_composition]] { function composition https://wiki.haskell.org/Function_composition Up: [[펑션,function]](=[[함수,function]]) [[합성,composition]] } == function inlining / inline function == [[function_inlining]] / [[inline_function]]? { [[매크로,macro]] 비슷? aka [[function_unfolding]] (in Haskell) ... https://wiki.haskell.org/Function_unfolding https://wiki.haskell.org/Function_inlining Up: compiler_ or code_ optimization ? } == intrinsic function == intrinsic function [[컴파일러,compiler]]가 [[컴파일,compile]] ''[[컴파일,compilation]]? WtEn:compile WtEn:compilation'' 할 때 특별 취급해주는. (특정 architecture/compiler/...에서 이런 펑션들을 종합적으로 일컫는 표현이 'intrinsics'.) 나는 그냥 'intrinsics'라고 해야 와닫는다. ~function 표현은 we에서 처음 보고 이게 뭐지 했는데. https://en.wikipedia.org/wiki/Intrinsic_function Ggl:"intrinsic function" == first-order function == first-order function ? first order function ? http://emal.iptime.org/noriwiki/index.php/First-order_function ... Google:first+order+function == second-order function (?) == == (third-order function ''and so on...?'') == == higher-order function == [[higher-order_function]] =,higher-order_function =,higher-order_function . higher-order_function |=,HOF HOF { higher order function (HOF) higher-order function https://wiki.haskell.org/Higher_order_function "(Def.) A '''higher-order function''' is a function that takes other functions as arguments or returns a function as result." ... "higher order function" Bing:"higher order function" Naver:"higher order function" Ggl:"higher order function" } // higher order function (HOF) == pure function == pure function pure_function - 부수효과/부작용/side_effect가 없는 WtEn:pure_function WpEn:Pure_function Ggl:"pure function" == impure function == impure function impure_function - 그렇지 않은 { function : pure if ... programming_language : purely functional if evaluation of expressions is pure. https://wiki.haskell.org/Pure Ggl:"impure function" } == first-class function == [[first-class_function]] =,first-class_function . first-class_function { first-class function http://emal.iptime.org/noriwiki/index.php/First-class_function WtEn:first-class_function x [[Date(2023-08-19T10:17:02)]] instead, see: WtEn:first_class = https://en.wiktionary.org/wiki/first_class o WtEn:first-class_citizen = https://en.wiktionary.org/wiki/first-class_citizen o WtEn:first-class_object = https://en.wiktionary.org/wiki/first-class_object o so mkl: [[first_class]] { CategoryPrefix } [[first-class_citizen]] [[first-class_object]] [[WpEn:First-class_function]] = https://en.wikipedia.org/wiki/First-class_function ''NOTE 1st/2nd/3rd-class : [[클래스,class]]에도 언급하기 시작 at [[Date(2023-08-19T10:17:02)]]'' "first-class function" } == virtual function == [[virtual_function]] =,virtual_function . virtual_function { virtual function WtEn:virtual_function "syn. [[virtual_method]]" => WtEn:virtual_method "A [[메소드,method]] whose behavior can be overridden within an inheriting class by a method with the same [[signature]]{ ''pagename?'' }." todo mkl [[vtable]] / [[virtual_table]] cmp [[virtual_class]] curr at [[클래스,class]] "virtual function" } == generic function == '''generic function''' MKL [[polymorphism]] > [[parametric_polymorphism]] https://en.wiktionary.org/wiki/generic_function [[WpEn:Generic_function]] = https://en.wikipedia.org/wiki/Generic_function Ggl:"generic function" = Sub ('functional') = // functional- == functional programming == [[functional_programming]] =,functional_programming . functional_programming =,fp . fp { functional programming https://wiki.haskell.org/Functional_programming https://wiki.haskell.org/Functional_programming/Old_version "functional programming" } == functional dependency == [[functional_dependency]] =,functional_dependency . functional_dependency { functional dependency 함수의존성 ? 함수적의존성 ? 함수형의존성 ? https://wiki.haskell.org/Functional_dependencies [[dependency]] ... [[의존성,dependency]]? "functional dependency" } = CS function이 가질 수 있는 성질 = [[성질,property]] == (아래 둘 반대, 서로 antonym) == 이름에 공유: [[참조,reference]] rel, mkl: [[투명성,transparency]] [[불투명성,opacity]]? NdEn:opacity Ndict:opacity [[side_effect]] [[pure_function]] [[impure_function]] Ggl:"intensionality and extensionality of function" == referential transparency == [[referential_transparency]] [[참조투명성,referential_transparency]] 이 가장 무난한 번역인데... referential transparency n. referentially transparent adj. WtEn:referential_transparency = https://en.wiktionary.org/wiki/referential_transparency REL [[순수함수,pure_function]] WtEn:pure_function == referential opacity == [[referential_opacity]] referential opacity https://en.wiktionary.org/wiki/referential_opacity 참조 불투명 ? 참조불투명성 - pagename? '''referentially opaque''' adj. '''referential opacity''' n. Ggl:"referential opacity" ex. 난수생성함수 (rel. RNG random_number_generator ) = MKLINK = [[메소드,method]] = PL Syntax = function_definition function_declaration syntax가 다른데 이걸 나열할 필요가 있을지, 아무튼. 각각 [[정의,definition]] [[선언,declaration]] == Python == [[파이썬,Python]]: {{{ def funcname(): }}} ---- Twin [[Namu:함수(프로그래밍)]] = https://namu.wiki/w/함수(프로그래밍)