language-design

    0热度

    1回答

    在公开招标,为下面的语句: “在面向对象编程中使用泛型类型的帮助请在编译时检查。” 这是真的还是假的? 我相信这是错误的,因为类型检查编译器没有改进,这与面向对象,但在语言类型(弱打字或强打字)中没有关系。 有人请帮我解释为什么这个陈述是错误的。

    3热度

    1回答

    有人可以指导我设计和实现抽象语义图(ASG)的在线资源吗?我想为我的语言创建一个ASG编辑器。能够编辑ASG直接具有许多优点: 只有标识符和文字需要先输入和标识符写入一次,他们定义的时候。其他一切都是通过鼠标选择的。 因为编辑知道语言的语法,有没有更多的语法错误。编辑器阻止它们被创建。 因为编辑知道语言的语义,有没有更多的语义错误。 有一些次要的优点: 由于所有的保留字是易于分离的,程序可以被写入

    1热度

    2回答

    我的意思是,我很肯定它无论如何都是一个好习惯,但是有没有任何技术/概念上的原因,为什么这是编译器强制执行的?还是仅仅强调美学?

    8热度

    4回答

    我正在做一些实验,意外地写了一个代码,这很奇怪,我不明白。我甚至感到惊讶,我可以编译它。它看起来像这样: enum Foo { VALUE_1 { public int myVariable = 1; }, VALUE_2 { public void myMethod() { // } }, VAL

    1热度

    2回答

    我总是碰到一个奇怪的事实,而读任何编程语言参考: 变量或常量名不能以数字 当然开始,即使从数字名称被允许的话,使用这种做法是不好的做法。 但是真正的主要原因是什么? 是否会很难解析? 为避免混淆代码而弃用了吗?

    2热度

    1回答

    我假设#地区被忽略,编译器下降,那么,为什么它是一个预处理指令,而不是某种评论结构(如//地区名称:东西(); // ENDREGION NAME什么的。)是否有一个作出指令的决定的具体原因是什么?

    2热度

    2回答

    Ruby提供了unless和elsif声明。假设会有类似的elsunless陈述似乎是自然的,但是没有。这是否有特定的原因? 为了说明,这个声明将允许这样的代码。 unless broken # do something elsunless done # do something else end 我知道,这个代码可以被改写为使用if和elsif,但在使用unless某

    0热度

    1回答

    我正在构建一个Web应用程序,该应用程序将允许用户使用其数据创建小型“电子表格”。这是一个计时应用程序,我正在构建报告工具。 我正在寻找一种方法,让不同的群体拥有不同的报告,而不必在算法中进行硬编码。我想将这些算法存储在一个MySQL数据库中,并以人为基础进行抽取。 该应用程序允许用户跟踪时间并将其分配给活动。 报告生成器将允许用户选择要报告的活动并能够在总计中创建小型方程式。例如: :一组使用加

    2热度

    2回答

    System.TimeSpan类仅有一个非静态的私人领域,这是 internal long _ticks; 所以只保留蜱和执行所有操作(Add,Subtract,TotalSeconds ...)和重载运营商(>=,>,== )基于该私人领域,_ticks。 我发现在.NET 1.0中没有异常方法,但TimeSpan已经存在,但不能重新设计它作为别名Int64和实现为扩展方法的其他成员?这种方

    3热度

    1回答

    在我看到异常(C++,Java,Javascript,Python,PHP等)的语言中,我总是看到try或类似的东西来标记catch的范围。我想知道是否有必要。 try块有什么设计问题? 例如,借此: try{ try{ do_something_dangerous0(); }catch (SomeProblem p){ handle(p);