Koj puas tau xav dhia mus rau txoj haujlwm nrog Haskell tab sis tsis paub pib qhov twg? Zoo, koj tsis tas yuav saib ntxiv lawm! Cov wikiHow no yuav qhia pom yuav ua li cas kom tau txais Haskell code ua haujlwm ntawm koj Windows 10 system. Haskell yog hom ntawv zoo li, siv lub ntsiab lus ua haujlwm dawb huv. Yog xav paub ntxiv thiab peev txheej ntawm Haskell, saib Haskell cov ntaub ntawv nplooj ntawv, Haskell wiki, thiab Haskell wikibook.
Cov kauj ruam
Ntu 1 ntawm 2: Txhim Kho Chocolatey thiab Haskell Toolchain
Cov kauj ruam no yuav qhia pom yuav ua li cas thiaj tau Chcolatey khiav ntawm Windows thiab yuav siv Chocolatey li cas los rub lub Haskell toolchain. Chocolatey yog lub tshuab-qib pob tus thawj tswj hwm tsim tshwj xeeb rau Microsoft Windows. Tseem ceeb dua, Chocolatey yog Haskell.org txoj kev pom zoo rau kev txhim kho cov khoom siv uas xav tau ntawm lub Windows platform. Koj yuav siv Chocolatey's qhib-qhov version. Yog xav paub ntxiv saib Vim Li Cas Chocolatey?, Txhim Kho Chocolatey, thiab Chocolatey Courses.
Kauj Ruam 1. Paub txog koj li kev tsim qauv
Qhib lub hauv paus txheej txheem cov ntaub ntawv saib. Nws nyob hauv cov tswj vaj huam sib luag ntawm
Tswj Vaj Huam Sib Luag> System thiab Security> System
. Ntawm kab ntawv xov xwm kab ke, koj yuav pom cov ntaub ntawv tseem ceeb txog koj lub Windows system. Hauv qab Txheej txheem ntu, koj yuav pom System yam. Tsuas yog rau sab xis ntawm daim ntawv lo nws yuav qhia koj cov qauv tsim. (piv txwv li 32-ntsis lossis 64-ntsis)
Kauj Ruam 2. Nruab Powershell
Koj yuav siv Powershell hauv qib tom ntej los teeb tsa Chocolately. Nyem rau qhov no mus rau Powershell 7 qhov kev tso tawm tshiab tshaj plaws ntawm Github. Muaj ntau ntau qhov sib txawv ntawm nplooj ntawv no, tab sis koj yuav tsum tsuas yog tsom mus rau cov ntawv sib xws nrog Windows. Lawv yuav saib yuav luag zoo ib yam rau
PowerShell-7.x.y-win-ARCH.msi
qhov twg
x.y ua
yog kev rhuav tshem-uas koj tuaj yeem tsis quav ntsej vim tias lawv zoo ib yam-thiab
ARCH
yog x64 lossis x86 (64-ntsis thiab 32-ntsis, feem). Koj yuav xav rub tawm ib qho uas phim koj lub system architecture. Piv txwv, yog tias qhov hloov tshiab kawg yog 7.0.2 thiab koj lub tshuab ua haujlwm 32-ntsis architecture (x86), koj yuav tsum rub tawm
PowerShell-7.0.2-yeej-x86.msi
. Ib yam nkaus, rau 64-ntsis architecture, cov ntaub ntawv yuav muaj x64 hloov chaw ntawm x86.
Kauj Ruam 3. Khiav lub installer tom qab nws ua tiav rub tawm
Koj yuav tsum tsis tas yuav thab nrog kev teeb tsa; Txawm li cas los xij, nco ntsoov txheeb xyuas qhov "Qhib Ntawm No" cov ntawv qhia zaub mov ntxiv kev xaiv. Qhov no yuav ua kom yooj yim dua thiab sai dua qhib Powershell rau cov npe tshwj xeeb.
Kauj Ruam 4. Rub lub Windows Terminal los ntawm Microsoft Store
Qhov no yog qhov tseem ceeb qhwv rau Powershell uas hloov kho qhov zoo thiab hnov ntawm Powershell thaum txhim kho kev ua haujlwm tau zoo thiab ntxiv qee qhov ua haujlwm suav nrog kev koom ua ke ntawm lwm lub plhaub. Nyem rau qhov no mus rau Windows Terminal rub tawm nplooj ntawv.
Kauj Ruam 5. Nruab Chocolatey
Txhawm rau pib, Khiav Windows Terminal ua Tus Thawj Coj. Yog tias koj tsis ua tus Thawj Coj, Chocolatey yuav tsis teeb tsa vim tias koj xav tau txoj cai tshwj xeeb. Ib txwm, nws ua raws txhua lub sijhawm koj xav khiav Chocolatey, koj yuav tsum muaj cov cai tshwj xeeb (piv txwv li koj yuav tsum muaj koj qhov kev khiav tam sim ua Tus Thawj Coj).
Kauj Ruam 6. Nkag mus rau cov lus txib hauv qab no hauv cov ntawv ua ntu zus
Txog kev siv, kuv tau qhia ua piv txwv hauv daim duab saum toj no.
Teeb-ExecutionPolicy RemoteSigned
Teeb -ExecutionPolicy Bypass -Scope Process -Force; iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex ib
Kauj Ruam 7. Rov Pib Windows Terminal lossis khiav cov lus txib
rov ua dua tshiab
hloov tshiab
$ Env: Txoj Kev
nrog cov tshiab teeb tsa
choco cov
.
Koj tuaj yeem tshawb xyuas qhov no los ntawm kev khiav
choco -kev hloov pauv
. Yog tias koj tsis tau txais qhov yuam kev, tom qab ntawd txhua yam zoo li qub. Yog xav paub ntau ntxiv txog kev txhim kho Chocolatey thov mus ntsib Txhim Kho Chocolatey
Kauj Ruam 8. Nruab Haskell cov cuab yeej
Raws li tau sau tseg hauv Haskell lub vev xaib, koj yuav tsum teeb tsa
haskell-dev
pob ntawm Chocolatey. Ua ntej khiav
choco cov
xyuas kom koj tau rov pib dua Windows Termal lossis khiav cov lus txib
rov ua dua tshiab
yog li ntawd
choco cov
yuav nyob hauv
$ Env: Txoj Kev
. Siv qhov ua kom nrawm, khiav cov lus txib hauv qab no
choco nruab haskell -dev -y
Kauj ruam 9. Khiav cov lus txib refreshenv
Ib zaug
haskell-dev
tiav kev teeb tsa, khiav
rov ua dua tshiab
thiab kuaj seb lawv puas nyob hauv koj txoj kev. Koj tuaj yeem ua qhov no los ntawm kev khiav
ghc -rov
mus xyuas tus compiler.
Ntu 2 ntawm 2: Tsim Koj Thawj Txoj Haujlwm Haskell
Kauj Ruam 1. Qhib daim ntawv tshiab uas tsis muaj dab tsi
Koj tuaj yeem siv cov ntawv nyeem uas koj xav tau (piv txwv li vscode, atom, sublime, thiab lwm yam). Qhib koj cov ntawv nyeem xaiv nrog cov ntawv tsis muaj dab tsi. Koj yuav khaws daim ntawv no ua
nyob zoo.hs
. Cov
.hs ua
kev txuas ntxiv yog siv los txheeb xyuas cov ntaub ntawv uas muaj Haskell qhov chaws.
Kauj Ruam 2. Tsim thawj qhov sib txawv hauv Haskell
Koj yuav tsum tau txhais qhov sib txawv hu ua main. Tus sau ua ke haskell tab tom nrhiav rau qhov no thaum koj suav koj qhov chaws.
lub ntsiab:: IO ()
-
Cov
::
- tus neeg teb xov tooj tuaj yeem nyeem tau raws li "muaj hom".
-
Yog li koj tuaj yeem nyeem kab ntawv saum toj no ntawm txoj cai li
lub ntsiab
"muaj hom"
IO ()
-
Cov
IO ()
yam yog yam uas hu ua a
Monad
. Kuv yuav tsis tau ntxaws tab sis koj tuaj yeem nyeem ntxiv hauv Haskell wiki txog monads.
Kauj Ruam 3. Muab tus nqi
Cov
IO ()
Monad yog siv rau Kev Tawm Tswv Yim/Tawm Tawm. Yog li tam sim no koj muaj koj qhov sib txawv
lub ntsiab
koj tsuas yog yuav tsum tau muab nws qee tus nqi.
main:: IO () main = putStrLn "Nyob zoo, ntiaj teb!"
-
putStrLn
yog lub luag haujlwm uas nws yog
Txoj hlua -> IO ()
- .
-
Qhov ntawd yuav zoo li tsis meej pem thaum xub thawj, tab sis nws yooj yim dua. Xav txog
->
raws li daim duab qhia chaw ntawm ib hom mus rau lwm qhov. Ntawd yog, cov
putStrLn
- ua haujlwm qhia cov hlua rau Monad.
-
Qhov tseem ceeb, txoj haujlwm
putStrLn
siv tus nqi ntawm hom
Txoj hlua
thiab rov qab tus nqi ntawm hom
IO ()
- .
-
Qhov no yog vim li cas cov ntawv txheeb xyuas thaum koj ua haujlwm
lub ntsiab
rau tus nqi ntawm
putStrLn "Nyob zoo, ntiaj teb!"
Kauj Ruam 4. Sau qhov program
Nrog koj zoo siab, koj tsuas yog sau koj thawj qhov kev pab cuam haskell. Txhua yam koj yuav tsum ua tam sim no yog sau nws. Qhib Windows Terminal thiab mus rau lub nplaub tshev uas koj tau khaws koj li
nyob zoo.hs
ntaub ntawv. Koj tuaj yeem siv cov ntawv qhia zaub mov xaiv "Qhib Ntawm No" yog tias koj xaiv qhov kev xaiv ntawd thaum teeb tsa Powershell 7. Thaum muaj, koj tuaj yeem pib txheej txheem sau ua ke siv cov lus txib hauv qab no:
ghc nyob zoo.hs -o nyob zoo
-
Kev suav sau siv qhov chaws
nyob zoo.hs
- raws li cov tswv yim
-
siv cov
-o
chij koj tuaj yeem hla lub npe ntawm yam koj xav kom cov ua haujlwm tau ua. Hauv qhov no nws yog
nyob zoo
-
Txhawm rau khiav qhov program tom qab khiav
. / nyob zoo.exe
-
ceeb toom: Nws yog ib qho tseem ceeb kom muaj
.\
nyob rau hauv
nyob zoo.exe
-
-