- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在构建一个可视化编程工具,想知道您是否可以建议一个库,或者甚至向我提供一个关于我可以自己构建的工具的想法,该工具可以将伪代码转换为 PHP、JAVA 等具体语言。例如,对于这样的伪代码:
do i = 1 to 100
print "Hello World !!!";
newline;
end do
我想要得到类似的东西:
在PHP中:
for ($i = 1; $x <= 100; $x++) {
echo "Hello World !!!";
echo PHP_EOL;
}
在Java中:
for(int i = 1; x <= 100; x++) {
System.out.print("Hello World !!!");
System.out.print("\n");
}
我不只是想要一个从 PHP 到 Java 的转换器,反之亦然。我想我的问题是:在指定一些基本的语言结构规则并编写伪代码之后,我是否能够生成各种语言的代码?我想打破伪代码和具体语言代码之间的差距,这样我就不需要手动翻译代码。另外,通过用伪代码编写一次算法,我可以用我想要的任何语言生成代码。
感谢您的反馈!
编辑:好的,所以不是“伪”代码,定义一种可以作为中间体的语言。有人有一个可供我研究的建议库吗?
最佳答案
伪代码的要点在于它没有明确的语法,也没有明确的语义。这是人类与其他人交流算法的一种方式,避免读者和作者担心这些细节。
这意味着不可能自动翻译。相反,您需要一个人来理解伪代码的含义,然后编写具有相同效果的具体编程语言的代码。
<小时/>另一种看待这个问题的方法是,如果“伪代码”定义了语法和语义,那么它就不是“伪代码”。这将是真实代码。
当然,没有什么可以阻止您定义这种性质的语言......但是您需要为您的伪伪代码实现编译器和/或翻译器(: -) )。
<小时/>OK, so not "pseudo" code then, defining a language that will work as a intermediate ...
您可以使用多种工具来帮助您构建源代码到源代码转换器。搜索“解析器生成器”和“模板引擎”。
关于java - 译者: pseudo-code to a concrete language (PHP, JAVA)库建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18479533/
我已经为我的项目配置了 tailwindcss,但是在 npm run start 之后我得到了以下错误。 (node:7032) UnhandledPromiseRejectionWarning:错
我使用 create-react-app 创建了一个应用程序并且在尝试构建生产优化版本时遇到错误 yarn build : > yarn build help yarn run v1.9.4 $ re
我正在寻找一种将 :content 伪元素添加到空元素的方法,并遇到了 :empty CSS 伪选择器,它看起来像会达到我正在寻找的目的。基本上,我想添加一个通用消息,如“Nothing found”
Font Awesome 未提供 :after伪。是否可以使用 :after默认情况下而不是 :before伪? 例如,如果我使用:facebook那么图标应该使用:after而不是 :before
我想在禁用时更改切换按钮的颜色。我使用 :before fetaure of css 实现了这个切换。代码位于 https://jsfiddle.net/sachin8085/adm5t7rz/6/
我最近在 Firefox 中发现了一个警告 Warning: Unknown pseudo-class or pseudo-element 'hidden' 这是页面 http://eleven23.
我有一个多项式 data Poly a = Poly [a] 我希望能够做类似 fmap (take 3) polynomial 的事情但我不能,因为 Poly不是真正的仿函数,因为 f我在 fmap
我想将某种样式应用到一个元素的所有后代,除了一些。 这是我正在尝试实现的示例:http://jsfiddle.net/f8FLe/ .root * :not(.nested) { color:
我正在学习 Haskell 中的代数 DT。我想做的是创建一个新的 ADT 来“扩展”现有的 ADT。我找不到如何表达我想要的东西,有人可以建议替代模式或建议解决方案。我希望它们是不同的类型,但复制和
我现在正在通过将所有内容包含在一个函数中,将全局变量变成“伪全局变量”,从而从我的代码中删除大部分全局变量,这些全局变量都可以从该函数 block 内的任何地方访问。 (function(){ var
我正在尝试创建动画时间轴。当时间轴出现时,我正在使用滚动显示来触发动画。每个时间线条目都有一个左边框和一个伪元素 :before 与之关联。 :before 元素是一个标记每个时间线条目开始的点。当动
我的大脑并没有完全围绕这个:我正在使用我的 h1 上的 :before 和 :after 伪元素>。我的 h1 有一个 100% 宽度。 我希望 :after 是一个重复的背景图形,填充空白,后置文本
是否可以在 :before 伪类的内容中添加类或 ID?我知道这行不通,但是类似: #menu { height: 100px; width: 100px; } #menu:befor
假设我有一个带有下划线的跨度: Hello, I'm underlined text .underline { color: #444; font-size: 250%; display:
这个问题在这里已经有了答案: CSS selector with period in ID (3 个答案) 关闭 6 年前。
我正在尝试将 :after 伪元素移动到 div 的末尾,有点像页脚。 Some content here .box { height: 60vh; } .box:after {
在您指定内容之后,:AFTER 和:BEFORE 伪元素的默认display: 属性是什么。 是display: inline还是display: inline-block? 无法在 default
我遇到这样一种情况,我有两个元素在 DOM(邻居)中处于同一级别。当我悬停在 DOM 中之前的元素时,我希望显示它下面的元素。我还想访问我正在显示的元素的子元素并显示其 :before 伪元素。 SC
我有一个样式规则: .tabs li { border: 1px solid transparent; } .tabs li:not(:last-child):not(:nth-child(2
我有两个相同的 CSS 规则,但一个没有覆盖另一个。 我使用了 right 而不是 left 规则,但它不会覆盖 left 规则。另一方面 top 规则正在覆盖。我也使用了 !important 规则
我是一名优秀的程序员,十分优秀!