Typed Korean

Learn Korean grammar as TypeScript types.

GitHub
🌱 Elementary · 1

Noun sentences: the copula 이다

Korean noun sentences follow the pattern **A는 B이에요/예요** (polite informal, 해요체) or **A는 B입니다** (formal polite, 합니다체). The copula **이다** attaches directly to the preceding noun — there is no space before it. Its exact shape depends on whether that noun ends in a consonant (받침): a consonant-final noun takes **이에요**, while a vowel-final noun contracts to **예요**. The **topic particle** 은/는 introduces the subject of the sentence. It too has two forms: **은** after a consonant-final noun and **는** after a vowel-final noun. Learning to spot 받침 is therefore the single most important skill for Korean particle and copula selection.

The topic particle 은/는

Before you can build a noun sentence, you need the **topic particle** 은/는. It marks what the sentence is *about*.

The rule is purely phonological: if the noun ends in a **consonant (받침)**, attach **은**; if it ends in a **vowel**, attach **는**. For example, **이것** ends in ㅅ → **이것은**; **저** ends in ㅓ (a vowel) → **저는**.

In the Sentence<[...]> style the particle is a ParticlePart<"은"> or ParticlePart<"는"> placed immediately after the noun part — no space is inserted between them because particles are *attaching* parts.

I am a student.
Words
This is a book.
Words
He is a friend.
Words

해요체 copula after a consonant-final noun: 이에요

When the noun before 이다 ends in a **consonant (받침)**, the polite informal (해요체) form is **이에요**. The linking vowel 이 is required to bridge the consonant coda and the ending.

In the DSL, use CopulaPart<"학생", "Haeyo"> — the third argument defaults to true (has 받침), so you can omit it. The Sentence builder concatenates it directly to the previous eojeol *without* a space, producing **학생이에요**.

Common consonant-final nouns: 학생 ㅇ, 선생님 ㅁ, 책 ㄱ, 집 ㅂ, 친구 — wait, 친구 ends in 구 (vowel). Always check the final jamo!

I am a student.
Words
I am a teacher.
Words
This is a book.
Words

해요체 copula after a vowel-final noun: 예요

When the noun ends in a **vowel** (no 받침), the copula contracts: 이에요 → **예요**. The 이 elides into the preceding vowel. This is a regular phonological contraction and applies to all vowel-final nouns without exception.

In the DSL, pass false as the third argument to CopulaPart: CopulaPart<"의자", "Haeyo", false> → **의자예요**.

Common vowel-final nouns: 의자 (chair), 가수 (singer), 학교 (school), 커피 (coffee), 영화 (movie), 나무 (tree).

This is a chair.
Words
He is a singer.
Words
This is coffee.
Words

합니다체: the formal copula 입니다

Korean has two levels of polite speech. The **해요체** (informal polite) forms 이에요/예요 are used in everyday conversation. The **합니다체** (formal polite) form **입니다** is used in presentations, news broadcasts, official announcements, and formal writing.

Crucially, 입니다 does **not** change with 받침 — it always attaches as-is regardless of whether the noun ends in a consonant or a vowel. In the DSL: CopulaPart<"학생", "Hamnida"> → **학생입니다**; CopulaPart<"가수", "Hamnida", false> → **가수입니다**.

Compare the two registers side by side: 학생**이에요** (casual polite) vs 학생**입니다** (formal polite). The meaning is identical; only the register differs.

I am a student. (formal)
Words
He is a singer. (formal)
Words
This is a chair. (formal)
Words