[Purescript] ์‹œ์ž‘

[์›๋ณธ ๋งํฌ]

Purescript๋Š” ์ •์  ํƒ€์ž…, ํ•จ์ˆ˜ํ˜•์„ ์ง€ํ–ฅํ•˜๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋Œ€์•ˆ ์–ธ์–ด ์ค‘ ํ•˜๋‚˜๋‹ค.
2013๋…„์— ๋‚˜์™”๋‹ค.

ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ๋‚˜ ๋‹คํŠธ, ์—˜๋ฆ„ ๋“ฑ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ฌธ๋ฒ• ์ฒดํฌ๋งŒ ํ•˜๊ณ  ์ตœ์ข… ๊ฒฐ๊ณผ๋ฌผ์€ ํ•ญ์ƒ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์†Œ์Šค๋‹ค.

ํ•˜์Šค์ผˆ๊ณผ ์œ ์‚ฌํ•œ ํ˜•ํƒœ๋ฅผ ์ง€๋‹Œ๋‹ค๊ณ  ํ•œ๋‹ค.

๋จผ์ € ์จ๋ณด์ž.
npm์„ ํ†ตํ•ด ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ž˜ ๊น”๋ ธ๋‹ค๋ฉด ์ด๋ ‡๊ฒŒ ์‹คํ–‰์ด ๋  ๊ฒƒ์ด๋‹ค.

์ด๊ฑธ๋กœ๋งŒ ์ปดํŒŒ์ผํ•ด์„œ ์†Œ์Šค๋ฅผ ์ง์ ‘ ์‹คํ–‰ํ•ด๋„ ๋˜๊ฒ ์ง€๋งŒ,
๋ถˆํŽธํ•ด์„œ ๋ณดํ†ต ๊ทธ๋ ‡๊ฒŒ๋Š” ์•ˆํ•œ๋‹ค.

๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” spago๋ผ๋Š” ๋งค๋‹ˆ์ €๋ฅผ ์„ค์น˜ํ•ด์„œ ์‚ฌ์šฉํ•  ๊ฒƒ์ด๋‹ค.

ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์šฐ์„  ๋งŒ๋“ค๊ณ 

spago init์œผ๋กœ ์ดˆ๊ธฐ์„ค์ •์„ ํ•ด์ค€๋‹ค.

๊ทธ๋Ÿผ ์•„๋ž˜์™€ ๊ฐ™์ด ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ๊ตฌ์„ฑ๋  ๊ฒƒ์ด๋‹ค.

๊ธฐ๋ณธ์ƒ์„ฑ๋œ Main์„ ๋ณด๋ฉด ์ด๋ ‡๊ฒŒ ๋˜์–ด์žˆ๋‹ค.

ํ•˜์Šค์ผˆ์„ ๊ทธ๋Œ€๋กœ ๋นผ๋‹ค๋ฐ•์€ ๋“ฏํ•œ ๋ชจ์Šต์ด๋‹ค.
module์€ ํ˜„์žฌ ๋ชจ๋“ˆ,
import๋Š” ๋ชจ๋“ˆ ๊ฐ€์ ธ์˜ค๊ธฐ,

main์€ ์ง„์ž…์  ํ•จ์ˆ˜๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๋ฐ˜ํ™˜ํƒ€์ž…์€ Effect Unit์ด๊ณ ...
log๋กœ ๋กœ๊ทธ๋ฅผ ์ฐ๋Š”๊ฒŒ ๋‹ค๋‹ค,

์ €๋Œ€๋กœ spago run์„ ์น˜๋ฉด

๊ธฐ๋Œ€ํ•œ๋Œ€๋กœ ๋ฐ”๋กœ ์‹คํ–‰์ด ๋  ๊ฒƒ์ด๋‹ค.

๊ทธ๋ฆฌ๊ณ  build๋ฅผ ํ•˜๋ฉด

output ๋””๋ ‰ํ„ฐ๋ฆฌ๋กœ ๋นŒ๋“œ๋œ js ํŒŒ์ผ์ด ์ถœ๋ ฅ๋œ๋‹ค.

์ž˜ ๋‚ด๋ ค๋ณด๋ฉด main๋„ ์žˆ๋‹ค.

๊ทธ๋ ‡๋‹ค.
์ €๊ฑธ ์ž˜ ๊ฐ–๋‹ค์“ฐ๋ฉด ๋˜๋Š” ๊ฒƒ์ด๋‹ค.


์ฐธ์กฐ
https://github.com/purescript/documentation/blob/master/guides/Getting-Started.md