小编Sam*_*ell的帖子

你如何更快地使Python/PostgreSQL?

现在我有一个日志解析器读取515mb的纯文本文件(过去4年中每天的文件).我的代码目前如下:http://gist.github.com/12978.我已经使用了psyco(如代码中所示),我也正在编译它并使用编译版本.它每0.3秒做约100行.该机是标准的15"MacBook Pro(2.4ghz C2D,2GB RAM)

是否有可能更快或者是对语言/数据库的限制?

python postgresql

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

这是什么样的排序?

假设我有一个整数列表,其中每个元素都是1到20之间的数字.(这不是我想要排序的.)

现在,我有一个"操作"数组,其中每个操作:

  • 从列表中删除某些(已知)数字
  • 在列表中添加某些其他(已知)数字
  • 无法处理的列表,如果它包含在操作开始时一定(已知)的数字-调用这些预防

编辑:每个操作的每个添加,删除阻止中都可以有零个或多个数字,并且每个组的每个数字在某些操作中可以出现零次或多次.对于任何给定的操作,再添移除了是不相交的,预防移除了不相交,但再添防止可能重叠.

我想对操作数组进行排序,以便每个操作:

  • 如果操作具有" 预防"项,则会在删除这些编号的操作之后放置该项.如果不是紧接着,则不能有Adds操作在最后的RemovesPrevent之间添加这些数字.
  • 如果操作删除项目,则添加任何这些项目的所有操作都放在其前面.

如果存在循环依赖关系,则操作链应删除尽可能多的数字,通知我它无法删除所有数字.

这种算法的名称/实现是否优于我下面的算法?

添加8/23:赏金用于考虑OpCodes(结构集)和InstructionSemantics(枚举中的位标志集)的排序要求.

在8月23日晚些时候添加:我通过启发式预先对源数组进行排序,使性能提高了89:1.有关详情,请参阅我当前的答案

namespace Pimp.Vmx.Compiler.Transforms
{
    using System;
    using System.Collections.Generic;
    using System.Reflection.Emit;

    internal interface ITransform
    {
        IEnumerable<OpCode> RemovedOpCodes { get; }
        IEnumerable<OpCode> InsertedOpCodes { …
Run Code Online (Sandbox Code Playgroud)

language-agnostic sorting algorithm

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

LINQ多对多关系:解决方案?

LINQ到目前为止一直非常优雅,但是为了执行基本的m2m查询,它提供了我无法立即看到的解决方案.

更糟糕的是,虽然它适用于任何其他表关系,但LINQ并没有给我一个关于我的m2m表的类结构的关联.

所以我可以做的事情

artwork.artists.where(...)
//or
artist.Artworks.add(artwork)
Run Code Online (Sandbox Code Playgroud)

但我不能这样做

artwork.artowrks_subjects.tagSubjects.where(...)
//or
tagSubject.artworks_subjects.add(artwork)
Run Code Online (Sandbox Code Playgroud)

替代文字http://img299.imageshack.us/img299/257/20090902122107.png

是否有解决此限制的常见模式?

c# linq many-to-many linq-to-sql

6
推荐指数
2
解决办法
3590
查看次数

为什么java在已经拥有Object时会有Type?

我希望有人可以告诉我为什么java有java.lang.reflect.Type,当一切都已经继承Object

有人可以举个例子说明我需要使用a Type而不是a Object吗?

java types object

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

在ANTLR中使用转义的引号捕获字符串文字

我对如何在ANTLR4中捕获带引号的字符串感到有点困惑.

目前,这个词法分析器规则并没有像我期望的那样标记.

示例字符串是"=\"".我已经尝试了很多不同的方法来捕捉这个,但我对我正在做的不正确感到茫然.我非常感谢对此最佳实践的一些见解.非常感谢!

ESCAPED_QUOTE : '\"';
QUOTED_STRING :   '"' ( ESCAPED_QUOTE | ~('\n'|'\r') )*? '"';
Run Code Online (Sandbox Code Playgroud)

parsing antlr lexer

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

如何在ANTLR4中实现错误处理

我有以下语法来解析应用于图形的一阶逻辑公式:

grammar Graph;


/*------------------------------------------------------------------
* PARSER RULES
*------------------------------------------------------------------*/

input
: 
formula EOF
;

formula
:
TRUE 
| FALSE 
| formula AND formula
| formula OR formula
| quantifier formula
| ST condition
;


condition
:
atom EQUALS QUOTE? (assignment | atom) QUOTE?
;

quantifier 
:
(FOREACH | EXISTS) variable IN domain
;

domain
:
(GRAPH_A | GRAPH_B)
;

atom
:
variable DOT property
;


variable
:   
(nodev | edgev)
;


nodev
:
(NODE | NODE1)
;

edgev
:
(EDGE | …
Run Code Online (Sandbox Code Playgroud)

java error-handling antlr4

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

我应该在 Visual Studio 2010+ 扩展中使用什么 Dispatcher 进行 UI 操作

目前我知道以下Dispatcher对象。

  • 如果您有文本视图,则可以使用IWpfTextView.VisualElement.Dispatcher.

  • 如果您的类是由 MEF 构造的(用[Export]您自己的代码标记而不是直接从您自己的代码构造),那么您可以使用 MEF 部分解析算法和构造发生在 UI 线程上的事实,允许使用Dispatcher.CurrentDispatcher. 例如:

    [Export(typeof(ISomeInterface))]
    public class MyClass : ISomeInterface {
      private readonly Dispatcher _dispatcher;
    
      public MyClass() {
        _dispatcher = Dispatcher.CurrentDispatcher.
      }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  • 您可以Application.Current.Dispatcher从任何代码使用。

如果有的话,获得一个的推荐做法是Dispatcher什么?

dispatcher vsix

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

生成多项式评估的方法

我试图想出一种优雅的方法来处理一些生成的多项式.以下是我们将(专门)关注此问题的情况:

  1. order是生成n阶多项式的参数,其中n:= order + 1.
  2. i是0..n范围内的整数参数
  3. 多项式在x_j处有零,其中j = 1..n且j≠i(此时应该清楚StackOverflow需要一个新特性或它存在且我不知道它)
  4. 多项式在x_i处求值为1.

由于此特定代码示例生成x_1 .. x_n,我将解释它们是如何在代码中找到的.这些点均匀分布x_j = j * elementSize / order,在哪里n = order + 1.

我生成一个Func<double, double>来评估这个多项式¹.

private static Func<double, double> GeneratePsi(double elementSize, int order, int i)
{
    if (order < 1)
        throw new ArgumentOutOfRangeException("order", "order must be greater than 0.");

    if (i < 0)
        throw new ArgumentOutOfRangeException("i", "i cannot be less than zero.");
    if (i > order)
        throw new ArgumentException("i", "i …
Run Code Online (Sandbox Code Playgroud)

c# linq math algebra expression-trees

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

Xtext - 内容提案匹配上下文缩进

使用 XText,是否有一种方法可以添加带有内容建议的文本,以匹配插入位置的格式(当前缩进)?

我现在应该做什么:

1)创建一个用于内容提案的模型

2)我通过以下方式获取内容提案字符串:

EObject myelement是可以插入到我的 Xtext 文档中的生成代码。

class MyContentProposalProvider extends AbstractContentProposalProvider
{

 private void acceptProposal(
   ContentAssistContext context,
   ICompletionProposalAcceptor acceptor,
   ElementContentProposal contentProposal,
   EObject myElement) {
        final String proposalString = context.getResource().getSerializer().serialize(myElement);
        final String proposalDisplayCode = proposalString.replaceAll("(\\r|\\n)", "");
        final ICompletionProposal completionProposal = createCompletionProposal(proposalString,
                    String.format("%s : %s", proposalDisplayCode, p.getDescription()), null,
                    context);
        acceptor.accept(completionProposal);
  }
}
Run Code Online (Sandbox Code Playgroud)

3) 在 Xtext 编辑器中选择一个提案。

4)压痕太远了。一切都向左走。

5)到目前为止,我认为解决这个问题的唯一方法是在提案后格式化整个文档;然而,这可能会产生不需要的副作用。

有什么方法可以保持上面生成的提案字符串的缩进与提案的上下文一致?(这意味着,保留首选项中的缩进设置,例如空格而不是制表符)。

java eclipse xtext

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

如何在ANTLR4中获取IParseTree?

我目前在C#中使用ANTLR4,但我遇到了一个问题,我不知道如何获取对象/类IParseTree.

我在C#中找到了这里的完全限定名称Antlr4.Runtime.Tree.IParseTree但是如何获取对象?

AntlrInputStream inputStream = new AntlrInputStream(sSpinTexte);
SpinParserLexer SpinLexer = new SpinParserLexer(inputStream);
CommonTokenStream commonTokenStream = new CommonTokenStream(SpinLexer);
SpinParserParser SpinParser = new SpinParserParser(commonTokenStream);
IParseTree tree = ?????
Run Code Online (Sandbox Code Playgroud)

你能帮忙吗?

c# antlr parse-tree antlr4

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