Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

타입으로 견고하게 다형성으로 유연하게 3주차 - 조현우 #467

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

aquamagic9
Copy link
Contributor

타입으로 견고하게 다형성으로 유연하게 3주차 정리

무엇인가 타입의 값은 만들기 쉽지만 사용하기 어렵고, 무엇이든 타입의 값은 만들기 어려워도 사용하기는 쉽다. 해당 말이 조금 어렵게 다가오긴 했지만 무엇인가와 무엇이든 타입과 같은 새로운 요소들을 접해 볼 수 있어 좋았습니다.

Copy link

github-actions bot commented Feb 5, 2025

우측에 있는 Projects, Milestone, Development를 확인 후 할당 해주세요~! 🙇

Copy link
Member

@jongfeel jongfeel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

무엇인가 타입의 값은 만들기 쉽지만 사용하기 어려운 최대 타입인 Any와 닮았고, 무엇이든 타입의 값은 만들기는 어려워도 사용하기는 쉬운 최소 타입인 Nothing과 닮았다.

### 논의사항
1. 힌들리-밀러 타입 추론은 제네릭 함수를 정의할 때 타입 추론이 일어나 타입 매개변수를 쓰지 않아도 함수가 자동으로 제네릭 함수가 됩니다. 이런 기능이 생겨난 이유는 해당 기능이 있는 언어(하스켈, 오캐멀 등)로 개발을 하는 과정 중 제네릭을 사용하는 경우가 많기 때문일까요? 아니면 기능을 먼저 만들어 놓은 편에 속할까요? 사용하는 경우가 많다면 무엇 때문에 제네릭을 많이 사용하게 되었을까요?
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

개발을 하는 과정 중에 반복적으로 동일한 로직의 코드를 다른 타입으로 작성하다 보니 필요성이 생긴게 아닐까 합니다.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이런 기능이 생겨난 이유는 해당 기능이 있는 언어로 개발을 하는 과정 중 제네릭을 사용하는 경우가 많기 때문일까요? 아니면 기능을 먼저 만들어 놓은 편에 속할까요?

---> 글쎼요 이건 해당 언어들에서 어떻게 힌들리-밀러 타입 추론을 도입하게 되었는지를 확
인해봐야하는 사항 같아서 이부분을 확인해보시면 되지 않을까 생각됩니다
---> 실제로 파이썬의 경우는 PEP 이전에 귀도가 혼자 언어스펙을 정의하고 개발하던 시절, PEP 이후, 새로운 언어 문법 스펙을 정의하는 것 둘다 있습니다

사용하는 경우가 많다면 무엇 때문에 제네릭을 많이 사용하게 되었을까요?

---> 힌들리-밀러 타입추론은 함수형 패러다임을 기반으로 만들어진 개념으로 보이고, 이게 왜 필요한지, 무엇 때문에 제네릭을 많이 사용하게 되었는지에 대해서 알려면 실제 함수형 패러다임에 대해서 많이 경험을 해봐야 그 필요성을 알거 같은데, 제 개인적으로는 경험이 많지 않다보니 답변을 하기가 쉽지 않네요

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2025 타입으로 견고하게 다형성으로 유연하게 탄탄한 개발을 위한 씨줄과 날줄
Projects
Status: In review
Development

Successfully merging this pull request may close these issues.

<타입으로 견고하게 다형성으로 유연하게> 3장, 총 73페이지, 2025-02-07
4 participants