Createirƙiri yarenku na shirye-shirye (I)

Juyin halittar shirye-shiryen yare

Bayan rubuta labarin farko akan yadda zaka kirkiro maka tsarin aikiWani ya gaya mani idan zan iya yin labarin akan yadda ake kirkirar yare. Da farko ban maida hankali sosai ba, amma yanzu da wasu hanyoyin na kara koyon abubuwa da yawa game da kirkirar yarukan shirye-shirye. Don haka muyi yare ne na shirye-shirye, mai sauƙin sakawa a cikin wasu shirye-shiryen kuma wannan yana aiki tare da injin kama-da-wane wanda shima zamu tsara shi. A yau dole ne muyi mafi mahimmin inji mai inganci.

Kila kuna mamaki: «Injin kama-da-wane? Amma hakan ba shi da wahala sosai kuma hakan yana rage shirin? " Ya bambanta, inji mai sauƙi mai sauƙi yana da sauƙi da sauri. Na zabi Rust azaman yare ga na'ura mai rumfa. Amma menene Rust?

Rust Harshe ne na shirye-shirye wanda ke mayar da hankali kan tsaron aiwatarwa, don haka amfani da shi ba zai yuwu ba ga wani ya iya rufe na'urar ta zamani. Harshe ne da aka tattara cikin ci gaban da aka ƙirƙira shi Mozilla. Servo, madadin Gecko, yana bunkasa a cikin sa. Har yanzu zaka iya canza tsarin baƙaƙe amma lambar da zan yi amfani da ita za a kiyaye ta har sai fitowar kwanciyar hankali ta farko.

Rust shigar a cikin Linux A hanya mai sauki. Koyaya, babu wani kunshin hukuma. Masu amfani da Ubuntu zaka iya kara wadannan biyun PPA: ppa: hansjorg / tsatsa  y ppa: cmrx64 / kaya, masu amfani da Arch iya amfani da AUR (kaya-git shine kunshin da yake girka komai). Sauran na iya amfani da:

curl -s https://static.rust-lang.org/rustup.sh | sudo sh

Yaya na'urar kera mai aiki?

Idan kun san yadda mai tara duniya yake aiki daidai yake, tare da tari ko tari. Idan ba haka ba, zan bayyana muku shi. Bari muyi tunanin lambar mai zuwa:

buga 2 + 3

Kwamfuta ba ta fahimci abin da 2 + 3 ke nufi ba, kuma ba ta san abin da za a bi ba. Kwamfutoci suna aiki tare da batura ko tarin abubuwa waɗanda aka tara bayanai a ciki kuma ake ci gaba da ciro su. Wannan lambar a cikin injinmu na kama-da-wane ya kamata yayi kama da wannan:

Tura 2 Tura 3 Dara Buga

Ainihin zamu sanya 2 akan tari a saman, 3 kuma. ADD zai ja (watau cire shi daga jakar kuma ya sami kimarsa) abubuwa 2 na ƙarshe akan tarin kuma ƙara sakamakon a saman tari. PRINT zai ɗauki abu na ƙarshe akan tarin kuma yayi amfani dashi don nuna mana. Yanzu bari muyi hakan a ciki Rust.

Dole ne mu fara ayyana yare don Bayarwa, Za mu iya amfani da wanda ya kasance kamar wanda yake ciki Java ko CLR na .NET / Mono, amma za mu ƙirƙiri mafi mahimmanci.

https://gist.github.com/a01de8904fd39a442c20

Muna amfani da sanarwa na hexadecimal ga kowane wa'azi. A saman mun sanya # [wadatarwa (DagaPrimitive)], shine kebantaccen tsari na Rust kuma zai taimaka mana daga baya mu iya kwatanta lissafi da baiti kai tsaye.

Yanzu dole ne muyi aiki wanda ke aiwatar da kowane ɗayan umarnin. Don wannan dole ne mu karanta baiti kuma mu gwada shi da umarnin da muke da shi a cikin lissafin. Idan kun sami wanda ya wanzu, dole ne ku aiwatar da aikinku.

https://gist.github.com/8950ce212a2de2f397f9

Muna yin hakan don karanta kowane baiti daban-daban kuma don aiwatar da su:

https://gist.github.com/12e24a1f0dd65e4cd65d

Kamar yadda kake gani, muna rarrabewa idan an bamu PUSH command (umarninmu na INTEGER) kafin haka, za a ɗauki baiti na gaba gaba ɗaya zuwa tari. A can muna amfani da ayyuka biyu waɗanda ban koya muku ba, kai.pop () y turawa (), wanda a bayyane yake ke kula da rikodin tari.

https://gist.github.com/54147f853a8a2b8c01d9

Ba su da rikitarwa sosai, amma aikin pop yana da hanyoyin gano kuskure. A gaskiya, a Rust, idan muka cire wadancan hanyoyin to zai bamu kuskuren hadawa. Yanzu kawai dole ne muyi kira a cikin shirin Perin (na'urar mu ta kamala) kuma aiwatar da bytecode.

https://gist.github.com/99b1ab461318b3a644d0

Ana iya karanta wannan lambar bytecode daga fayil, amma a nan don sauƙi Na ajiye shi a cikin canji. Idan muka aiwatar dashi, zai bamu sakamakon da muke tsammani:

Perin v0.1 Perin VM yana aiwatar da FlopFlip bytecode Fara PerinVM misali PerinVM v0.1.0 erimar mai amfani 5

Duk lambar tana nan a GitHub karkashin Lasisin Apache 2.0: https://github.com/AdrianArroyoCalle/perin. Don tattarawa dole ne su sami ofishin shigar da sanya:

cajin gini && ./target/main

A babi na gaba za mu ga ƙarin game da yaren shirye-shiryenmu.


Bar tsokaci

Your email address ba za a buga. Bukata filayen suna alama da *

*

*

  1. Wanda ke da alhakin bayanan: Miguel Ángel Gatón
  2. Manufar bayanan: Sarrafa SPAM, sarrafa sharhi.
  3. Halacci: Yarda da yarda
  4. Sadarwar bayanan: Ba za a sanar da wasu bayanan ga wasu kamfanoni ba sai ta hanyar wajibcin doka.
  5. Ajiye bayanai: Bayanin yanar gizo wanda Occentus Networks (EU) suka dauki nauyi
  6. Hakkoki: A kowane lokaci zaka iyakance, dawo da share bayanan ka.

  1.   mai bin hanya m

    Sha'awa mai ban sha'awa, kodayake ba shi da amfani sosai a zahiri, ba ya cutar da sani.

    Yana da kyau ku tallata Tsatsa, yare ne wanda yayi alkawurra da yawa, ba wai kawai ya fi amintacce ba ne fiye da c ++, amma (a yanzu) a bayyane yake a cikin rubutun.

    Game da hoto, ba zan yi la’akari da juyin halittar java XD ba.

    1.    mai bin hanya m

      Kuma daga fortran, ban taɓa amfani dashi ba, amma ban taɓa jin kyawawan abubuwa game da shi ba ...

      1.    Mai hankali m

        Na yi, kuma yana da amfani musamman a cikin injiniya duk da cewa Python na samun ƙasa.

      2.    juan m

        Fortran shine wataƙila sauran manyan harshe tare da C. Har yanzu a yau cikin tambayoyi masu mahimmanci zasu zama ɗaya ko ɗaya.

        Kuma zai zama abin muhawara cewa Fortran a matsayin 'juyin halitta' na C, lokacin da watakila ya kamata ya zama akasin haka, tunda C sabo ne, mafi zamani kuma tare da ƙarin dama; kodayake ɗayan bai rabu da ɗayan ba ko kaɗan.

        Kodayake matsayi na ƙarshe duka ana iya muhawara daga wani ra'ayi.

    2.    Francisco m

      +1 zuwa Java

  2.   dan dako m

    Bari mu gani idan ina son wannan, zan ba da abu don shirye-shirye amma na asali don ganin idan na ƙara fahimta.

  3.   mai amfani m

    Menene ainihin manufar ƙirƙirar sabon yaren shirye-shirye? A ganina a kaina ni wata dabara ce ta ɓoye lambar tushe.

  4.   Yawa m

    Aboki, menene ya faru da ci gaban "tsarin aikinka"? Kada a barshi a wurin don Allah a ci gaba

    A zahiri, kai maigida ne kuma kawai waɗannan waƙoƙin guda biyu sun mamaye hankalina, amma ba zan so su tsaya ba.

    Na san cewa da yawa daga cikin mu sunyi irin wannan kuma muna jiran ci gaba da kuma ƙarshen waɗannan batutuwa masu ban sha'awa.

  5.   Cristian Dauda m

    Abin sha'awa sosai, na gode sosai. 🙂

  6.   Franco m

    Ban dauki java a matsayin harshen shirye-shirye ba, a maimakon haka tawilin mai ba da umarni ne, tunda ba a hada shi ba

    1.    Mario m

      [Yaren shirye-shirye yare ne na yau da kullun da aka tsara don bayyana hanyoyin da injuna kamar su kwamfuta ke aiwatarwa.]

      Saboda wannan, Java yare ne na shirye-shirye. Koda Harshen Bash (linux shell language) yare ne na shirye-shirye a cikin kansa.

      Akwai harsuna iri biyu:
      - Hadewa
      - Fassara
      - Cakuda (Inji na kirki, an tattara dakunan karatu na asali kuma ana fassara lambar aiki)

      Masu fassarar suna da fa'ida sosai yayin da ya shafi yawaitar abubuwa kuma ba su da wata masifa ta wannan. Java, VB.NET, C ++ .NET, F #, C # duk yare ne masu gauraye. Yaren bash, jemage, PHP, Javascript da ƙari da yawa ana fassara su da yarukan.

      Idan baku ɗauki Java a matsayin yare ba saboda ana fassara ta (wanda ba haka bane), bai kamata kuyi la'akari da wasu yarukan da yawa da ake amfani dasu don yin shirye-shirye ba. Bugu da ƙari, ta wannan ƙa'idar ta uku bai kamata ku yi la'akari da cewa akwai wani yare ba na shirye-shirye ban da yaren na'ura kanta.

      Kuma me yasa ba? Ba ma ana amfani da harshen mashina a matsayin harshe tunda da gaske kawai saiti ne na umarni wanda mai aikin ke fassararsa.

      Saboda yadda yakamata, DUK Harsuna ba komai bane face saitin umarnin da mai sarrafawa ke fassara su.

      Kuna iya son yare fiye ko lessasa (Java, a wannan yanayin), yana da kyau ko lessasa da amfani da ƙarfi amma a ce shi ba yare ba ne don ba a haɗa shi ba… ya saba wa duk ma'anar harshen shirye-shiryen.

    2.    Mario m

      Ina fata ban ga alamar rashin ladabi ba

      1.    Maria Antoinette na Manuela Cardenas m

        babu nutsuwa kawai kuka lalata rayuwarmu

      2.    Mario m

        hahahahaha, perdoooon. ba nufina ba xD

    3.    Carlos m

      java yare ne na shirye-shirye. Saboda zaku iya haɓaka aikace-aikace kuma idan kuka tara ku sai kuyi .jar wacce JVM ke fassara. To bisa ga dabarunku na python shima ba za'a fassarashi ba, amma yana haɗawa zuwa ga masu aiwatarwa daban-daban ...

  7.   Iliya Mongelos m

    Kyakkyawan bayani

  8.   Carlos Arturo m

    kyakkyawan bayani amma ina da shakku, zai yiwu a ƙirƙiri sabon yaren shirye-shirye tun daga farko ba tare da dogaro da wasu kwatancen ba ko software. Ina magana ne daidai da yadda ake yin wasu yarukan kamar java ko HTML.
    Ina matukar jin dadin taimakonku kan wannan tambayar.