国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

COMP4233代做、代寫Python/Java程序
COMP4233代做、代寫Python/Java程序

時間:2025-06-04  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



COMP4233 25S
Programming Assignment
Introduction
In Lecture 11, we implement an integer calculator, which consists of 
- int : the only data type for integers
- + : binary operator for integer addition
- * : binary operator for integer multiplication
- ( ) : parentheses for force parsing
- parser and evaluator of the expressions in this language.
In Lab 11, we extend the language by let expression, identifiers and its evaluator in the 
substitution model. This upgrade implements a naming system for the language.
Syntax
In this programming assignment, you need to further extend the language with following 
features.
1. if … then … else … : the “if” expression, which can branch computations under 
some conditions.
2. fun … -> … : function definitions, which can also be with let to name them.
To make if statement work properly, we also need 
3. a new data type bool, the guard in if;
4. constants in bool are either true or false;
5. Boolean binary operator ^, boolean conjunction;
6. bool can be constructed from the relational operator <=, integer “less or equal to”.
We want to add a little bit more complex structure into our language, which are
7. a new data type list with only one constant list [] – the empty list; and
8. lists can be constructed by binary operator ::, which is right associative.
Combining everything above, the entire grammar is
<prog> -> <expr> EOF
<expr> -> int
 | <expr> + <expr>
 | <expr> * <expr>
 | ( <expr> )
 | id
 | let id = <expr> in <expr>
 | fun id -> <expr>
 | <expr> <expr>
 | if <expr> then <expr> else <expr>
 | bool
 | <expr> <= <expr>
 | <expr> ^ <expr>
 | []
 | <expr> :: <expr>
Note that <expr> -> <expr> <expr> is the syntax for function application.
For the precedence of operators, we only specify + is lower than *. Others will be guaranteed 
by parentheses. For example, ambiguous expressions like fun a -> a 1 will be excluded 
from testcases. This expression has to be either fun a -> (a 1) or (fun a -> a) 1.
Typing
To make your life easy, type system is excluded from this project. Thus, expressions with 
type errors, like 1 + true are excluded from testcases.
Evaluation
The evaluation for operators simply follows their behaviors in mathematics. Students should 
understand them easily. But if a student insists true ^ true --> false, marks will be 
remove. Goliath does not want to argue.
The evaluation for let expression is implemented by substitution model and already given in 
Lab 11.
let <x> = v in <expr> --> <e>{v / <x>}
(let <x> = v in <expr>){v / <y>} -->
if <x> = <y> then (let <x> = <expr>)
else (let <x> = <expr>{v / <y>}
Students should figure out the substitutions for functions, function applications, and lists by 
themselves, which is interesting and not difficult. Furthermore, we also guarantee that 
function arguments are of distinct names. Expressions like let x = z in (fun z -> x)
are excluded from testcases. The following substitution is naïve and not correct.
let x = z in (fun z -> x)
 --> (fun z -> x) {z / x}
 --> fun z -> x {z / x}
 --> fun z -> z
 -/->
Output
To printout an AST, two functions string_of_val and string_of_bop are defined in 
main.ml. You can also apply these functions to see if your implementation works normally.
Example
Here is one example, 
let x=(fun a -> (if (a <= 1) then true else false)) in ((x 1) :: [])
is parsed into 
and evaluated as
let x=(fun a -> (if (a <= 1) then true else false)) in ((x 1) :: [])
--> ((x 1) :: []){fun a -> .. /x}
--> ((x 1){fun a -> .. /x} :: []{fun a -> .. /x}
--> ((x{fun a -> .. /x} 1{fun a -> .. /x}) :: []{fun a -> .. /x})
--> (((fun a -> ..) 1{fun a -> .. /x}) :: []{fun a -> .. /x})
--> (((fun a -> ..) 1) :: []{fun a -> .. /x})
--> (((fun a ->(if (a<=1) then true else false) 1) :: [])
--> ((if (a <= 1) then true else false){1/a} :: [])
--> ((if (a <= 1){1/a} then true{1/a} else false{1/a}) :: [])
--> ((if (a{1/a} <= 1{1/a}) then true{1/a} else false{1/a}) :: [])
--> ((if (1 <= 1{1/a}) then true{1/a} else false{1/a}) :: [])
--> ((if (1 <= 1) then true{1/a} else false{1/a}) :: [])
--> ((if true then true{1/a} else false{1/a}) :: [])
--> (true{1/a} :: [])
--> (true :: [])
-/-> 
Submission
ast.ml and lexer.mll are given in the package. You only need to implement 
parser.mly and main.ml. You don’t need to change anything else, including file names.
Grade distribution
- Submission 5%
- Compilation 5%
- parsing if statements 15%
- evaluating if statements 10%
- parsing functions and function applications 15%
- evaluating functions and function applications 10%
- parsing & evaluating relational operator <= 10%
- parsing & evaluating Boolean conjunction ^ 10%
- parsing lists 10%
- evaluating lists 10%
Select the features that you have implemented in check_list.md by [x].

請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp

掃一掃在手機打開當前頁
  • 上一篇:代做159.342 、代寫Operating Systems 編程設計
  • 下一篇:代寫MIT203、代做SQL編程設計
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    流體仿真外包多少錢_專業CFD分析代做_友商科技CAE仿真
    流體仿真外包多少錢_專業CFD分析代做_友商科
    CAE仿真分析代做公司 CFD流體仿真服務 管路流場仿真外包
    CAE仿真分析代做公司 CFD流體仿真服務 管路
    流體CFD仿真分析_代做咨詢服務_Fluent 仿真技術服務
    流體CFD仿真分析_代做咨詢服務_Fluent 仿真
    結構仿真分析服務_CAE代做咨詢外包_剛強度疲勞振動
    結構仿真分析服務_CAE代做咨詢外包_剛強度疲
    流體cfd仿真分析服務 7類仿真分析代做服務40個行業
    流體cfd仿真分析服務 7類仿真分析代做服務4
    超全面的拼多多電商運營技巧,多多開團助手,多多出評軟件徽y1698861
    超全面的拼多多電商運營技巧,多多開團助手
    CAE有限元仿真分析團隊,2026仿真代做咨詢服務平臺
    CAE有限元仿真分析團隊,2026仿真代做咨詢服
    釘釘簽到打卡位置修改神器,2026怎么修改定位在范圍內
    釘釘簽到打卡位置修改神器,2026怎么修改定
  • 短信驗證碼 寵物飼養 十大衛浴品牌排行 suno 豆包網頁版入口 wps 目錄網 排行網

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看
    国产xxx69麻豆国语对白| 国产成人精品国内自产拍免费看| 国产日韩在线一区| 国产成人精品免费视频| 亚洲欧洲久久| 国产九色91| 国产精品成人一区二区三区吃奶| 日韩视频专区| 国产精品99久久久久久久| 精品乱码一区| 激情久久av| 精品国产拍在线观看| 色综合久久久久久久久五月| 国产日韩在线视频| 国产精品免费在线| 激情综合网俺也去| 国产精品久久久久久久久免费看| 欧美连裤袜在线视频| www.xxxx欧美| 青青草国产精品| 久草综合在线观看| 日本高清不卡在线| 久久手机视频| 日韩av高清在线看片| 国产成人综合精品在线| 日韩av第一页| 久久久最新网址| 欧美一区二区三区在线免费观看| 99在线国产| 亚洲欧美影院| 国产黄色片免费在线观看| 日韩在线xxx| 国产成人av在线播放| 日韩男女性生活视频| 色噜噜亚洲精品中文字幕| 秋霞午夜一区二区| 久久久国产视频91| 免费久久久一本精品久久区| 国产精品免费观看在线| 精品一区二区日本| 欧美日韩aaaa| 91精品久久久久久久久久另类| 亚洲一区二区在线播放| 97精品伊人久久久大香线蕉| 中文字幕无码精品亚洲35| 91精品国产91久久久久青草| 日本免费一区二区三区视频观看| 久久久久久这里只有精品| 欧美理论一区二区| 久久综合免费视频| 不卡一卡2卡3卡4卡精品在| 亚洲v日韩v综合v精品v| 久久99欧美| 麻豆精品视频| 一本久道中文无码字幕av| 久久久一本精品99久久精品66| 日韩偷拍一区二区| 国产精品久久久久久五月尺| 国产欧美精品一区二区三区-老狼| 一区精品在线| 国产v综合v亚洲欧美久久| 欧美国产一区二区在线| 九九热这里只有精品6| 97免费高清电视剧观看| 日韩欧美亚洲v片| 国产精品国产精品| 91九色偷拍| 欧美极品jizzhd欧美| 一区二区三区四区免费观看 | 国产免费色视频| 亚洲色成人一区二区三区小说| 久久精品国产精品国产精品污| 欧美高清一区二区| 在线视频精品一区| 久久久久久久久久久久久国产精品| 国模无码视频一区二区三区| 亚洲国产精品久久久久久女王| 色偷偷88888欧美精品久久久 | 亚洲欧美影院| 久久精品视频网站| 97精品伊人久久久大香线蕉| 男人天堂a在线| 亚洲精品影院| 国产精品国产一区二区| 69av在线视频| 精品视频第一区| 日本高清不卡在线| 在线观看成人av| 久久精品视频在线| 91成人免费观看| 国产欧美日韩在线播放| 欧美中文在线观看国产| 亚洲国产精品一区二区第一页| 日韩视频一区在线| 国产精品91久久久久久| 国产欧美日韩精品专区| 欧美连裤袜在线视频| 少妇人妻互换不带套| 欧美日韩成人网| 国产精品日韩欧美| 久久国产乱子伦免费精品| 成人国产精品一区二区| 精品无码久久久久久久动漫| 日韩国产欧美亚洲| 性色av一区二区三区| 欧美精品第一页在线播放| 国产精品久久久久久五月尺| 日韩中文字幕免费视频| 久久久天堂国产精品女人| 国产免费一区视频观看免费| 欧美久久久久久久| 日韩免费av一区二区三区| 婷婷五月色综合| 亚洲一区二区三区av无码| 久久99青青精品免费观看| 精品国偷自产在线视频99| 久久精品国产精品亚洲色婷婷| 91精品国产91久久久久久最新| 俄罗斯精品一区二区三区| 国产美女精品免费电影| 国产日产欧美精品| 国产日韩欧美另类| 国产乱人伦精品一区二区三区| 国产日韩av在线| 国产九色porny| 啊啊啊一区二区| 99久热re在线精品996热视频| 99在线国产| 69**夜色精品国产69乱| 91久久夜色精品国产网站| 苍井空浴缸大战猛男120分钟| 国产欧美一区二区三区在线看| 国产欧美在线一区二区| 不卡视频一区二区| 久久手机在线视频| www国产精品com| 国产精品欧美久久久| 国产精品国产三级国产专播精品人 | 国产精品少妇在线视频| 久久精品视频在线播放| 久久久久久久久久久久久国产精品 | 日日骚av一区| 国产精品无码一本二本三本色| 精品国产一区二区三区在线观看| 精品国产一区久久久| 国产精品热视频| 久久成人这里只有精品| 亚洲熟妇av一区二区三区| 欧美一级免费在线观看| 欧美在线精品免播放器视频| 麻豆av一区二区| 91久久国产综合久久91精品网站 | 久久久国产精品一区| 国产精品沙发午睡系列| 久久中文字幕视频| 一区二区三区精品国产| 亚洲在线观看视频| 日本精品免费一区二区三区| 欧美第一黄网| 成人精品水蜜桃| 久久全球大尺度高清视频| 日韩网站免费观看| 久久99久国产精品黄毛片入口| 日韩一区免费观看| 欧美激情一区二区三区在线视频| 国产免费黄色av| 国产不卡av在线| 精品不卡一区二区三区| 日本一区二区三区免费看| 国产有码在线一区二区视频| 91九色在线视频| www.日韩不卡电影av| 中文精品视频一区二区在线观看| 日本高清视频精品| 国产欧美一区二区| 久久久久久国产免费| 欧美激情图片区 | 久久久久一区二区| 精品国产乱码久久久久久88av | 欧美日韩一区二区三| 国产欧美一区二区| 国产成人高潮免费观看精品| 精品国产乱码久久久久| 日韩久久精品一区二区三区| 免费日韩中文字幕| 国产成人avxxxxx在线看| 色综合久久88色综合天天看泰| 日韩精品一区二区三区电影 | 日韩欧美视频网站| 国产精品一区电影| 国产精品偷伦免费视频观看的| 在线观看av的网址| 国内精品久久久久久久| 77777亚洲午夜久久多人| 麻豆一区二区在线观看| 日韩欧美亚洲区| 久久视频在线观看中文字幕| 久久久久久av| 黄色小视频大全| 久久99精品久久久久久秒播放器 |