స్టాటిక్లీ టైప్ చేసిన ప్రోగ్రామింగ్ లాంగ్వేజ్ V 0.4.10 (వ్లాంగ్) విడుదల ప్రచురించబడింది. V ని సృష్టించడంలో ప్రధాన లక్ష్యాలు నేర్చుకోవడంలో సౌలభ్యం మరియు ఉపయోగం, అధిక రీడబిలిటీ, వేగవంతమైన సంకలనం, మెరుగైన భద్రత, సమర్థవంతమైన అభివృద్ధి, క్రాస్-ప్లాట్ఫారమ్ ఉపయోగం, C భాషతో మెరుగైన ఇంటర్ఆపరేబిలిటీ, మెరుగైన ఎర్రర్ హ్యాండ్లింగ్, ఐచ్ఛిక చెత్త కలెక్టర్ (GC), ఆధునిక లక్షణాలు మరియు మెరుగైన ప్రోగ్రామ్ నిర్వహణ. ఈ ప్రాజెక్ట్ దాని స్వంత గ్రాఫిక్స్ లైబ్రరీ మరియు ప్యాకేజీ మేనేజర్ను కూడా అభివృద్ధి చేస్తోంది. కంపైలర్, లైబ్రరీలు మరియు సంబంధిత సాధనాలు MIT లైసెన్స్ క్రింద ఓపెన్ సోర్స్.
కొత్త సంస్కరణలో మార్పులలో:
- అనామక నిర్మాణాలు జోడించబడ్డాయి.

- గతంలో వాడుకలో లేనిదిగా ప్రకటించబడిన పాత కార్యాచరణ తీసివేయబడింది (గతంలో, 6 నెలల పాటు, ప్రాజెక్ట్ను కంపైల్ చేస్తున్నప్పుడు అటువంటి కోడ్ గురించి హెచ్చరిక ప్రదర్శించబడింది).
- భాషా పార్సర్ మరియు చెక్కర్లో అనేక మెరుగుదలలు.
- అనుకూలతను విచ్ఛిన్నం చేసే మార్పులు:
- పాత "[attr]" సింటాక్స్ ఇప్పుడు ఎర్రర్ను ఉత్పత్తి చేస్తుంది, "@[attr]"ని ఉపయోగించాలి.
- string.index_after() ఇప్పుడు string.index_after() వంటి ఎంపికను అందిస్తుంది, పాత ప్రవర్తన కోసం string.index_after_()ని ఉపయోగించండి.
- వేగవంతమైన, మరింత స్థిరమైన మరియు ఉపయోగించడానికి సులభమైన వెబ్ కోసం vweb నిలిపివేయబడింది.
- అనేక ఆప్టిమైజేషన్లు మరియు డాక్యుమెంటేషన్ జోడింపులతో పాటు, ప్రామాణిక లైబ్రరీలో ఇవి ఉన్నాయి:
- అంతర్నిర్మిత పద్ధతి string.split_by_space() జోడించబడింది
- File.write_u8/1 మరియు File.read_u8/0 అనే సహాయక పద్ధతులు os మాడ్యూల్కు జోడించబడ్డాయి.
- disk_usage ఫంక్షన్ os మాడ్యూల్కు జోడించబడింది, ఫైల్ పాత్ కోసం అందుబాటులో ఉన్న స్థలాన్ని చూపుతుంది.
- week_of_year() ఫంక్షన్ టైమ్ మాడ్యూల్కు జోడించబడింది.
- x.json2 కు Any.as_map_of_strings/0 జోడించబడింది.
- వెబ్ మార్పులలో:
- x.vweb మాడ్యూల్ తీసివేయబడింది (ఇప్పుడు అది మాడ్యూల్ వెబ్).
- అభ్యర్థన IDలను ట్రాక్ చేయడానికి veb.request_idకి కొత్త మిడిల్వేర్ జోడించబడింది.
- వెబ్ మాన్యువల్ నవీకరించబడింది.
- డేటాబేస్లు:
- orm మాడ్యూల్లో, fk ఎంపిక కోసం కోడ్ జనరేటర్ పరిష్కరించబడింది.
- "-d trace_sqlite" ని ఉపయోగిస్తున్నప్పుడు మరిన్ని కాల్స్ కోసం db.sqlite కి ట్రేసింగ్ జోడించబడింది, ORM కోసం మాత్రమే కాదు.
- db.pg ఇప్పుడు ఆపరేటర్లకు మద్దతు ఇస్తుంది — db.prepare/3 మరియు db.exec_prepared/2.
- db.mysql కు మద్దతు జోడించబడింది SSL మరియు కనెక్షన్ ఫ్లాగ్కి తరలించబడింది.
- ఉదాహరణలు:
- vanilla_http_server ఉదాహరణ జోడించబడింది HTTP సర్వర్ - వేగవంతమైన, బహుళ-థ్రెడ్, నాన్-బ్లాకింగ్, పోర్ట్ మరియు హోస్ట్ పునర్వినియోగం, థ్రెడ్-సురక్షితం, epollను ఉపయోగిస్తుంది.
- భాష యొక్క పనితీరు సామర్థ్యాలను ప్రదర్శించడానికి "1 బిలియన్ రో ఛాలెంజ్" ఉదాహరణ జోడించబడింది.
- "మైన్స్వీపర్" ఆట యొక్క ఉదాహరణను జోడించాను (ఉదాహరణలు/gg/minesweeper.v).
- స్థాయిలతో కూడిన సోకోబాన్ పజిల్ యొక్క ఉదాహరణను జోడించారు.
- ఒక నమూనా ఆస్టరాయిడ్ గేమ్ను జోడించారు (ప్రస్తుతం < 400 లైన్ల కోడ్ మరియు ggని ఉపయోగిస్తుంది).
- కీబోర్డ్ మరియు టచ్ నియంత్రణలకు మద్దతు ఇచ్చే నమూనా చిన్న ఆటను జోడించారు.
- "v" యుటిలిటీలో "-show-depgraph" ఫ్లాగ్ ఉంది, అది ModGraph తో చిత్రాన్ని ఉత్పత్తి చేస్తుంది:

- ఈ ప్రాజెక్ట్ దాని స్వంత కెర్నల్తో కొత్త OS Vinixను అభివృద్ధి చేస్తోంది, దీనిని V భాషలో మొదటి నుండి వ్రాయబడింది. Vinix ఇప్పుడు GTK3తో పని చేయగలదు:

మూలం: opennet.ru



