免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: pmerofc
打印 上一主题 下一主题

有此一说:“C不过也是山寨版的Pascal,本质上就是把BEGIN,END变成了花括号” [复制链接]

论坛徽章:
0
81 [报告]
发表于 2011-10-17 15:44 |只看该作者
继续装
    不就是PEEK,POKE吗,整的多么了不起一样。说实话Apple II时代没人把PEEK和POKE当作 ...
ecloud 发表于 2011-10-17 12:14


比PEEK,POKE方便多了,比汇编好写多了,不然pascal为何不学PEEK,POKE?那么多牛人为何不用无所不能的basic写内核和库?

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
82 [报告]
发表于 2011-10-17 15:50 |只看该作者
    这需要在你的详细设计里面去禁止,而不是靠编译器
    换句话说就是,孩子是靠教出来的,不是打出来的
ecloud 发表于 2011-10-17 14:33


换句话说就是:对死板的规则的执行、对重复的机械劳动, 人肯定比机器更有效率、更少犯错、更靠谱。

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
83 [报告]
发表于 2011-10-17 15:53 |只看该作者
回复 68# 幻の上帝

应该是指隐式转换吧?
是所有类型间的隐式转换都可以控制?
还是有一些类型的规则是定死的,另一些可控制?

关于类型计算,你认为还应该提供一些什么功能?

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
84 [报告]
发表于 2011-10-17 16:25 |只看该作者
打酱油的飘过……

哦,对了,说明一下,我用的是正儿八经的从pascal进化过来的Lua,跟C没啥关系(虽然得用C写模块的说)……

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
85 [报告]
发表于 2011-10-17 16:28 |只看该作者
回复 84# starwing83

>> 从pascal进化过来的Lua
有出处吗?

论坛徽章:
0
86 [报告]
发表于 2011-10-17 16:55 |只看该作者
回复 84# starwing83


    没看出lua在哪方面受到过pascal的影响

论坛徽章:
0
87 [报告]
发表于 2011-10-17 17:04 |只看该作者
本来程序设计,或者说软件的逻辑设计,是靠人而不是机器去实现的
    如果你觉得自己足够聪明, ...
ecloud 发表于 2011-10-17 14:49


问题是就算大部分语言的用户是你说的笨蛋,也不表示语言必须只有笨蛋都会用的方法。不会用的干嘛还用?用别人包装好的东西不就得了。
难道被当作聪明的人有义务教其他人不要自作聪明?

论坛徽章:
0
88 [报告]
发表于 2011-10-17 17:18 |只看该作者
本帖最后由 幻の上帝 于 2011-10-17 17:52 编辑
回复  幻の上帝

应该是指隐式转换吧?
是所有类型间的隐式转换都可以控制?
还是有一些类型的规则是定 ...
OwnWaterloo 发表于 2011-10-17 15:53



和类型系统相关的许多基本的操作和表达。隐式转换是其中一种,其它如对内存模型的描述等;再如,通过语言实现来帮助用户确定一个实体是否需要是一个纯粹静态的类型的实例(用户在声明中只提供一个类型占位符,表示这里的实体自身不是类型,需要作为一个类型的实例),并在实现过程(比如优化)中进一步确定类型模型(这个应该不太现实,至少超过现在静态类型语言实现的能力了)。至于隐式转换哪些可控制……如果把除了描述存储的fundamental type——char或unsigned char之一——以外的都扔掉,都可控制也行。类型计算嘛……structural equivalence之类的或许不错,不过我怀疑会动摇以nominal typing为基础的整个类型系统。
更广范围地说,是通过语言本身重用乃至有限范围内覆盖(用户提供替代品)语言实现的能力。eval是这里另一方面的典型代表(但至少对于C这样的nominal typing的语言来说还不是极致,例如无法直接描述实现中用到的ADT——当然这样的特性应该超过了现在大多数具有思维惯性的用户所期望的了)。现在可以通过命令行调用编译器+动态链接之类的来获得类似效果,但这依赖于环境提供的具体接口,对于语言而言不可控的
PS.其实C++已经在这方面走出一段距离了,例如<type_traits>和alignof。但还很不够。而且很要命的是,这些特性更多着眼于功能上而不是整体结构上的补遗,加大了语言的复杂性,使“反紧凑”体现得更加明显,更不容易用对。另外,无意之中也埋了许多包袱,像constexpr int a = 1;和typedef std::integral_constant<int, 1> a;之间的冗余看样子是永远无法消除的了。
其它略相关牢骚:
如果不算宏替换,C的抽象能力除了可怜的二等公民——函数、三等公民——类型以外实际上仅限于存储。C++好不到哪里去,某些能在编译期完全确定逻辑关系的调用(比如scope guard)居然需要依赖于helper class的生存期这种运行期属性(+优化)来控制,而没有更直接明确清晰的方法来表达,或许还让不知情者以为是高深技巧而自以为得计……这样的所谓“general-purpose programing language”,滑天下之大稽。设计模式之类的东西就非得用自然语言/UML什么的表达才够高尚吗?

论坛徽章:
0
89 [报告]
发表于 2011-10-17 17:33 |只看该作者
本帖最后由 ddddddddd 于 2011-10-17 17:48 编辑

依云,我确实对没有函数的basic如何实现面向对象很感兴趣,方法/成员函数/消息在basic下如何实现?有方法,不过我想看你是怎么办的。

论坛徽章:
0
90 [报告]
发表于 2011-10-17 17:40 |只看该作者
本帖最后由 ddddddddd 于 2011-10-17 17:48 编辑

依云,我再问个问题,用basic实现一个链表,在不用redim这个非标准basic语句的情况下。这个问题我回答不上来,我没看到办法。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP