aschaap / cas741

Course project
Apache License 2.0
0 stars 0 forks source link

MultiStage Programming Means No Module? #33

Closed halonazhao closed 6 years ago

halonazhao commented 6 years ago

I am not sure whether my understanding to your doc is on the right track. During compiling time, your program do not have information to determine any arguments of the generated function. Only after you giving all the information the program needed to infer the parameter type, parameter number, return type or other arguments, all information is going to be binded during run-time.This part I can basically understande.

But this process is taken care by machine. Modules are the things to show how you are going to code your program. For example, you may want to have a module to determine or infer how many parameters should be generated in the generated function. Although during compile time, you can not determine. But during runtime, machine can follow your code to infer these parameters. So I think modules are things used to introduce your code and help you organize your code.

I don't think Multi-stage Program has conflictions with having modules.

I am sorry that my knowledge to this is still limited. Probably, I just misunderstood something?

aschaap commented 6 years ago

You're not wrong. As we discussed, the document focuses on binding times rather than modularization because it's a very small program that essentially consists of only one module. I've tried to clarify this in the introduction.