Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
您将如何实施越位规则?
我已经编写了一个可以实现这一目的的生成器 但我想知道实现越位规则的最佳方法 不久 越位规则意味着在这种情况下 缩进被认为是一个语法元素 这是伪代码中的越位规则 用于制作以可用形式捕获缩进的分词器 我不想按语言限制答案 token NEWLI
programminglanguages
languagefeatures
languagedesign
lexicalanalysis
C、C++、C#、Java 和 Python 中的声明、定义和初始化 [关闭]
很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 上述每种语言中的术语含义是什么 为什么这些语言在这方面有所不同 无论它们在哪里 如果有的
initialization
languagedesign
declaration
Definition
无堆栈语言如何工作?
我听说过无堆栈语言 但是我不知道如何实现这样的语言 有人可以解释一下吗 我们拥有的现代操作系统 Windows Linux 采用我所说的 大堆栈模型 运行 有时 这种模型是错误的 并且激发了对 无堆栈 语言的需求 大堆栈模型 假设编译的程序
stack
languagedesign
stackless
为什么 Rust 不支持特征对象向上转换?
鉴于此代码 trait Base fn a self fn b self fn c self fn d self trait Derived Base fn e self fn f self fn g self struct S impl
OOP
Rust
languagedesign
liskovsubstitutionprinciple
为什么不是 C# 的 memberinfo() 反射函数 [重复]
这个问题在这里已经有答案了 有sizeof and typeof 但为什么不memberinfo 返回一个实例System Reflection MemberInfo为帮助反射代码而选择的部分代码 Example Program Type
c
Reflection
languagedesign
为什么必须“导入”Python 标准库函数? [关闭]
Closed 这个问题需要多问focused 目前不接受答案 我是 Python 编码新手 并且有 PHP 背景 我很好奇为什么你必须在 python 脚本顶部 导入 函数 在 PHP 中 您可以简单地使用以下函数 sleep 10 以上将
python
languagedesign
pythonimport
为什么 Array 不重写 Ruby 中的三等号方法?
我刚刚注意到数组不会覆盖三重等号方法 有时称为大小写相等法 x 2 case x when 1 2 3 then match else no match end gt no match 而范围运算符的作用是 x 2 case x when
ruby
languagedesign
switchstatement
equality
为什么在“try”中声明的变量不在“catch”或“finally”的范围内?
在 C 和 Java 也可能是其他语言 中 try 块中声明的变量不在相应的 catch 或 finally 块的范围内 例如 以下代码无法编译 try String s test more code catch Console Out W
c
Java
Exception
scope
languagedesign
为什么没有非整数枚举?
为什么不能创建非整数枚举 我想知道这是否 是语言设计决策 或者在编译器中实现此决策是否存在问题 换句话说 在语言中实现非整数枚举是否可行 但只是没有合理的需求 或者 如果它不可行但合理 那么有什么障碍 请有人告诉我 C 中没有此功能的原因或
c
enums
languagedesign
真的对 javascript es6 箭头函数的“封闭范围”感到困惑
我在网上做了很多研究 阅读了很多帖子 包括MDN等等 据我所知 对于传统定义的函数 函数中的 this 是由调用 调用它们的对象定义的 以及几种不同的情况 对象文字 新的构造函数 事件处理程序等 我知道对于箭头函数 this 是按词法定义的
javascript
ECMAScript6
This
languagedesign
arrowfunctions
在 Scala 中使用“valcapacity:Int”而不是“val IntCapacity”的任何原因
我正在读 Scala 我想知道 Why val capacity Int 代替 val Int capacity 做出这个选择的任何原因 如果不是 在我看来 放弃 Java 的声明方式似乎不是一个好的选择 会使从 Java 到 Scala
scala
types
syntax
languagedesign
扩展巴科斯-诺尔范式的运算顺序
我正在为一种非常简单的规则语言创建正式规范 非常简单 我想使用 EBNF 因为这是一个标准 但我不知道如何指定操作顺序 这是到目前为止的规范 rule statement AND OR statement variable alphabet
languagedesign
grammar
rules
ebnf
operatorprecedence
支持 goto 的 Java 编译器或 JVM 语言?
是否有一个 java 编译器标志允许我使用goto作为一个有效的构造 如果没有的话有没有第三方java编译器支持goto 如果不支持的话还有其他语言支持吗goto同时可以方便的调用Java编写的方法 原因是我正在编写一种用 Java 实现的
Java
programminglanguages
languagedesign
为什么不能对函数的返回值使用数组索引? [关闭]
很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 为什么我不能这样做 explode 1 2 3 1 0 所有其他语言都支持它 我
php
languagedesign
languagefeatures
为什么 C# 扩展方法必须在静态类中定义? [复制]
这个问题在这里已经有答案了 我知道 C 扩展方法必须是静态的 我不明白的是为什么这些扩展不能在非静态类或通用类中定义 更新 我对这个设计决策背后的原因感兴趣 这更多的是一种观察而不是答案 但是 当您调用实例方法时 对您正在调用的对象的引用将
c
static
extensionmethods
languagedesign
您将如何编写一种简单的编程语言? [复制]
这个问题在这里已经有答案了 可能的重复 设计简单编程语言的方法 学习编写编译器 我想编写一种语法类似于 QBasic 但更简单的编程语言 我希望它适合初学者 它的简单性将鼓励有抱负的程序员不要放弃并让他们对编程产生兴趣 例如 代替 QBas
compilerconstruction
languagedesign
Java:枚举常量内方法和变量的定义
我在做一些实验时不小心写了一段代码 这很奇怪 我不明白 我什至很惊讶我能编译它 它看起来像这样 enum Foo VALUE 1 public int myVariable 1 VALUE 2 public void myMethod VA
Java
OOP
inheritance
enums
languagedesign
为什么 ORACLE 不允许在命令中使用连续的换行符?
I write CREATE TABLE Person name CHAR 10 ssn INTEGER 并将其保存到文件 a sql 如果我然后通过在 SQL Plus 命令提示符中键入 a 来运行它 它会告诉我以 ssn 开头的行不被识
sql
Oracle
languagedesign
whitespace
sqlplus
为什么语言不允许通过返回值重载方法?
c java等很多语言都不注重返回值 int i func float f func int func return 5 float func return 1 3 为什么以上不合法 这是否会增加编程的难度 int i func func
languagedesign
混合线程模型 (M:N) 实现
有three通常由操作系统内核完成的线程调度实现中使用的线程模型 其中之一是混合动力 M N 模型 其中一些N应用程序线程映射到M内核线程 以便它们可以使用最多M处理器 这种模式有优点也有缺点 优点之一是基于此模型的语言将引入语言级调度程序
Multithreading
languagedesign
multicore
«
1
2
3
4
5
6