{"id":226942,"date":"2022-02-09T14:14:18","date_gmt":"2022-02-09T13:14:18","guid":{"rendered":"https:\/\/blog.jetbrains.com\/kotlin\/2021\/10\/the-road-to-the-k2-compiler\/"},"modified":"2022-02-09T14:17:24","modified_gmt":"2022-02-09T13:17:24","slug":"the-road-to-the-k2-compiler","status":"publish","type":"kotlin","link":"https:\/\/blog.jetbrains.com\/ko\/kotlin\/2022\/02\/the-road-to-the-k2-compiler\/","title":{"rendered":"K2 \ucef4\ud30c\uc77c\ub7ec\ub85c \uac00\ub294 \uae38"},"content":{"rendered":"<p>\uc0c8\ub85c\uc6b4 K2 Kotlin \ucef4\ud30c\uc77c\ub7ec\ub97c \uac1c\ubc1c\ud574\uc628 \uc9c0\ub3c4 \uaf64 \uc624\ub798\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc0c8\ub85c\uc6b4 \ucef4\ud30c\uc77c\ub7ec\ub294 \uc0c8\ub85c\uc6b4 \uc5b8\uc5b4 \uae30\ub2a5\uc744 \ub354 \ube60\ub974\uac8c \uac1c\ubc1c\ud558\uace0 Kotlin\uc774 \uc9c0\uc6d0\ud558\ub294 \ubaa8\ub4e0 \ud50c\ub7ab\ud3fc\uc744 \ud1b5\ud569\ud558\uba70 \uc131\ub2a5\uc744 \uac1c\uc120\ud558\uace0 \ucef4\ud30c\uc77c\ub7ec \ud655\uc7a5\uc744 \uc704\ud55c API\ub97c \uc81c\uacf5\ud558\ub294 \ub370 \ubaa9\ud45c\ub97c \ub450\uace0 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>Kotlin \ucef4\ud30c\uc77c\ub7ec\uc758 \uac1c\ubc1c\uc740 \uc218\ub144 \uc804\uc5d0 \uc2dc\uc791\ub418\uc5c8\uc73c\uba70 \uadf8 \ud6c4\ub85c \ub9ce\uc740 \uac83\uc774 \ub2ec\ub77c\uc84c\uc2b5\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4, Kotlin 1.0\uc5d0\ub294 Kotlin\/Native \ubc31\uc5d4\ub4dc\uc640 \ucf54\ub8e8\ud2f4\uc774 \uc5c6\uc5c8\uae30 \ub54c\ubb38\uc5d0 Kotlin \ucef4\ud30c\uc77c\ub7ec \ucf54\ub4dc\uc5d0\uc11c\ub294 \uc774\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc5c8\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc800\ud76c\ub294 \uc0c8\ub85c\uc6b4 \uad6c\uc131 \uc694\uc18c\ub97c \ub2e8\uacc4\uc801\uc73c\ub85c \ub3c4\uc785\ud558\uc5ec \uc5ec\ub7ec\ubd84\uc5d0\uac8c \ucd5c\ub300\ud55c \ube68\ub9ac \uc81c\uacf5\ud558\ub824 \ud569\ub2c8\ub2e4. \ub9ce\uc740 \ubd80\ubd84\uc774 \uc774\ubbf8 \ucd5c\uc2e0 Kotlin \ubc84\uc804\uc5d0\uc11c \uc0ac\uc6a9\ub418\uace0 \uc788\uc73c\uba70 \ub2e4\ub978 \ubd80\ubd84\ub3c4 \uacc4\uc18d \ucd94\uac00\ub420 \uc608\uc815\uc785\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-table\">\n<table>\n<tbody>\n<tr>\n<td>\uc0c8\ub85c\uc6b4 \ud0c0\uc785 \ucd94\ub860 \uc54c\uace0\ub9ac\uc998<\/td>\n<td>1.4.0\uc5d0\uc11c \uc548\uc815\ud654<\/td>\n<\/tr>\n<tr>\n<td>\uc0c8\ub85c\uc6b4 JVM IR \ubc31\uc5d4\ub4dc<\/td>\n<td>1.5.0\uc5d0\uc11c \uc548\uc815\ud654<\/td>\n<\/tr>\n<tr>\n<td>\uc0c8\ub85c\uc6b4 JS IR \ubc31\uc5d4\ub4dc<\/td>\n<td>1.6.*\uc5d0\uc11c \uc548\uc815\ud654<\/td>\n<\/tr>\n<tr>\n<td>\uc0c8\ub85c\uc6b4 \ud504\ub7f0\ud2b8\uc5d4\ub4dc<\/td>\n<td>\ud604\uc7ac \uac1c\ubc1c \uc911<br \/>1.6.20 \ub610\ub294 1.7\uc5d0\uc11c \ud14c\uc2a4\ud2b8 \ubc84\uc804\uc73c\ub85c \uc81c\uacf5<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\n<p>Kotlin \ucef4\ud30c\uc77c\ub7ec\ub97c \uc0c8\ub86d\uac8c \uc791\uc131\ud558\uae30 \uc704\ud55c \uc5ec\uc815\uc744 \ub2f4\uc740 \ub2e4\uc74c \ube44\ub514\uc624\uc5d0\uc11c\ub294&#8230;<\/p>\n<ul>\n<li>\ucef4\ud30c\uc77c\ub7ec \uc774\ub860\uc758 \uae30\ucd08\ub97c \ud3ec\ud568\ud558\uc5ec \ucef4\ud30c\uc77c\ub7ec\uc758 \ub2e4\uc591\ud55c \ubd80\ubd84\uc5d0 \ub300\ud55c \uc138\ubd80 \uc815\ubcf4\ub97c \uc81c\uacf5\ud569\ub2c8\ub2e4.<\/li>\n<li>\ucef4\ud30c\uc77c\ub7ec \ud504\ub7f0\ud2b8\uc5d4\ub4dc\uc640 \ubc31\uc5d4\ub4dc\uc758 \ucc28\uc774\uc810\uc744 \uc124\uba85\ud569\ub2c8\ub2e4.<\/li>\n<li>\uc774\uc804 \ubc31\uc5d4\ub4dc\uc640 IR \ubc31\uc5d4\ub4dc\uc758 \ucc28\uc774\uc810\uc744 \uc124\uba85\ud569\ub2c8\ub2e4.<\/li>\n<li>\uc0c8 \ud504\ub7f0\ud2b8\uc5d4\ub4dc\uc5d0\uc11c \ubcc0\uacbd\ub418\ub294 \uc0ac\ud56d\uc744 \uc9d1\uc911 \uc870\uba85\ud569\ub2c8\ub2e4.<\/li>\n<li>\uc0c8\ub85c\uc6b4 \ucef4\ud30c\uc77c\ub7ec \uc774\ub984\uc744 K2\ub85c \uc120\ud0dd\ud55c \uc774\uc720\ub97c \uc124\uba85\ud569\ub2c8\ub2e4.<\/li>\n<\/ul>\n<p><strong>\ud574\ub2f9 \uc601\uc0c1\uc5d0\uc11c\ub294 \ud55c\uad6d\uc5b4 \uc790\ub9c9\uc744 \uc9c0\uc6d0\ud569\ub2c8\ub2e4. \ud55c\uad6d\uc5b4 \uc790\ub9c9\uc744 \ud65c\uc131\ud654\ud558\uc5ec \uc2dc\uccad\ud558\uc138\uc694.<\/strong><\/p>\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\">\n<div class=\"wp-block-embed__wrapper\"><iframe loading=\"lazy\" title=\"\uc0c8\ub85c\uc6b4 Kotlin \ucef4\ud30c\uc77c\ub7ec\ub85c \uac00\ub294 \uae38\" src=\"https:\/\/www.youtube.com\/embed\/iTdJJq_LyoY?feature=oembed\" width=\"500\" height=\"281\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/div>\n<\/figure>\n<p>\uc0c8 \ud504\ub7f0\ud2b8\uc5d4\ub4dc\uc5d0 \ub300\ud55c \uc790\uc138\ud55c \uae30\uc220 \uc815\ubcf4\ub97c \uc54c\uace0 \uc2f6\ub2e4\uba74 \uc0c8 \ud504\ub7f0\ud2b8\uc5d4\ub4dc\uc758 \ub9ac\ub4dc \uac1c\ubc1c\uc790\uc778 Simon Ogorodnik \ubc0f Mikhail Glukhikh\uac00 \uc9c4\ud589\ud558\ub294 <a href=\"https:\/\/pages.jetbrains.com\/kotlin-premier-event-2021\" target=\"_blank\" rel=\"noopener\">Kotlin 2021 Premier Online Event<\/a>\uc758 \ub77c\uc774\ube0c \ud1a0\ud06c &#8216;K2 Compiler: top-down view'(K2 \ucef4\ud30c\uc77c\ub7ec: \uc644\uc804 \ubd84\uc11d)\ub97c \uc2dc\uccad\ud558\uc138\uc694. FIR(\ud504\ub7f0\ud2b8\uc5d4\ub4dc \uc911\uac04 \ud45c\ud604)\uc744 \uc0ac\uc6a9\ud558\uc5ec Kotlin \ucef4\ud30c\uc77c\ub7ec\ub97c \ub2e4\uc2dc \uc791\uc131\ud558\ub294 \ud504\ub85c\uc138\uc2a4\ub97c \uc9d1\uc911 \uc870\uba85\ud558\uace0 \uc2dc\uccad\uc790\uc758 \uc9c8\ubb38\uc5d0 \ub2f5\ud569\ub2c8\ub2e4.<\/p>\n<p align=\"center\"><a class=\"ek-link jb-download-button\" title=\"K2 \ucef4\ud30c\uc77c\ub7ec \ub77c\uc774\ube0c \ud1a0\ud06c \ub4f1\ub85d\ud558\uae30\" href=\"https:\/\/pages.jetbrains.com\/kotlin-premier-event-2021\" target=\"_blank\" rel=\"noopener\">K2 \ucef4\ud30c\uc77c\ub7ec \ub77c\uc774\ube0c \ud1a0\ud06c \ub4f1\ub85d\ud558\uae30<\/a><\/p>\n<p><strong>\uad00\ub828 \ub9c1\ud06c:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/kotlinlang.org\/docs\/whatsnew14.html#new-more-powerful-type-inference-algorithm\" target=\"_blank\" rel=\"noopener\">Kotlin 1.4.0\uc758 \uac15\ub825\ud574\uc9c4 \uc0c8\ub85c\uc6b4 \ud0c0\uc785 \ucd94\ub860 \uc54c\uace0\ub9ac\uc998<\/a><\/li>\n<li><a href=\"https:\/\/kotlinlang.org\/docs\/whatsnew15.html#stable-jvm-ir-backend\" target=\"_blank\" rel=\"noopener\">Kotlin 1.5.0\uc5d0\uc11c \uc548\uc815\ud654\ub41c JVM IR \ubc31\uc5d4\ub4dc<\/a><\/li>\n<li><a href=\"https:\/\/kotlinlang.org\/docs\/js-ir-compiler.html\" target=\"_blank\" rel=\"noopener\">Kotlin\/JS IR \ucef4\ud30c\uc77c\ub7ec<\/a><\/li>\n<\/ul>\n<p><em>\uac8c\uc2dc\ubb3c \uc6d0\ubb38 \uc791\uc131\uc790<\/em><\/p>\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/secure.gravatar.com\/avatar\/?s=200&#038;r=g\" width=\"200\" height=\"200\" alt=\"\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":964,"featured_media":189307,"comment_status":"open","ping_status":"closed","template":"","categories":[89],"tags":[],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/kotlin\/226942"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/kotlin"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/types\/kotlin"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/users\/964"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/comments?post=226942"}],"version-history":[{"count":4,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/kotlin\/226942\/revisions"}],"predecessor-version":[{"id":226947,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/kotlin\/226942\/revisions\/226947"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media\/189307"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media?parent=226942"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/categories?post=226942"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/tags?post=226942"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/cross-post-tag?post=226942"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}