프로그래밍 언어를 이해하는데 중요한 키워드들이 여러 개 있습니다. 키워드를 중심으로 관련된 주제들을 모아서 살펴보는 글을 작성해 보려고 합니다. 소프트웨어 개발과 프로그래밍 언어에 관련된 이야기들을 키워드를 중심으로 풀어보는 시리즈입니다. 첫번째 키워드는 계산순서(evaluation order)입니다. 이것은 프로그래밍 언어의 패러다임과 깊이 연관되는 상당히 어려운 주제인데, 명령형 프로그래밍 언어부터 시작해서 차례로 살펴보겠습니다. 그리고 다음 글에서 lazy evaluation이라고 하는 좀 다른 프로그램의 실행 순서의 개념을 살펴보겠습니다. 명령형 프로그래밍 언어는 명령문(문장)을 차례대로 수행해 가는 방식의 프로그램을 작성하게 됩니다. 순서는 제어구조에 의해 결정될 것입니다. 문장은 수식을 포함하..
프로그래밍 언어를 이해하는데 중요한 키워드들이 여러 개 있습니다. 키워드를 중심으로 관련된 주제들을 모아서 살펴보는 글을 작성해 보려고 합니다. 소프트웨어 개발과 프로그래밍 언어에 관련된 이야기들을 키워드를 중심으로 풀어보는 시리즈입니다. 두 번째 키워드는 지연계산(delayed evaluation 또는 lazy evaluation)이라고 하는 명령형 프로그램의 실행 순서와는 좀 다른 계산 순서의 개념을 살펴보겠습니다. 이것은 함수 호출 시 매개변수의 계산에 관련된 것으로 명령형 프로그램은 매개변수 부분에 있는 수식의 계산을 모두 끝낸 후 함수를 호출할 수 있습니다. 그것을 applicative order라고 부릅니다. 즉 test(f(g()))라는 코드가 있다면 g()를 먼저 계산하고 다음에 그 값으로..

프로그래밍 언어에서 이터레이터는 미리 정해진 값의 집합에 대해 값을 하나씩 돌려주는 기능(하나씩 끝까지 반복하게 해주는 기능)을 제공하는 객체입니다. 언어마다 이터레이터를 사용하는 방식이 다른데 파이썬은 이터레이터를 언어의 중요한 개념으로 사용하고 있습니다. 순차나열의 구조를 가지는 반복부를 분석해보면 (1) 반복되는 대상 집합과 (2) 반복을 위해 값을 하나씩 꺼내서 주는 부분(다음 값이 무엇인지, 언제 끝낼지 결정해야 함), 그리고 (3) 그것을 이용해서 뭔가를 처리하는 코드 부분으로 구성되어 있습니다. 이 때 값을 하나씩 제공하는 부분과 그 값을 사용하는 부분이 분리되게 코드를 구성한다면 가독성을 올리고 재사용성이 훨씬 높아지는 코드를 작성할 수 있습니다. 이터레이터는 다음 값을 제공하는 기능과 끝..
- Total
- Today
- Yesterday
- 패턴
- indexof
- contains
- TypeError
- format
- follow
- max
- APPEND
- 콜렉션
- 이터레이터
- ToString
- 자바regex
- Iterator
- typedef
- 스트링 +
- zip
- sort key
- python example
- Camel Style
- comparable
- CompareTo
- Lazy evaluation
- 동적바인딩
- 스트링
- rust
- 지연계산
- python exercise
- contentEquals
- 이터러블
- C++ 클래스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |