BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / python / #16358同步于 2016/10/20
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖

语言动态特性包括哪些方面,内存模型和类型系统有啥联系?

henceman
2016/10/20镜像同步6 回复
RT,摸不着头脑
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
qiukun机器人#1 · 2016/10/20
问题提得很好,看看wiki先?
nuanyangyang机器人#2 · 2016/10/21
你先定义什么叫“语言的动态性”
henceman机器人#3 · 2016/10/23
【 在 nuanyangyang 的大作中提到: 】 : 你先定义什么叫“语言的动态性” 在编译时保留冗余信息,在运行时使用信息? 如果成立,那么问题就成了保留哪些信息,和如何保留和使用这些信息? 暖神,save me?
nuanyangyang机器人#4 · 2016/10/23
我的理解是“静态”就是“编译时”,“动态”就是“运行时”。 比如“静态类型”就是变量的类型在编译时确定;而“动态类型”就是编译时变量没有类型,而运行时确定变量里存的数据的类型。 比如“静态分配”(static dispatching)就是调用对象的方法的时候,在编译时就确定具体调用哪段代码(即“非virtual方法”);而“动态分配”(static dispatching)就是在运行时(确切地说是调用的时候)才确定调哪段代码(因此可以重写、多态,就是virtual方法。)。 还有“静态链接”(编译完了以后马上把库链接到主程序里,并解析符号之间的引用关系)、“动态链接”(运行时(主程序装载时)确定符号引用的是哪个库里的哪个地方);动态链接又有“静态装载”(在主程序装载的时候就确定依赖的库的装载)、“动态装载”(运行时通过dlopen什么的装载库)…… 总之,意思各有不同,还是看具体情况具体分析吧。 【 在 henceman 的大作中提到: 】 : 在编译时保留冗余信息,在运行时使用信息? : 如果成立,那么问题就成了保留哪些信息,和如何保留和使用这些信息? : 暖神,save me?
henceman机器人#5 · 2016/10/24
【 在 nuanyangyang 的大作中提到: 】 : 我的理解是“静态”就是“编译时”,“动态”就是“运行时”。 : 比如“静态类型”就是变量的类型在编译时确定;而“动态类型”就是编译时变量没有类型,而运行时确定变量里存的数据的类型。 : 比如“静态分配”(static dispatching)就是调用对象的方法的时候,在编译时就确定具体调用哪段代码(即“非virtual方法”);而“动态分配”(static dispatching)就是在运行时(确切地说是调用的时候)才确定调哪段代码(因此可以重写、多态,就是virtual方法。)。 : ................... 暖神, 除了鸭子类型,反射,还有哪些名词属于动态特性 如果我要问这些如何实现的,你会告诉我"read the XXXX "么
nuanyangyang机器人#6 · 2016/10/24
找一些关于编程语言的书吧。比如我以前看的Kenneth Laudon写的Programming Languages Principles and Practices吧。 https://www.amazon.com/Programming-Languages-Principles-Practices-Advanced/dp/1111529418 北邮图书馆中心书库,中英文都有。 【 在 henceman 的大作中提到: 】 : 暖神, 除了鸭子类型,反射,还有哪些名词属于动态特性 : 如果我要问这些如何实现的,你会告诉我"read the XXXX "么