小编bac*_*dos的帖子

选择一种中间语言

我目前正在玩编程语言.我花了一些时间用高级语言编写解析器和解释器(最值得注意的是haXe).

我有一些结果,我认为实际上非常好,但现在我想让它们快速.

我的想法是将输入语言翻译成C.
我的C知识仅限于你在大学学到的知识.除了一些练习,我从未编写过实际的C程序.但我相信我能让它发挥作用.

当然,我可以尝试为LLVM编写前端或生成MSIL或JVM字节码.但我觉得现在学到的东西太多了,实际上并没有看到太大的收获.
C也完全是人类可读的,所以如果我搞砸了,理解其中的原因要容易得多.毕竟,C是高水平的.我可以真正地从输入语言中翻译概念,而不需要过多的思维弯曲.我应该在合理的时间内完成一些工作并运行,然后根据需要对其进行优化.

那么:使用C有什么缺点吗?你能推荐另一种选择吗?
感谢您的见解 :)


编辑:一些澄清

  • 我想要一直走下去的原因是,我正在编写一种支持OOP的语言,我想实际实现我的方法调度,因为我有一些非常具体的想法.
  • 主要的使用领域是编写HTTP服务,但我可以想象将绑定添加到GUI库(可能是wxWidgets)或其他什么.

c compiler-construction intermediate-code

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

用于处理未来事件的查找结构(基于时间)

我正在寻找一个有效的数据结构,这将允许我提示事件...也就是说,我将有一个应用程序,在任何时候执行,有可能,一个事件将被提出以便将来执行点...类似于:

  • t = 20:在420秒内,发生A.
  • t = 25:在13秒内,B发生
  • t = 27:在735秒内,C发生
  • ...

所以我想拥有一个数据结构,我可以在任何时间在任何时间放入任何时间,我可以获得和(通过这样做)删除所有应有的事件...另外,如果加上将是,如果我能够从数据结构中删除一个事件(因为它已被取消)...虽然不太重要,因为我可以简单地将其标记为已取消...

我的第一个想法是,也许要做某种树,但我想删除 - 因事件部分需要大量的再平衡......

我正在考虑简单地使用int哈希,将时间戳映射到null或在那个时间点发生的事件堆栈...我认为在场景中,有很多事件(可能每秒多次 - 这就是我打算工作),毕竟这实际上并不是一个坏主意......

所以我渴望听到你的意见...... :)


编辑:

  • 更具体一点:我认为这里约为100K-1M,我想我可能会有大约1-100个事件/秒......
  • t并不特别重要......它只是为了说明未来的事件可以随时"排队"......

谢谢

back2dos

language-agnostic performance advanced-queuing data-structures

4
推荐指数
1
解决办法
588
查看次数

我应该实施自己的CMS吗?

我需要创建一个基于CMS的自定义系统.在其中,我还需要做以下事情:

  • 每个人都有自己的用户名和密码,登录后会显示自己的个人页面.
  • 在这里,每个用户将显示八张图片,由管理员选择
  • 数据很敏感,因此安全性是一个大问题.
  • 它也将有一个新闻源,它将从管理门户网站检索新闻

现在,我从未编写过CMS系统.我也有时间限制.语言的选择是PHP,实现它的最佳方式是什么?

php content-management-system

4
推荐指数
2
解决办法
1279
查看次数

禁用iPad水平滚动

我有一个网站,其中包含视口之外的元素,我用它来制作动画,每次滚动到页面的不同部分时,它们基本上都会启动.

问题是你可以水平滚动,从而将网站的内容从视口中移出,并且可以访问不应该看到的元素(类似于{right:-660px;}的元素,这应该是远远不够的,直到它的应该进入视口{右:100px}或其他东西).

参考问题

已经尝试过了

<meta name="viewport" content="width=device-width; initial-scale = 1.0; maximum-scale=1.0; user-scalable=no" />
Run Code Online (Sandbox Code Playgroud)

body,html{overflow-x:hidden!important}
Run Code Online (Sandbox Code Playgroud)

我确信这是一个可能让许多人失眠的问题,就像我一样.

任何帮助将非常感激.

css css3 ipad media-queries responsive-design

4
推荐指数
1
解决办法
9100
查看次数

在RESTful html应用程序中放置表单/替代视图的位置?

让我们假设一个Web应用程序,每个URI为GET请求提供一个很好的html视图,并允许通过POST/PUT/PATCH/WHATEVER更新底层资源.

然后,我如何公开实际允许从浏览器执行此类请求的各种表单?更广泛的:假设我有相同资源的替代视图(可能还有HTML),我在哪里放这些?可以说,这些形式可以被视为替代观点,因此对更广泛的问题的答案将是理想的.


编辑:为了澄清,我的问题不是关于提供JSON或诸如此类的纯数据API,而是关于HTML应用程序,例如Stackoverflow.例如,您可以获得下面的问题集合,/questions以及/questions/24696982有意义的特定问题.要获得表单添加新问题,您将不得不使用/questions/ask,我不确定是否正常.那形成POST /questions/ask/submit,这似乎是完全错误的.向该URL发出GET请求会产生404(如果有的话,它应该是405).表单应该POST到/questions.我仍然想知道在RESTful系统中是否至少认为表单的URI是可接受的.

html forms rest

4
推荐指数
2
解决办法
862
查看次数

了解Actionscript中的OOP

A.as : 

    public class A {

    public function getFunction():Function { 
      return function():void {
        if(this is C) {
          trace("C");
        } else {
          trace("not C");
        }
     }
  }


public function func1():void {
   var internalFunc:Function = getFunction();
   internalFunc();
 }

}

B.as : 
public class B extends A implements C {

}
Run Code Online (Sandbox Code Playgroud)

在其他一些课程中:

var b:B = new B();
   B.func1();
Run Code Online (Sandbox Code Playgroud)

输出为:"不是C"

我期待跟踪输出为
"C"

有人可以解释原因吗?

apache-flex oop actionscript actionscript-3

3
推荐指数
1
解决办法
160
查看次数

从SQL hasmany关系构造嵌套对象图

示例:我有一些articles,comments我希望得到这样的东西:

[{
   title: "Article 1",
   content: "Super long article goes here",
   comments: [
      { author: "Troll", message: "You suck, Sir!" }, 
      { author: "SpamBot", message: "http://superawesomething.com/"}
   ]
},{
   title: "Article 2",
   content: "Another long article goes here",
   comments: [ ... ]
}]
Run Code Online (Sandbox Code Playgroud)

现在我看到两个解决方案:

  1. 首先获取文章,然后在具有某些IN条件的第二个查询中获取注释,最后将注释添加到相应的文章中.
  2. 好老连接.对于其中一个,我仍然需要调整大量数据才能进入我想要的结构.但除此之外,我有点担心,因为有效载荷articles.content将被传输给每个评论 - 除非有一种方法可以进行连接我不知道.

我希望我的SQL文盲能让我错过这个简单的解决方案.

mysql sql postgresql

3
推荐指数
1
解决办法
867
查看次数

Flash Actionscript 3不接受编译时常量

问题:我遇到了一个恼人的错误:我尝试在下面的actionscript代码中使用类型Size.但我总是得到这个错误:
1046:找不到类型或不是编译时常量:大小.
但无论我尝试什么,它似乎打破我添加
公共函数get size():大小
不知何故它不喜欢返回类型大小,但我做错了什么?

package BaseTypes
{
    public class StockData 
    {
        private var size:Size;
        public function get Size():Size
        {
            return this.size;
        }
        public function set Size(value:Size):void
        {
            this.size = value;
        }
    } // End Class
}// End Package
Run Code Online (Sandbox Code Playgroud)

我在文件夹BaseTypes中有波纹管代码,它在AS3类路径中.

package BaseTypes
{
    public class Size  
    {
        private var width:Number;
        private var height:Number;
        public function Size(width:Number, height:Number)
        {
            this.width = width;
            this.height = height;
        }
        public function get Width():Number
        {
            return this.width;
        }
        public function set Width(value:Number):void
        {
            this.width …
Run Code Online (Sandbox Code Playgroud)

flash actionscript-3

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

Trace()方法在FlashDevelop中不起作用

当我追踪("测试"); 在我的flashdevelop项目的入口点并运行它.应用程序运行正常,但我没有在输出中看到跟踪.以下是我的代码

package 
{
    import flash.display.Sprite;
    import flash.events.Event;

    /**
     * ...
     * @author Anthony Gordon
     */
    public class Main extends Sprite 
    {

        public function Main():void 
        {
            if (stage) init();
            else addEventListener(Event.ADDED_TO_STAGE, init);
        }

        private function init(e:Event = null):void 
        {
            trace("test");
            removeEventListener(Event.ADDED_TO_STAGE, init);
            // entry point
            var game:Game = new Game(stage);
            addChild(game);
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

flashdevelop actionscript-3

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

为什么我的动作循环?

我是整个动作脚本/ Flash世界的新手......但是试着自学足以完成某些事情.

我确定答案很简单......但我有一个.as文件,其中包含以下代码:

package
{
    import flash.external.ExternalInterface;

    public class Sender
    {
        public function Sender()
        {
            ExternalInterface.call("func1()");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我有一个fla使用以下代码(我没有碰过其他内容):

import Sender;

var mySender:Sender = new Sender();
Run Code Online (Sandbox Code Playgroud)

现在发布后,我对html文件进行了一些调整(包含在下面)....我的Javascript被调用(是的!).不幸的是,在解除警报后,它再次被召唤......再次.......再次.我不知道为什么(我已经确认我的flash电影没有设置为循环,但这就是我所拥有的).任何帮助将不胜感激!

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
    <head>
        <title>sender</title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <style type="text/css" media="screen">
        html, body { height:100%; background-color: #ffffff;}
        body { margin:0; padding:0; overflow:hidden; }
        #flashContent { width:100%; height:100%; }
        </style>

        <script>
            function func1()
            {
                alert('hello external stuff');
            }
        </script>
    </head>
    <body>
        <div …
Run Code Online (Sandbox Code Playgroud)

actionscript-3 flash-cs5

1
推荐指数
1
解决办法
2561
查看次数