Elixir 프로그래밍
-
Elixir 의 데이터 형(Type)Elixir 프로그래밍 2019. 7. 26. 15:31
사족일 수 있지만, 컴퓨터는 사실 모든 정보를 숫자로 저장, 연산 처리를 합니다. MP3, JPG 이미지, 워드 문서 등등 컴퓨터가 처리하는 모든 정보 내용은 컴퓨터 내에서 수치화되어서 처리가 됩니다. 이는, 컴퓨터로 처리할 수 있기 위해서는 수치화를 해야한다는 것을 의미합니다. 인터넷 뱅킹을 하는 것도, 내가 가진 자산을 은행의 시스템에서 수치화한 거고, 송금을 하는 것은 내 자산의 수치를 감소하고 입금을 받는 사람의 자산에 수치를 증가시키는 것으로 볼 수 있습니다. 냄새를 아직 컴퓨터로 처리하지 못하는 것은 (어떤 물질을 컴퓨터로 분석하는 것과는 다른 - 어떤 냄새를 한 인터넷으로 다른 사람에게 보내지 못하는 것은) 냄새를 수치화하지 못하기 때문입니다. 결국은 컴퓨터는 현실의 어떤 개념이나 물질을 디..
-
함수로 데이터를 조작하는 것과, 데이터를 조작할 함수들을 배치하는 것의 차이Elixir 프로그래밍 2019. 7. 26. 10:51
흔히들 함수형 언어는 , 그 출발이 람다(Lambda) 연산이라 합니다. 람다 연산은 데이터들에 함수를 적용하는 것이라 할 수 있습니다. 아래의 두 코드를 비교해 보죠. 두 코드 모두 array에 있는 값들을 2배씩 증가시키는 코드입니다. c code 예제 elixir code 예제 두 코드를 비교해 보면, c의 코드는 "데이터에 조작을 가하는 코드 (또는 함수를) 작성한다"라고 볼 수 있습니다. 이에 반해, Elixir는 , "데이터에 적용할 함수를 배치한다" 라 할 수 있습니다. 간단한 코드라 별 차이가 없어 보이지만, 실무에 적용하면 이 둘의 차이는 엄청나 집니다. C의 코드는 Side Effect 가 생기게 됩니다. 만일 두 개 이상의 Thread가 동시에 같은 코드를 실행한다면, 당연히 문제가 ..
-
함수형 언어 : 함수와 데이터Elixir 프로그래밍 2019. 7. 2. 22:59
스칼라, 하스켈, Swift , Java 8의 함수형 프로그래밍 지원, Python의 Lamdba, 모두 함수형 언어 또는 함수형 언어 개념을 가지고 있다고 합니다. 무언가 좋은 것이 있으니, 함수형 언어가 세상에 많이 나오고 있겠지요. 이 글은 함수형 언어에 대한 내용을 간략히 적겠습니다. 함수는 이미 프로그래밍에서 익숙한 개념입니다. 어떤 주어진 데이터에 대한 처리를 하여 그 결과를 생성하는 코드의 묶음 정도로 생각할 수 있을 것입니다. 다른 프로그래밍 언어에도 있는 함수인데 왜 굳이 함수형 언어라고 할까요? 사실, C++ , Java 등의 OOP 언어는 중심이 Class 입니다. 실 세계를 Class로 모델링하고 이 Class는 사실 데이터와 이 데이터를 처리할 함수(메소드)의 묶음으므로 볼 수 있..
-
EDPS(컴퓨터) 와 함수Elixir 프로그래밍 2019. 7. 2. 16:20
출처 : https://www.javatpoint.com/edp-full-form EDP Full Form - javatpoint EDP full form, EDP stands for, meaning, what is EDP, description, example, explanation, acronym for, abbreviation, definitions, full name www.javatpoint.com EDPS : Electronic Data Processing System 전산을 전공하신 분은 들어보셨을 용어입니다. 컴퓨터를 다른 말로 EDPS 라고 합니다. 말 그대로 전자적인 데이터 처리 시스템입니다. 위의 그림에서와 같이 어떤 "데이터를 입력"받아서 어떤 "처리"를 한 후, 그 결과 "데이터(..
-
함수형 프로그래밍 언어 : ElixirElixir 프로그래밍 2019. 7. 2. 16:18
가장 첫 글은 다음의 그림으로 시작하고자 합니다. 출처 : https://nesoy.github.io/articles/2018-05/Functional-Programming 저는 프로그래밍을 꽤나 오랫동안 했습니다. 대략 30년이 넘었습니다. 처음 시작한 언어는 Apple II로 시작한 Basic 이었습니다. 그 후, Fortran, Pascal, C, C++, Java 등의 언어를 익혔고 이중 현업에서 가장 많이 사용한 언어는 C++입니다. C로 개발을 한 기간도 길고, 지금도 C에서 C++로 넘어가던 때의 기억이 생생합니다. C에서 Global variable이 없어지고, 객체라는 것으로 사물을 모델링하고, 객체 간의 연동을 통해서 프로그램을 개발할 수 있음을 느꼈을 때의 희열을 잊을 수 없습니다. ..