language-design 相关问题

与编程语言的任何方面的设计相关的问题的标签。

Java为什么允许在任意语句上使用带标签的中断?

我今天才知道以下Java代码是完全合法的:myBlock:{/ * ... code ... * / if(doneExecutingThisBlock())break myBlock; / * ...更多代码... * /}注意...

回答 8 投票 14

是否存在一种函数名称中带有参数的编程语言

通常,代码不那么可读,因为参数始终位于函数名称的末尾。例如:addDaysToDate(5,myDate)。我想到了这样一种更易读的语法:function ...

回答 1 投票 1

是否可以在标准ML中支持更高种类的类型?

我已经阅读了这篇文章,ML方言不允许非地面类型的类型变量。例如。最后一个语句无法表示:-Haskell代码类型Ground = Int类型FirstOrder a ...

回答 1 投票 0

这种编程行为的术语

我已经设计并实现了一种编程语言。这种语言的特点之一是将一个函数(在示例代码中,我称其为leftBind)伪装成一个变量,以使任何随后的...

回答 1 投票 0

关于创建自己的小语言的问题

所以在您阅读本文之前:请知道我只是个孩子,请不要对我太苛刻。所以我想获得一些经验,我想开始创造自己的小语言。没什么...

回答 1 投票 0

为什么用新语法`noexcept`重写旧的空抛出规范?

标题说明了一切:为什么C ++在引入new关键字noexcept的情况下退却了完全令人满意,有用的空抛出规范throw()来用另一种语法替换它? ...

回答 1 投票 1

罗伯特·马丁(Robert Martin)的意思是“只有功能可以在编程的早期生存,而不是例行的” [保留]

摘自罗伯特·马丁(Robert Martin)编写的《干净代码》(Clean Code):在编程的早期,我们组成了例程和子例程系统。然后,在Fortran和PL / 1时代,我们组成了...

回答 1 投票 -1

Rust的ref关键字是否可以避免?

为什么Rust没有ref关键字?可以匹配value.try_thing(){&Some(ref e)=> do_stuff(e),// ...}不能由match value.try_thing(){&Some(e)=> ...

回答 1 投票 -1

为什么没有for(while)循环的初始化版本

请避免使用“因为语言规范如此规定”的答案/评论。应该可以实现此功能,而不会与当前的语法/语法有任何冲突,并且可以...

回答 1 投票 -2

实现动态类型语言与LLVM IR [关闭]

我试图建立使用LLVM C API动态语言的JIT编译器,但我被困在实现动态类型,例如,在函数定义,LLVM需要类型为每个参数,但...

回答 1 投票 -2

等待不宣功能异步

实际上,在飞镖,为了使用等待在函数体,一个需要声明的整体功能为异步:进口“镖:异步”;无效的主要()异步{风险X =等待funcTwo();打印(X); } funcTwo()...

回答 2 投票 2

为什么C ++不允许继承友谊?

为什么友谊至少可以在C ++中继承?由于显而易见的原因,我理解禁止传递性和反身性(我说这只是为了阻止简单的FAQ引用答案),但......

回答 10 投票 85

将构造函数作为参数传递(语言设计)

我正在尝试创建自己的语言,并想知道是否传递构造函数是一个可能的功能,即使用的语法是基于javascript和一些其他语言,但对于我...

回答 1 投票 0

为什么C ++ 0x中没有编译器生成的swap()方法?

C ++编译器自动生成复制构造函数和复制赋值运算符。为什么不换掉呢?目前,实现复制赋值运算符的首选方法是copy-and -...

回答 4 投票 44

为什么异步函数返回等待已解决的promise?

实际上,这种行为可能导致一些性能问题,即在异步函数的调用者“线程”和“延续尾部”之间的附加上下文切换。异步函数f(){等待承诺....

回答 2 投票 0

为什么PHP不支持多线程? [关闭]

我到处都读过PHP不支持多线程,但有一些解决方法。但是为什么PHP不支持多线程?对于服务器端脚本语言,这似乎是一个明显的......

回答 2 投票 4

将语言添加到AVM2

我有兴趣制作一种在AVM2上运行的语言,我正在寻找有关从哪里开始的建议。我确实意识到这绝不是一项微不足道的任务,但我想尝试一下......

回答 3 投票 4

为什么CMake语法到处都有多余的括号?

CMake的ifs是这样的:if(condition)... else if(...)... else(...)... endif(...)with else if(...)the(... 。)测试单独的条件。为什么别的(...)而不仅仅是其他? ...

回答 1 投票 6

为什么我不能创建泛型类型的数组?

简而言之,这不会编译:公共 void test() { A[] temp = new A[]{}; } Is it because of problems with backward compatibility, or is it something fundamental in the language design ...

回答 5 投票 11

是否存在具有以下功能的编程语言?

是否有一种语言可以支持以下概念,或者是否有一种模式可以实现与现有概念类似的东西?概念我想定义一个具有以下属性的Rectangle:...

回答 4 投票 6

© www.soinside.com 2019 - 2024. All rights reserved.