Emacs internals: Tagged pointers ኣንጻር C++ std:variantን LLVMን (3ይ ክፋል)
ርእይቶታት
Mewayz Team
Editorial Team
Emacs Internals: Tagged Pointers ኣንጻር C++ std::variantን LLVMን (3ይ ክፋል)
ኣብዚ ናይ መወዳእታ ክፋል ናይዚ ተኸታታሊ መደብና፡ ናብ ሓደ ወሳኒ ስነ ህንጻዊ መስቀላዊ መንገዲ ዕምቆት ንኣቱ፡ ማለት ኣተገባብራ ውክልና ክብርታት። ታሪኻውን ቴክኒካውን መሰረታት ናይ Emacs Lisp ምልክት ዘለዎም ጠቋሚታት ዳህሲስና ምስ ዘመናዊ C++ ዓይነት ውሑስ ኣማራጺታት ኣነጻጺርናዮ ኣለና። ሕጂ፡ እቲ ኣገዳሲ ሕቶ ንሓትት፡ ከም ኢማክስ ዝኣመሰለ ውርሻዊ ስርዓት ብዛዕባ መጻኢ ዲዛይን ሶፍትዌር እንታይ ክምህረና ይኽእል፡ እዞም ትምህርትታትከ ምስ ከም በዓል መዋይዝ ዝኣመሰሉ ዘመናዊ መድረኻት ብኸመይ ይድመጹ? እቲ መልሲ ኣብ ምምራጽ ሜላ ጥራይ ዘይኮነስ፡ ኣብ መንጎ ጥረ ብቕዓት፡ ድሕነት ዓይነትን ነዊሕ ግዜ ዝጸንሕ ፍልቀት ስርዓትን ዘሎ ዓሚቝ ምትሕውዋስ ኣብ ምርዳእ እዩ።
እቲ ናይ ኣፈጻጽማ ግዴታ፡ ዝኽርን ፍጥነትን
Emacs's tagged pointers ናይ ትሑት ደረጃ ምምሕያሽ ብሉጽ ስራሕ እዮም። እቲ ስርዓት ብቐጥታ ኣብ ዘይተጠቕመሉ ቢትስ ናይ ሓደ ጠቋሚ ወይ ንእሽቶ ምሉእ ቁጽሪ ብምኽዛን፡ እቲ ስርዓት ዘገርም ቦታውን ግዝያውን ብቕዓት ይረክብ። ናይ ዝኽሪ ልዕሊ ዋጋ ውሑድ እዩ-ንነፍሲ ወከፍ ዋጋ ዝተፈላለየ ዓይነት ሜታዳታ ቅርጽታት ኣየድልን። ከም ዓይነት ምፍታሽን ምልኣኽን ዝኣመሰሉ ስርሓት ቢትዋይዝ ማስክን ፖይንተር ዲረፈረሽንን ይኾኑ፣ ብኣጻብዕ ዝቑጸሩ ዑደታት ሲፒዩ ይፍጸሙ። እዚ ጽጉብ ኣገባብ ንመልሲ ኢማክስ መሰረታዊ ኮይኑ፡ ዝተሓላለኸን ዳይናሚክን ሃዋህው ሊስፕ ዋላ ኣብ ዝተገደቡ ስርዓታት ብዘይ ገለ ጸገም ክሰርሕ የኽእሎ። ንሓደ ከም መዋይዝ ዝኣመሰለ ሞዱላር ቢዝነስ ኦኤስ፡ ማእለያ ዘይብሉ ተጓናጺ ዳታ ነጥብታትን መስርሕን ከወሃህድ ዘለዎ፡ ከምዚ ዓይነት መትከላት ብቕዓት ዘይደራደር እዩ። መዋይዝ ንተኣማንነት ዘመናዊ፡ ብዓይነት ውሑስ ቋንቋታት ክጥቀም እንከሎ፡ እቲ መሰረታዊ ፍልስፍና-ኣብ ሓደ ባይትን ኣብ ነፍሲ ወከፍ ዑደትን ረብሓ ምዕባይ-ንህንጸት ኣፈጻጽማ ዘለዎ ንግዳዊ ትሕተ-ቅርጺ ብቐጥታ ተዛማዲ ኮይኑ ይቕጽል።
ናይ ድሕንነትን ንጹርነትን ትእዛዝ ዘመናዊ ስርዓታት
እዚ ምስቲ ናይ C++ std::variantን ናይ LLVM ናይ ገዛእ ርእሱ ዓይነት ስርዓታትን ኣነጻጽሮ። እዚኦም ካብ "optimization-first" ናብ "correctness-by-design" ዝግበር ናይ ፓራዳይም ለውጢ ይውክሉ። ሓደ std::variant ኣብ ግዜ ምጥርናፍ ክህልዎም ዝኽእል ዓይነታት ብግልጺ ይዝርዝር፣ ዘይሕጋውያን ግዝኣታት ዘይውከሉ ይገብሮም። እቲ ኣከባቢርካ ቅድሚ ምፍጻሙ ነዊሕ እዋን ናይ ዓይነት ጌጋታት ክሕዝ ይኽእል እዩ፣ ዕላማ ናይቲ ኮድ ድማ ባዕሉ ዝስነድ ይኸውን። LLVM ኣብ መንጎኛ ውክልናኡ ዘይግሉጽ ዓይነታት ጠቋሚን ግሉጽ ዓይነት ሓበሬታ ናይ ምዝዋር ግዜን (RTTI) ብሰፊሑ ምጥቃሙ፡ ንዝተዋደደ፡ ኦዲት ዝግበረሉ ኣገባብ ዳታ ዝያዳ የጉልሕ። እዚ ለውጢ እዚ ነቲ ኣብ ቢዝነስ ሶፍትዌር ዝመጽእ ምዕባለ ዘንጸባርቕ እዩ: ካብ ስቡር፣ ሓደ ዓይነት ኣፕሊኬሽናት ናብ ድልዱልን ሞዱላርን ስርዓታት። ኣብቲ ንግዳዊ ስነ-መጐት፡ ኣውቶማቲክን ምሉእነት ዳታን ጥይት ዘይኣትዎ ክኸውን ዘለዎ ስነ-ህይወት መዋይዝ፡ እቲ ብዘመናዊ ዓይነት-ውሑስ ኣብስትራክሽን ዝወሃብ ውሕስነት፡ ንጹርነት ንምዕቃብን እቲ ስርዓት እናዓበየ ምስ ከደ ብዙሕ ወጻኢታት ዝሓትት ጌጋታት ንምክልኻልን ወሳኒ እዩ።
ፍልስፍና ስነ ህንጻ፡ ውርሻዊ ጥበብ ኣንጻር ዘመናዊ ጽንዓት
ኣብ መንጎ እዞም ሞዴላት ዝግበር ምርጫ ቴክኒካዊ ጥራሕ ኣይኮነን፤ ፍልስፍናዊ እዩ። ኢማክስ "ዝኸፍአ ይሓይሽ" ዝብል ፕራግማቲዝም ዘንጸባርቕ እዩ-ኣብ ልዕሊኡ ልዕል ዝበለ ህንጻ ተግባራዊነት ንምህናጽ ጽቡቕ ዝሰርሕ ቀሊልን ቅልጡፍን ፍታሕ። ነዊሕ ዕድመኡ ድማ ሓይሊ ናይዚ ኣገባብ ምስክር እዩ። ዘመናዊ ቅዲታት C++/LLVM "ቅኑዕ ግበሮ" ዝብል ዝተሓላለኸነት ዝሓቖፉ ኮይኖም፡ ንነዊሕ እዋን ዝጸንሕን ድሕነትን ናይ መጀመርታ ዲዛይን ልዕሊ ዋጋ ይቕበሉ። እቲ ዝገርም ክልቲኦም ይቀራረቡ ኣለዉ። ኢማክስ በብቑሩብ ዝያዳ ዓይነት-ምፍታሽን ሞዱላሪቲን ኣተኣታትዩ ክኸውን ከሎ፡ ሲ++ ኣከባበርቲ ድማ ብዓመጽ std::variant ንብቕዓት ናይ ብኢድ ዝተቓነዩ መለለዪ ዘለዎም ማሕበራት ንምውድዳር የመሓይሹ። ንዝኾነ ዝተሓላለኸ ስርዓት፡ እንተላይ ንቢዝነስ ኦኤስ፡ እቲ ቁልፊ ትምህርቲ፡ ነዞም ርእዮተ ዓለም ሚዛን ምሃብ እዩ።
ካብዚ ክልተኣዊ ምፍልላይ ዝወጽእ ቀንዲ መትከላት፡
ይርከብዎም- ዝብል ጽሑፍ ኣሎ።
- ንዕላማ ዝምጥን ምምሕያሽ፦ ኣብ ኣፈፃፅማ ወሳኒ ዝኾኑ ዋናታት ከም ምልክት ምግባር ዝኣመሰሉ ትሑት ደረጃ ዘለዎም ሜላታት ተግባራዊ ምግባር፣ ግን ነቲ ሰፊሕ ስርዓት ብውሑስ ኤፒኣይ ምዕቃብ።
- ግሉጽ ውዕላት፡ ብቢት ቴግ ይኹን ብቫርያንት ቴምፕሌት፡ ኣየናይ ዳታ ኣበይ ክውሕዝ ከም ዝኽእል ብንጹር ግለጽ።
- ቀስ ብቐስ ፍልቀት፦ ውርሻዊ ስርዓታት ዘመናዊ ናይ ድሕነት ባህርያት ከወሃህዱ ይኽእሉ፣ ዘመናዊ ስርዓታት ድማ ኣብ ዝተረጋገጸሉ ቦታታት ውጽኢታዊ ውርሻዊ ቅዲታት ክቕበሉ ይኽእሉ።
- ሞዱላር ተነጽሎ፡ ኣብ ውሽጢ ጽቡቕ ገይሩ ዝተነጸረ መተሓላለፍቲ ዝተፈላለዩ ናይ ዋጋ ውክልና ስትራተጂታት ዝሓዘ ኮይኑ፡ ነፍሲ ወከፍ ንኡስ ስርዓት ነቲ ምቹእ መሳርሒ ክጥቀም የኽእሎ።
መደምደምታ፡ ምህናጽ መጻኢ ብሓበሬታ ዝተሰነየ ምርጫ
ኣብ መወዳእታ፡ ካብ ናይ Emacs Lisp ምልክት ዘለዎም ጠቋሚታት ናብ ናይ C++ std::variantን ናይ LLVM ኣብስትራክሽንን ዝግበር ጉዕዞ፡ ካርታ ብስለት ሶፍትዌር ምህንድስና እዩ። ካብ ብልሓት፡ ጸጋታት ዝፈልጥ ምጥፍፋእ ናብ ቅርጻዊ፡ ኮነ ኢልካ ዲዛይን ዝወስድ መንገዲ የጉልሕ-እቲ ቀዳማይ ምሉእ ብምሉእ ጽቡቕ ባህርያት ከይገደፈ። ንኸም በዓል መወይዝ ዝኣመሰለ መድረኽ እዚ ታሪኻዊ ዓውደ-ጽሑፍ ብዋጋ ዘይሽነን እዩ። ንኣርኪቴክቸር ናይ ሞዱላር ቢዝነስ ኦኤስና ይሕብር፣ ኣብ ቀንዲ ሞተርና ከም መላጸ ቀጢን ብቕዓት ኣበይ ከም እነተግብርን ኣብ ተጠቃሚ ዝገጥሙ ሞዱላትናን ውህደታትናን ጽኑዕ ዓይነት ድሕነት ኣበይ ከም እነተግብርን ይመርሕ። ከም ምልክት ዘለዎም ጠቋሚታት ዝኣመሰሉ መሰረታዊ ሜላታት ዘለዎም ጥንካረን ምድምማጽን ብምርዳእ፡ ሓያላትን ምዕባይን ጥራይ ዘይኮኑስ ተጻዋርነትን ንጹርን ዝኾኑ ስርዓታት ክንሃንጽ ንኽእል ኢና- ንዳይናሚክን ዝተሓላለኸን ድሌታት ዘመናዊ ንግዲ ክድግፉ ዝኽእሉ ስርዓታት ክንሃንጽ ንኽእል ኢና።
💡 DID YOU KNOW?
Mewayz replaces 8+ business tools in one platform
CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.
Start Free →