国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女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怎么修改定
  • 短信驗證碼 豆包網頁版入口 破天一劍 目錄網 排行網

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

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

    国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看
    久久99精品久久久久久秒播放器| 日韩中文字幕av| 99久久综合狠狠综合久久止| 久久最新资源网| 日本福利视频网站| 91精品视频在线播放| 欧美激情免费在线| 国产视频精品网| 国产精品久久久久久久久久三级 | 苍井空浴缸大战猛男120分钟| 国产精品福利观看| 欧美不卡在线播放| 国产精品视频永久免费播放| 欧美主播一区二区三区美女 久久精品人 | 亚洲在线播放电影| 国产精品亚洲激情| 欧美精品久久久久久久久久 | 精品国产一区二区三区四区在线观看 | av一区二区在线看| 精品成在人线av无码免费看| 精品一区二区国产| 久久综合亚洲社区| 国产欧美一区二区在线播放| 不卡av电影院| 国产免费一区二区三区视频| 欧美激情视频在线免费观看 欧美视频免费一| 国产一区二区三区高清视频| 欧美精品在线观看| 国产精品自拍合集| 亚洲精品久久区二区三区蜜桃臀 | 欧美日韩在线观看一区| 国产精品丝袜久久久久久不卡| 日韩在线国产| 色偷偷88888欧美精品久久久| 欧美自拍视频在线| 国产精品狼人色视频一区| 精品一区久久| 一区二区三区四区在线视频| 91国产精品91| 青青草视频在线视频| 久久久国产在线视频| 国产最新免费视频| 亚洲图片欧洲图片日韩av| 91精品一区二区三区四区| 日本精品久久久久中文字幕 | 国产中文欧美精品| 亚洲天堂电影网| 国产成人亚洲综合91精品| 秋霞午夜一区二区| 精品国产一区三区| 7777奇米亚洲综合久久| 欧洲黄色一级视频| 精品产品国产在线不卡| 国产精品777| 欧美日韩三区四区| 国产av不卡一区二区| 久久久爽爽爽美女图片| 精品免费视频123区| 欧美精品久久久久久久久久| 久久成人免费观看| 精品午夜一区二区| 少妇久久久久久被弄到高潮| 国产精品久久久久久亚洲调教| 奇米成人av国产一区二区三区| 一本—道久久a久久精品蜜桃| 国产精品99一区| 日韩精品久久久| 国产精品久久久久久久久久东京| 成人做爽爽免费视频| 日韩欧美一区二区在线观看| 久久伊人色综合| 久久人人看视频| 国产一区二区在线网站| 日韩一区不卡| 欧美精品免费在线观看| 91国产高清在线| 国产综合久久久久久| 日韩在线三级| 久久久久国产精品一区| 久久精品中文字幕| 91久久久久久久久久久久久| 激情成人开心网| 亚洲区成人777777精品| 国产精品第七影院| 久久国产色av免费观看| 国产成人精品久久久| 色中色综合影院手机版在线观看 | 欧美激情中文字幕在线| 日韩中文字幕免费| 91精品视频一区| 国产免费视频传媒| 欧美老熟妇喷水| 日韩av日韩在线观看| 超碰91人人草人人干| 日韩在线精品视频| 国产精品99久久久久久www | 亚洲色欲久久久综合网东京热| 国产精品动漫网站| 国产成人精品在线观看| 91精品久久久久久| 国产欧美日韩最新| 欧美一区二区综合| 日本午夜精品一区二区| 中文字幕综合在线观看| 国产精品久久在线观看| 日日狠狠久久偷偷四色综合免费| 91免费黄视频| 国产精品一区二区不卡视频| 欧美动漫一区二区| 日韩久久久久久久| 日日碰狠狠丁香久燥| 亚洲一区二区三区四区中文| 久热精品视频在线免费观看| 国产精品啪视频| 久久精品ww人人做人人爽| 成人黄色中文字幕| 国产精品一区二区三区免费观看| 国内视频一区二区| 经典三级在线视频| 黄色一级二级三级| 欧美激情视频一区二区三区| 热久久这里只有精品| 日韩欧美一区二区三区四区五区 | 欧美一级片久久久久久久| 亚洲日本理论电影| 宅男噜噜99国产精品观看免费| 久久99精品国产99久久6尤物| 久久深夜福利免费观看| 久久精品国产久精国产思思| 色偷偷91综合久久噜噜| 俺去啦;欧美日韩| 久久精品99无色码中文字幕| 日韩中文字幕第一页| 国产精品视频自在线| 久久躁狠狠躁夜夜爽| 精品久久久久亚洲| 色综合视频一区中文字幕| 中文字幕乱码一区二区三区| 一本色道久久88亚洲精品综合| 欧美激情精品久久久久久大尺度| 精品国产乱码久久久久软件 | 国产精品露脸av在线| 精品国产二区在线| 一级黄色免费在线观看| 亚州国产精品久久久| 少妇人妻无码专区视频| 欧洲亚洲免费视频| 国产在线98福利播放视频| 国产日韩欧美综合| 国产欧美日韩视频| 97人人模人人爽人人喊中文字| 国产精品999999| 色琪琪综合男人的天堂aⅴ视频| 国产精品视频一区二区三区四区五区 | 精品国产网站地址| 国产精品第12页| 中文字幕一区综合| 日韩aⅴ视频一区二区三区| 欧美中文字幕在线视频| 国产日韩精品在线播放| 97免费视频在线| 久久人人九九| 国产精品美女黄网| 久操成人在线视频| 色噜噜一区二区| 黄色大片中文字幕| 91麻豆蜜桃| 久久精品视频在线播放| 国产精品对白一区二区三区| 亚洲国产精品久久久久婷蜜芽| 热久久免费视频精品| 国产亚洲二区| 97人人模人人爽人人喊中文字| 日韩有码视频在线| 曰韩不卡视频| 日韩免费精品视频| 国产原创中文在线观看| 国产精品69精品一区二区三区| 久久精品亚洲精品| 亚洲欧美日韩精品在线| 欧美日韩黄色一级片| 成人精品久久av网站| 日韩中文字幕国产精品| 在线观看一区二区三区三州| 日韩精品一区二区三区四区五区 | 国产精品视频色| 午夜探花在线观看| 免费久久久久久| 91国视频在线| 国产精品久久久久7777| 日韩av不卡在线播放| 国产精品综合不卡av| 国产精品免费视频一区二区| 色一情一乱一伦一区二区三区| 国产日韩一区二区在线观看| 久久久久久欧美精品色一二三四| 久久久久久91香蕉国产| 欧美久久久久久久久久久久久久| 91久久久久久久一区二区| 久久亚洲精品小早川怜子66|