新手寫tokenize和parser建議使用lex和yacc嗎

時間 2021-05-10 01:38:41

1樓:nyycbd

lex/yacc作為自底向上的parser generator,乙個額外的好處在於可以更容易的定製error recovery。只要在特定的產生式上掛上鉤子,錯誤資訊幾乎可以想多漂亮有多漂亮,也可以通過定製恢復點,「帶傷」讓parser強行跑下去,獲得盡量豐富的診斷除錯資訊。如果你做的是學校的大作業,這有利於給助教留下良好的印象。

相反,手寫top-down parser的錯誤恢復可能會難一些,而且這種修改往往是侵入式的,各種SkipUntil()之類的函式混雜在邏輯中阻礙思路,遠比加一兩個production要容易出錯。

2樓:brambles

如果你想造一門「程式語言」,那麼不要浪費時間在前端上,Parser 是難點但卻不是重點。所以學好基礎,然後盡量去使用工具(基礎不好你是用不好這些工具的…)

除非你你的目的只是單純的學習 Parser,那麼我建議你去造乙個簡易的 LR Parser Generator 比較靠譜,比如 Lex 和 Yacc 就是…

brambles:前端要以正確的姿勢學習編譯原理(上篇)

會看新手寫的言情嗎

悅悅仙女a 幾乎不太看,第一新手,沒怎麼寫過,一般看了幾頁就能看出來,文筆有幼稚的地方之類,現在這種快餐文學幾乎我會果斷選擇文筆更好的 DDR 肯定會啊!但是不會很多吧,第一次。因為人都會有一種從眾心理啊。就像我有的時候看完文案再看收藏人數,一般就確定了這本書會不會看。但在總要一步一步來吧。 叮叮咚...

新手寫文,寫成這樣能讀下去嗎

MAY98 直接切入正題,不用寫那麼多沒用的,最好第一章就有乙個高潮點,如果第一章沒得啥內容,讀者也不會看下去,就比如我,第一章男主就必須出現,而且沒有乙個龍套,就是他乙個,這樣讀者就懂,這個是男主! 肆柒嗷嗚嗷嗚w 新手寫文,開頭還是單刀直入比較好,直接抓眼球才能留住人,你背景描述太多啦,就不是很...

晉江新手寫書沒人看怎麼辦?

揪揪耳 這個問題應該和你的文名,文案和文章內容有關。1.文名,晉江的文名一般都不是走文藝范的,太過正式的文名,除非你有讀者基礎,不然都不會太讓人感興趣。據我所知,有讀者基礎的作者也很少取文藝的書名 2.文案不夠吸引人。如果文名不行,文案又不好,會有一大半的人走掉。所以為了挽回你的讀者,請多在文案上下...