V Poznámky k jazykovému vzdelávaniu


Obsah :


Úvod: vlang, jazyk budúcnosti

vlang, pre front-end, back-end, big data, blockchain, umelú inteligenciu, preniká do každého aspektu spoločnosti. Poraziť ostatné programovacie jazyky a zjednotiť svet v roku 2050. Dokonca sa stala svetovým jazykom, vďaka ktorému ľudstvo obnovilo legendárnu Babylonskú vežu a pokročilo v technológiách míľovými krokmi. ......

--- Citované z denníka People's Daily 2050Otvoriť v novom okne

Predslov

V语言Otvoriť v novom okne , Vlang, programovací jazyk pre hackerov.

rust a zig sú dobré, ale sú príliš prísne a akademické.

V je skôr jazyk pre rýchly štart, ako je javascript, menej štruktúrovaný, rýchly na začatie a samozrejme rýchly.

Mnohé z informácií na domovskej stránke V sa ešte neujali (napr. automatický prechod z C na V) a mnohíOtvoriť v novom okne ich označili za falošnú propaganduOtvoriť v novom okne, napr:

Správnou stratégiou je najprv propagovať a potom to aj uskutočniť; ľudia sú spoločenstvom predstavivosti.

Väčšina ľudí verí, pretože vidí, a niektorí ľudia vidia, pretože veria.

Rovnako ako viera v komunizmus môže byť v menšine, ale vždy bude existovať veľmi malý počet ľudí, ktorí naozaj veria, a oheň hviezdy môže zapáliť prériový požiar. Bez komunistickej strany by nová Čína neexistovala.

Počítačoví matematici môžu považovať jazyk V za trochu frivolný, ale verím, že hackeri si ho zamilujú.

Myslenie je konanie, odvaha myslieť, odvaha skúšať, a to je možno rozdiel medzi umením a matematikou. Je programovací jazyk umenie alebo matematika? To je večná otázka.

Myslím, že najlepšia vec na jazyku V je zmazanie hraníc medzi návrhom jazyka a vývojom programu.

Sám sa skompiluje a za tri alebo päť sekúnd sa dá prekompilovať a kód je jasný.

Autor V píše v adresárovej štruktúre kódu VOtvoriť v novom okne:

Snažil som sa, aby bol kompilátor a kód vlib čo najjednoduchší a najčitateľnejší.

Jedným z cieľov V je byť otvorený pre vývojárov s rôznymi úrovňami skúseností s vývojom kompilátorov. Kompilátor nemusí byť čierna skrinka plná kúziel, ktorým rozumie len niekoľko ľudí.

Kompilátor V je modulárny a môžu ho používať aj iné aplikácie. Nachádza sa na adrese cmd/v/ a vlib/v/.

Najdôležitejší a najužitočnejší príkaz pri práci s kompilátorom V je v self. Prebuduje kompilátor V.

Štruktúra kompilátora je veľmi jednoduchá a má tri rôzne kroky.

Parsovanie/generovanie AST ( v.parser) => kontrola typu ( v.checker) => generovanie C/JavaScript/strojového kódu ( v.gen)

Niekto by si mohol myslieť:

Bez započítania lexera a parseru má jadro kódu len niekoľko tisíc riadkov. Môžem len povedať, že autor odviedol dobrú marketingovú prácu a oficiálna webová stránka vyzerá dosť podobne.Otvoriť v novom okne

Myslím si však, že práve táto jednoduchosť je na hre V najlepšia.

Nepremýšľajte o jazyku V ako o tradičnom nemotornom programovacom jazyku s kompilátorom, ktorý je obskúrnou, neznámou knihou v nebi.

Predstavte si ho ako webový front-end framework, ako je Vue, kde je vstupná bariéra nízka a do ktorého sa môže zapojiť každý.

Ak máte problém, jednoducho ho zmeňte.

Urobte to sami a budete mať čo jesť.

Krásny nový svet nie je niečo, na čo sa len tak sedí a čaká, je to niečo, čo pracujúci ľudia vytvárajú vlastnými rukami.

v self Zostavte si ho sami

V sa môže ľahko skompilovať pomocou stránky v self. Na mojom notebooku Apple vo verzii 2015 trvá kompilácia raz 5,63 sekundy.

Odporúčam ho nainštalovať ako zdrojový kód.

git clone git@github.com:vlang/v.git
make
sudo ./v symlink

Ak máte nejaké nápady, pokračujte a upravte priamo zdrojový kód kompilátora alebo štandardnej knižnice.

Potom použite stránku v selfa skompilujte si ju sami. Po vypracovaní požiadaviek ich odovzdajte a začleňte do oficiálneho zdrojového kódu.

Dnes som sa práve naučil V a spustil som 3 merge requesty (1Otvoriť v novom okne, 2Otvoriť v novom okne, 3Otvoriť v novom okne ) s návrhom na zlepšenie jazyka: voliteľná explicitná deklarácia podpory rozhraniaOtvoriť v novom okne.

Nehovorím dobre po anglicky, ale s prekladačom na stránke DeepLOtvoriť v novom okne sa dá ľahko konvertovať z čínštiny do angličtiny a podrobne komunikovať so zahraničnými priateľmi.

V Písanie scenárov

v init Po inicializácii projektu potrebujem kompilačný skript.

V možno použiť na napísanie tohto skriptu namiesto bash.

Môj kompilačný skript je nasledujúci.

#!/usr/bin/env -S v run

import v.vmod

fn sh(cmd string){
  println("❯ $cmd")
  print(execute_or_exit(cmd).output)
}

vm := vmod.decode( @VMOD_FILE ) or { panic(err) }

name := vm.name

sh('v -autofree -prod ${name}.v')

suffix := $if windows { '.exe' } $else { '' }
src := name + suffix
bin := join_path_single('bin',src)
mkdir('bin') or {}
mv(src, bin)?

println('  '+bin)

Sledovanie zmien v súboroch a automatické reštartovanie behu

Je mojím zvykom napísať a spustiť skript raz a monitorovanie zmien a jeho automatické reštartovanie je to, čo potrebujem.

v sa dodáva so stránkou v watch run xx.v, ktorá to umožňuje.

Vytvoril som nasledujúci skript na uľahčenie používania stránky ./dev.sh.

#!/usr/bin/env bash

DIR=$(dirname $(realpath "$0"))
cd $DIR
set -ex

NAME=$(cat v.mod|grep name|awk -F\' '{print $2}')
SH="v watch run $NAME.v"

exec $SH \
  -i '.git' \
  -i 'bin' \
  -c -s --before "printf \"\e[90m❯ ${SH}\e[0m\n\""

Šablónu projektu nájdete na stránke rmw-link/rmw-v-templateOtvoriť v novom okne

Aktualizácie:
Z adresy: gcxfd