→ ginstein:私底下在討論吧:P 推 140.112.169.79 05/08
※ 引述《ginstein (夢想的另一端)》之銘言:
: ※ 引述《pftung (我是誰???)》之銘言:
: 或許我舉的例子中術語用的不好,讓你誤解了...
: 重點是上面三句,積分程式應該是用這種邏輯寫出來的~~:)
: keyword <-> Basic Integral Table
: grammar <-> Transformation Rule
: : compiler只是在做語言的轉換
: : 將高階語言轉成machine code(給電腦看的binary code)
: : 如果你寫過C的話應該知道
: : source code->compiler->.obj->linker->.exe
: : 我們要寫的是source code,其實不需要知道compiler是怎麼做的
: 真不巧,我強調的是知道 compiler 怎麼寫的,和積分程式的原理是有關的...
: 不過並不是語言的轉換那部分,那部分在這不是重點...
: : 寫code其實是一種觀念,跟使用什麼語言並沒有絕對的關係
: : 比方說我可直接將輸入當作一個字串(跟我的database比對)
: : 若對方輸入的是多項式(形如summation ai*X^i)
: : 則我的output就是summation (ai/i)*X^(i+1)
: : 我想表達的是source code如何寫應該跟compiler沒有什麼關係
: : compiler只是在做語法的偵錯(就像判斷我們寫英文作文文法有沒有錯)
: 說到這我就想到,高中剛學程式時,我覺得寫程式沒學問,
: 需要學的,只是語法加耐心,眼高手低的我覺得程式 = DS + Algorithm,
: 而 Algorithm 又很數學,所以問題只是寫程式要花多少時間罷了...
: 但是當時我所能想到的程式中,就 compiler 我百思不得其解,
: 文法解析不可能是一大堆包含 if 的 tree ?
: 這樣要新增個 keyword 不就完蛋了!
: compiler 難道是把 source code 的 text stream 輸入後,
: 判斷這個字是不是 keyword ? 是的話... 不是的話...
: 一大堆的 if 加上一大堆的 jump...
: 回到主題,判斷 code 合不合語法是我想強調的重點
: : 同時把source code轉成machine code(文法無誤的話再把英文轉成法文)
: : 重點還是在我source code 的內容是什麼
遺憾....我還是不了解你說的(太高深了)
也許你想把積分軟體直接當compiler來寫(我真的不確定你的意思)
不過這樣有點大費周章
我猜你是說你想寫一個軟體(這軟體本身就是一個compiler)
而我的輸入,i.e,Cos[x^2],就是一個符合keyword,Cos,和語法,平方需用^2,的source code
不知道你是不是這意思????????
--
※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw)
◆ From: 61.230.94.87