# fp

40개의 포스트
post-thumbnail

2021.1.20 TIL

순수함수가 무엇인지 대하여 꽤나 고민을 했었다. 동일한 입력을 넣으면 동일한 출력을 하는 함수로 생각을 했었는데, 이런 함수라도 사이드 이펙트가 있을 수 있기에 좀 더 구체적인 순수함수의 정의에 대하여 생각하며 내린 결론은 "매개변수에만 의존하는 값을 반환하는 함수"

2일 전
·
0개의 댓글

[TIL] 1월 19일

어제 미션구현 중 유일하게 완성한 코드 한줄 Predicate isFactor = potentialFactor -> number % potentialFactor == 0;함수형 인터페이스의 타입을 가진 참조변수에 람다식을 담은 의미는 무엇일까람다식은 익명 객체이다.

3일 전
·
0개의 댓글

[Modern Java] 자바 함수 (람다, 메소드 참조)

Modern Java가 등장하면서 객체지향 프로그래밍과 함수형 프로그래밍이 함께 공존하게 되었다. 두 프로그래밍의 차이를 알아보자!

2021년 1월 1일
·
0개의 댓글

HMAC 구현해보기 (feat. 함수형 프로그래밍)

HMAC을 직접 구현해보고 적용하였다..! 처음에 생성 과정을 봤을 때는 이게 뭔가 싶었는데 지금은 이해를 다 하고 있으니까 생각보다 쉽게 코드로 구현할 수 있었다. 그래서 마스터 세션에서 본 함수형 프로그래밍도 나름대로 적용해보고 재미있었던 경험이었다.hmac.js

2020년 12월 17일
·
0개의 댓글

FP(Functional Programming) - 모나드를 사용하는 것에 대한 생각(완)

제가 경험한 웹 프로그래밍은 아래 두 케이스 입니다.서버에서 데이터 받아와서 화면 구성하는 일반 web app그래픽 라이브러리를 사용한 특수한 web app한 케이스 씩 살펴 보겠습니다.react를 예로 들면, 도대체 redux-saga는 어떻게 redux에 보내는 a

2020년 10월 30일
·
0개의 댓글

FP(Functional Programming) - 함수

함수는 두 집합 사이의 관계를 설명하는 수학적 개념 입니다. 아래 내용은 알아두면 좋습니다. 뭔가 받아서 뭔가 뱉어낸다의 맥락에선 일맥 상통 합니다.그러나 수학에는 메모리가 없죠. 함수값은 함수값 입니다. 수학에서의 함수는 집합간의 관계를 설명하는 것이기 때문에 함수는

2020년 10월 30일
·
0개의 댓글

FP(Functional Programming) - 수학적 구조와 모나드

모나드에 대해서 "모나드는 endofunctor입니다" 하고 스리슬쩍 넘어갔었는데, 그 부분에 대해서 자세히 얘기해보려 합니다.수학적 대상은 우리가 수학적인 생각을 하면 마주치는 모든 것 입니다.수, 수열, 행렬, 집합, 점, 선, 삼각형, 군, 환, 체, 카테고리 등

2020년 10월 29일
·
0개의 댓글
post-thumbnail

Sum Type (서로소 유니온 타입) 그리고 패턴매칭

일반적으로 우리가 사용하는 타입은 and 로 결합되는 타입입니다.그 예시를 들자면 아래과 같습니다.즉 Person 이라는 타입은 name 과(and) age 로 이루어진 타입이라는 것이죠.이런 타입 방법은 보편적으로 사용되지만, 만약 Alien 이라는 새로운 타입이

2020년 10월 26일
·
0개의 댓글

identity functor

프로그래밍 언어에 존재하는 모든 구체적인 타입은 암시적으로 identity functor로 lifting 되어 있는상태인가?η가 Identity functor인 I를 functor M으로 변환하는 natural transformation 이고이에 해당하는 haskell

2020년 10월 26일
·
0개의 댓글

monadologia.js 제작 후기

모나드에 대한 개념은 꽤 오래 전부터 알고 있었지만, 이렇게 하나하나 이해하며 구현한 적이 없었는데 이런 과정이 이해를 더해주는 것 같아 유익한 경험이었던 것 같다. js에는 이미 함수형 패러다임이 군데군데 녹아 있다. 꼭 monad라고 명칭 하지 않지만 monad의

2020년 10월 20일
·
0개의 댓글

FP(Functional Programming) - Task

우리는 이미 익숙한 비동기를 알고 있습니다. 바로 Promise죠return으로 연결되어 있는 모나드들의 mapping 함수는, 비동기 함수는 적용할 수 없습니다.사실 동기, 비동기는 어떻게 해도 같이 혼합 될 수가 없습니다. async await 키워드는 async가

2020년 10월 19일
·
0개의 댓글

FP(Functional Programming) - State

우리는 앞서 reader monad를 볼때 단순히 입력된 상태(config)를 읽어오기만 했는데요, state 모나드는 상태에 따라 다양한 액션을 할 수 있는 모나드 입니다. 상태를 입력 할수도 있고, 수정도 할 수 있고, 상태를 가져와 value를 바꿀수도 있습니다.

2020년 10월 19일
·
0개의 댓글

FP(Functional Programming) - Reader

map이나 chain은 사실 either나 mayber와 대동소이 하지만 ask라는 특이한 함수가 있습니다. 이 함수는 입력된 설정을 읽어와 다음 매핑된 함수의 파라미터로 넘길 수 있도록 하는 함수 입니다.runReader함수는 생성때 입력된 함수 입니다. env를 받

2020년 10월 19일
·
0개의 댓글

FP(Functional Programming) - either & maybe

사실 뭐 거창한게 있는 것 같지만 별 것 없습니다... 상황에 맞춰서 값을 빼다가(flatten) 다시 넣어서 생성하면 그만이기 때문이죠.either에서 catch 호출을 하면, catch에 넣은 함수 리턴 값이 right에 다시 담기는걸 우리는 알고 있습니다. 그 값

2020년 10월 16일
·
0개의 댓글

FP(Functional Programming) - Writer

interface는 거의 대동소이 합니다.간단 합니다. map은 value를 주어진 함수를 통해 mapping 하구, logging은 값은 그대로 유지하고, 새로운 스트링을 생성하여 로그에 추가 합니다.로그를 확인 해보겠습니다 value도 바뀌어 있고, log도 잘 쌓

2020년 10월 15일
·
0개의 댓글

FP(Functional Programming) - Either

가능 하긴 합니다. 몇가지 방법을 생각 해 볼 수 있습니다.값을 그냥 다 넣는데, 내가 원하는 값만 mapping된 함수에서 분기처리 하여 로직 수행내가 원하는 값이 아니면 다 null처리이정도겠네요, 근데 조금 다른 상황을 생각해보면,, 지금 당장 생각 나는 것은 에

2020년 10월 13일
·
0개의 댓글

FP(Functional Programming) - Maybe

https://velog.io/@cfop/FPFunctional-Programming-monad전 글을 참고해 주세요!전 글에서 퍼왔습니다. 이를 어떻게 구현하는지 보도록 하겠습니다.인터페이스를 잘 봐주세요! 모나드 자체가 박스에 넣고, 빼고 계산하고 과정을

2020년 10월 12일
·
0개의 댓글

FP(Functional Programming) - monad

이렇게 하면 되는거 아닌가? 굳이 복잡하게아래와 같은 상황 이라면?이 코드를 풀어서 써보면 이렇다 "Number 세상에서 String 세상으로 data를 넘긴다. String 세상으로 넘어간 data는 String 세상에 있는 함수를 쓸 수 있다."그러나 이것도 약간의

2020년 10월 10일
·
0개의 댓글

Java 면접 정리

둘 다 배열이라는 점은 동일하나, Array는 인덱스로 접근하는 반면, ArrayList는 메서드를 통해 접근합니다.(index로 접근하는 것은 동일)Array는 Object뿐만 아니라 원시 형태(int, double 등)도 담을 수 있지만, Array는 Object형

2020년 6월 13일
·
0개의 댓글

옵셔널 체이닝과 await은 같습니다

두 기능이 같은 이유는 무엇일까요? 공통된 추상화를 찾아봅시다

2020년 5월 18일
·
0개의 댓글