标签: programming-languages

用于自修改代码的编程语言?

  • 我最近在考虑编写自我修改程序,我认为它可能是强大而有趣的.所以我目前正在寻找一种允许轻松修改程序自己的代码的语言.
  • 我读到了C#(作为一种解决方法)以及在运行时编译和执行代码的能力,但这太伤人了.
  • 我也在考虑装配.更改运行代码更容易,但它不是很强大(非常原始).

您能否建议一种支持在运行时修改代码的强大语言或功能?

这就是我在运行时修改代码的意思:

  Start:
  a=10,b=20,c=0;
  label1: c=a+b;
  ....
  label1= c=a*b;
  goto label1;
Run Code Online (Sandbox Code Playgroud)

并且可能正在建立一份说明清单:

  code1.add(c=a+b);
  code1.add(c=c*(c-1));
  code1. execute();
Run Code Online (Sandbox Code Playgroud)

programming-languages dynamic-languages self-modifying

34
推荐指数
7
解决办法
2万
查看次数

为什么我们在变量名中使用_?

我见过像_ image这样的变量,想知道_是什么意思?

programming-languages

34
推荐指数
3
解决办法
3万
查看次数

如何编写自我复制代码(在exec上打印源代码)?

我已经看到很多基于C/C++的解决方案来解决这个问题,我们必须编写一个程序,在执行时打印自己的源代码.

一些解决方案

http://www.cprogramming.com/challenges/solutions/self_print.html

Quine Page解决方案有多种语言版本

网上有更多解决方案,每个解决方案都不同.我想知道我们如何处理这样一个问题,解决它的人心中的问题.请给我一些关于这个问题的见解...虽然解释语言中的解决方案如perl,php,ruby等可能很容易......我想知道如何用编译语言设计它...

programming-languages quine

33
推荐指数
2
解决办法
1万
查看次数

用什么编程语言登月?

我一直想知道:用什么编程语言去登月?我意识到可能没有一个答案/语言,但它让我感兴趣.

有多少人参与了这些系统的代码?它是如何测试的?

programming-languages

33
推荐指数
3
解决办法
2万
查看次数

哪些因素可以决定Clojure,Scala或Haskell是否会获得牵引力?

鉴于不可能看到未来,与Clojure,Scala或Haskell有关的哪些因素可能决定其中一个是否能够抓住?

是否有文化或经济问题可以使其中一种语言优于其他语言?

或者这些语言是否因其概念复杂性而无法获得牵引力?

haskell programming-languages scala clojure

33
推荐指数
3
解决办法
9266
查看次数

一种旨在测试的编程语言

是否存在可通过设计测试的编程语言,或者至少在可测试性方面表现出非常好的属性?

例如,设计的编程语言使得单元测试是编码过程的非可选部分,或者更好的是编程语言,其中程序或多或少地从单元测试中推断出来.

或者,如果您更喜欢扭曲问题,那么命令式编程是不好的做法还是不必要的以确保可测试性?

面向对象编程怎么样?像依赖注入和模拟库这样的东西真的有助于TDD,这些实践不会因为成为语言设计的一部分而受益吗?我一直在寻找具有丰富元模型的语言,倾向于允许使用目标语言编写类似DSL的API.这些库是建立在这之上的,为什么不把这些东西放到语言本身?

我发现詹姆斯布莱克引用的博客文章非常好.

不久前,我反思了过去十年的测试习惯,并提出了一些有趣的观察:

  • 我觉得有必要为我经常编写的代码编写测试.
  • 与往常一样,这种需求受到环境限制的阻碍,所以我最终没有编写这些测试.

您是否同意动态编程语言使编写测试更容易的说法?

tdd programming-languages

33
推荐指数
6
解决办法
3467
查看次数

常见的JavaScript实现是否使用字符串实习?

常见的JavaScript引擎(如V8和WebKit的JavaScriptCore)是否使用字符串实习来处理JavaScript字符串?或者他们实际上在内存中保留了多个相同字符串的实例?

javascript programming-languages webkit v8 string-interning

33
推荐指数
3
解决办法
5213
查看次数

什么是编程语言?

可能重复:
什么是计算机编程语言?

不完全是.

我努力想出一个非常棒的定义.这是我到现在为止:

编程语言是一种包含语法的形式语言.语法规则用于形成语句.编程语言用于创建计算机可以理解的一组指令.语法语句的集合称为程序.

我知道它看起来不太好,所以在这方面得到一些帮助会很高兴.



这是维基百科关于该主题第一段:

编程语言是一种人工语言,旨在表达可由机器,尤其是计算机执行的计算.编程语言可用于创建控制机器行为,精确表达算法或作为人类交流模式的程序.

我认为这是生活中的一件事,每个人都知道它是什么,但它很难定义.

我一个人吗?你的意见?

programming-languages

32
推荐指数
2
解决办法
1940
查看次数

低,中,高级语言,有什么区别?

我之前听说过这些术语在描述语言之前,就像C不是一种低级语言,C++是中级语言,而Python是高级语言.我知道它必须对编译代码的方式以及代码的编写方式做些什么.但我想知道的是将语言定义为这3个类别中的一个?这些绝对类别,还是程序员用来相互描述语言的一般概念?

programming-languages

32
推荐指数
5
解决办法
9万
查看次数

如何制作自己的编程语言?

可能重复:
学习编写编译器

我环顾四周试图找到有关编程语言开发的更多信息,但在网上找不到很多东西.我找到了一些教程视频,但对于文本指南,常见问题解答,建议等并不多.我真的很好奇如何构建自己的编程语言.这让我想问:

如何制作自己的编程语言?

我想建立一个非常基本的语言.我不打算有一个非常好的语言,也不认为它会被任何人使用.我只是想用自己的语言来学习更多关于操作系统,编程的知识,并且在所有方面都变得更好.

一个人从哪里开始?构建语法?构建编译器?需要什么技能?很多装配和理解操作系统?大多数编译器和语言都内置了哪些语言?我假设C.

programming-languages

32
推荐指数
3
解决办法
3万
查看次数