檔案:編譯器的流程.pdf

原始檔案(1,370 × 539 像素,檔案大小:65 KB,MIME 類型:application/pdf

摘要

編譯器的流程,使用底下心智圖檔案:

<map version="freeplane 1.7.0">
<!--To view this file, download free mind mapping software Freeplane from http://freeplane.sourceforge.net -->
<node TEXT="編譯器的流程" FOLDED="false" ID="ID_394023965" CREATED="1646094362688" MODIFIED="1646094373277" STYLE="oval">
<font SIZE="18"/>
<hook NAME="MapStyle">
    <properties edgeColorConfiguration="#808080ff,#ff0000ff,#0000ffff,#00ff00ff,#ff00ffff,#00ffffff,#7c0000ff,#00007cff,#007c00ff,#7c007cff,#007c7cff,#7c7c00ff" fit_to_viewport="false"/>

<map_styles>
<stylenode LOCALIZED_TEXT="styles.root_node" STYLE="oval" UNIFORM_SHAPE="true" VGAP_QUANTITY="24.0 pt">
<font SIZE="24"/>
<stylenode LOCALIZED_TEXT="styles.predefined" POSITION="right" STYLE="bubble">
<stylenode LOCALIZED_TEXT="default" ICON_SIZE="12.0 pt" COLOR="#000000" STYLE="fork">
<font NAME="SansSerif" SIZE="10" BOLD="false" ITALIC="false"/>
</stylenode>
<stylenode LOCALIZED_TEXT="defaultstyle.details"/>
<stylenode LOCALIZED_TEXT="defaultstyle.attributes">
<font SIZE="9"/>
</stylenode>
<stylenode LOCALIZED_TEXT="defaultstyle.note" COLOR="#000000" BACKGROUND_COLOR="#ffffff" TEXT_ALIGN="LEFT"/>
<stylenode LOCALIZED_TEXT="defaultstyle.floating">
<edge STYLE="hide_edge"/>
<cloud COLOR="#f0f0f0" SHAPE="ROUND_RECT"/>
</stylenode>
</stylenode>
<stylenode LOCALIZED_TEXT="styles.user-defined" POSITION="right" STYLE="bubble">
<stylenode LOCALIZED_TEXT="styles.topic" COLOR="#18898b" STYLE="fork">
<font NAME="Liberation Sans" SIZE="10" BOLD="true"/>
</stylenode>
<stylenode LOCALIZED_TEXT="styles.subtopic" COLOR="#cc3300" STYLE="fork">
<font NAME="Liberation Sans" SIZE="10" BOLD="true"/>
</stylenode>
<stylenode LOCALIZED_TEXT="styles.subsubtopic" COLOR="#669900">
<font NAME="Liberation Sans" SIZE="10" BOLD="true"/>
</stylenode>
<stylenode LOCALIZED_TEXT="styles.important">
<icon BUILTIN="yes"/>
</stylenode>
</stylenode>
<stylenode LOCALIZED_TEXT="styles.AutomaticLayout" POSITION="right" STYLE="bubble">
<stylenode LOCALIZED_TEXT="AutomaticLayout.level.root" COLOR="#000000" STYLE="oval" SHAPE_HORIZONTAL_MARGIN="10.0 pt" SHAPE_VERTICAL_MARGIN="10.0 pt">
<font SIZE="18"/>
</stylenode>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,1" COLOR="#0033ff">
<font SIZE="16"/>
</stylenode>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,2" COLOR="#00b439">
<font SIZE="14"/>
</stylenode>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,3" COLOR="#990000">
<font SIZE="12"/>
</stylenode>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,4" COLOR="#111111">
<font SIZE="10"/>
</stylenode>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,5"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,6"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,7"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,8"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,9"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,10"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,11"/>
</stylenode>
</stylenode>
</map_styles>
</hook>
<hook NAME="AutomaticEdgeColor" COUNTER="6" RULE="ON_BRANCH_CREATION"/>
<node TEXT="Tokenizing" POSITION="right" ID="ID_257197441" CREATED="1646094373824" MODIFIED="1646094377736">
<edge COLOR="#ff0000"/>
<node TEXT="1.Tokenizer" ID="ID_1695757479" CREATED="1646094378246" MODIFIED="1646094617145"/>
<node TEXT="2.Parser" ID="ID_1617660952" CREATED="1646094387646" MODIFIED="1646094621410"/>
</node>
<node TEXT="Pass-AST" POSITION="left" ID="ID_1800294162" CREATED="1646094393220" MODIFIED="1646094404925">
<edge COLOR="#0000ff"/>
<node TEXT="1型別推測" ID="ID_1801772943" CREATED="1646094406970" MODIFIED="1646094567957">
<node TEXT="型別用樹表達" ID="ID_201643114" CREATED="1646094415640" MODIFIED="1646094423886"/>
<node TEXT="需要有推測的明示rule,不然會故障" ID="ID_119294962" CREATED="1646094427486" MODIFIED="1646094439285"/>
</node>
<node TEXT="2型別複驗" ID="ID_1057071535" CREATED="1646094452385" MODIFIED="1646094578552"/>
<node TEXT="3.變數轉換" ID="ID_1716439754" CREATED="1646094467343" MODIFIED="1646094587886"/>
<node TEXT="4.lambda 轉閉包" ID="ID_51842282" CREATED="1646094472597" MODIFIED="1646094595036"/>
<node TEXT="5.引用計數code加入" ID="ID_311786143" CREATED="1646094482908" MODIFIED="1646094603744">
<node TEXT="引用計數rule要明示" ID="ID_484797290" CREATED="1646094496881" MODIFIED="1646094505313"/>
</node>
<node TEXT="6.轉成C-like語法" ID="ID_679503667" CREATED="1646094510127" MODIFIED="1646094611954">
<arrowlink SHAPE="CUBIC_CURVE" COLOR="#000000" WIDTH="2" TRANSPARENCY="200" FONT_SIZE="9" FONT_FAMILY="SansSerif" DESTINATION="ID_62185942" STARTINCLINATION="520;0;" ENDINCLINATION="520;0;" STARTARROW="NONE" ENDARROW="DEFAULT"/>
</node>
</node>
<node TEXT="輸出程式碼" POSITION="right" ID="ID_403334915" CREATED="1646094522981" MODIFIED="1646094533363">
<edge COLOR="#ff00ff"/>
<node TEXT="C" ID="ID_62185942" CREATED="1646094536434" MODIFIED="1646094543566"/>
</node>
<node TEXT="資結" POSITION="left" ID="ID_1100349406" CREATED="1646094754075" MODIFIED="1646094769933">
<edge COLOR="#00ffff"/>
<node TEXT="struct Node<T> {
  children: Vec<usize>,
}" ID="ID_1294160976" CREATED="1646094760937" MODIFIED="1646094763257"/>
<node TEXT="struct Item{
line: u64
col:u64
item:String
properties:String}" ID="ID_1042123103" CREATED="1646094770758" MODIFIED="1646094828304"/>
</node>
<node TEXT="其他" POSITION="right" ID="ID_1868155301" CREATED="1646094833406" MODIFIED="1646094836384">
<edge COLOR="#7c0000"/>
<node TEXT="印出S-expression" ID="ID_294097839" CREATED="1646094836859" MODIFIED="1646094844949"/>
<node TEXT="Derive Debug" ID="ID_1657020949" CREATED="1646094845457" MODIFIED="1646094851519"/>
</node>
</node>
</map>

檔案歷史

點選日期/時間以檢視該時間的檔案版本。

日期/時間縮⁠圖尺寸使用者備⁠註
目前2022年3月1日 (二) 08:48於 2022年3月1日 (二) 08:48 版本的縮圖1,370 × 539(65 KB)Tankianting討論 | 貢獻
2022年3月1日 (二) 08:41沒有縮圖0 × 0(5 KB)Tankianting討論 | 貢獻編譯器的流程,使用底下心智圖檔案: <pre> <map version="freeplane 1.7.0"> <!--To view this file, download free mind mapping software Freeplane from http://freeplane.sourceforge.net --> <node TEXT="編譯器的流程" FOLDED="false" ID="ID_394023965" CREATED="1646094362688" MODIFIED="1646094373277" STYLE="oval"> <font SIZE="18"/> <hook NAME="MapStyle"> <properties edgeColorConfiguration="#808080ff,#ff0000ff,#0000ffff,#00ff00ff,#ff00ffff,#00ffffff,#7c0000ff,#00007cff,#007c00ff,#7…

沒有使用此檔案的頁面。

詮釋資料