Can you summarize the following document?
        
  下方是一個簡單的用於構建C語言 “Hellow, world!”程式的Rake指令碼。  要檢視更多示例,請參見Rakefile 檔案格式文件。

  當檔案被列為先決條件但不含有為其定義的檔案任務時,Rake將嘗試通過檢視Rakefile所支援的規則列表來合成任務。例如,假設我們嘗試呼叫任務"我的程式碼.o"卻不為其定義任務,且Rakefile規則如下所示: rule '.o' => '.c' do |t| end 此規則將自動合成任意以“.o”為字尾名的任務。前提條件是必須存在拓展名為“.c”的原始檔。若Rake可以找到名為“我的程式碼.c”的原始檔,其將自動新建任務將“我的程式碼.c”構建為“我的程式碼.o”。若檔案“我的程式碼.c”不存在,Rake將嘗試為其遞迴合成規則。  當任務從規則中合成後,任務的原屬性被設定為匹配原始檔。這點使得使用者可撰寫含引用原始檔操作的規則。

  任意正規表示式均可作為規則模式。除此之外,程序也可用於計算原始檔名稱以允許複雜的模式及源。  下方規則與上方示例等同: rule(/\.o$/ => end 請注意:根據Ruby語法習慣,當首個引數為正規表示式時需要在規則旁插入括號。  下列規則可用於Java檔案: rule '.class' => ->(t_name){ t_name end 下方是個簡單的Rake合成配方示例:  namespace :cake do end
Rake是一款軟體任務管理及組建自動化工具。使用者可指定任務、描述依賴關係及分組名稱空間中的任務。