中文编程语言-斯卡拉

电脑杂谈  发布时间:2020-06-01 22:07:07  来源:网络整理

中文编程_中文编程_中文编程·从入门到精通

@bhuztez表示中文编程必须支持带有``1加10'',``1加10'',``1加10'',``1加10''和``1至10''等表达式的语言语言也有限制. “加”和“乘”必须是可重用的. 您不能对“添加到”功能进行硬编码. 它必须是“ add”和“ to”的组合才能被视为中文编程语言.

中文编程·从入门到精通_中文编程_中文编程

根据@bhuztez的说法中文编程,我认为Scala是中文编程语言.

中文编程_中文编程·从入门到精通_中文编程

下载并安装Scala编辑文件zhihu_25078922.scala

中文编程·从入门到精通_中文编程_中文编程

#!/bin/env scala
trait 操作符工厂 {
  protected type 操作符
  protected def 创建操作符(操作: (Int, Int) => Int):操作符
}
trait 所有操作 extends 操作符工厂 {
  final def 加 = 创建操作符(_ + _)
  final def 乘 = 创建操作符(_ * _)
}
implicit final class 整数(左值: Int) extends 所有操作 {
  protected type 操作符 = Int => Int
  protected final def 创建操作符(操作: (Int, Int) => Int) = { 右值 => 操作(左值, 右值) }
  case class 一直(操作: (Int, Int) => Int) {
    case class 到(右值: Int) {
      def 为止 = (左值 to 右值).reduce(操作)
    }
  }
  def 到(右值: Int) = 左值 to 右值
}
object 延后计算 extends 所有操作 {
  protected type 操作符 = (Int, Int) => Int
  protected final def 创建操作符(操作: (Int, Int) => Int) = 操作
}
import 延后计算._
import scala.language.postfixOps
println(1 加 10)
println(1 乘 10)
println(1 到 10)
println(1 一直 加 到 10 为止)
println(1 一直 乘 到 10 为止)

中文编程_中文编程_中文编程·从入门到精通

执行命令行

$ scala zhihu_25078922.scala
11
10
Range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
55
3628800

请注意,在我的代码中,“ add”和“ multiply”仅定义一次中文编程,应被视为满足@bhuztez的要求.


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-230448-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 徐凝
        徐凝

        组织纪律和战斗力是不行的

      • 胡振松
        胡振松

        美国这么无赖那么咱们就应该更加坚定的造岛

      • 王汉斌
        王汉斌

        攘外必先安内

      热点图片
      拼命载入中...