我在Haskell中使用ReadP为文件中的数字列表做了一个非常简单的解析器.它工作,但它很慢......这种类型的解析器的这种正常行为还是我做错了什么?
import Text.ParserCombinators.ReadP
import qualified Data.IntSet as IntSet
import Data.Char
setsReader :: ReadP [ IntSet.IntSet ]
setsReader =
setReader `sepBy` ( char '\n' )
innocentWhitespace :: ReadP ()
innocentWhitespace =
skipMany $ (char ' ') <++ (char '\t' )
setReader :: ReadP IntSet.IntSet
setReader = do
innocentWhitespace
int_list <- integerReader `sepBy1` innocentWhitespace
innocentWhitespace
return $ IntSet.fromList int_list
integerReader :: ReadP Int
integerReader = do
digits <- many1 $ satisfy isDigit
return $ read digits
readClusters:: String -> IO [ IntSet.IntSet …Run Code Online (Sandbox Code Playgroud) 你能否提供一下如何在tomcat 6中使用sqlite?我正在使用Xerial sqlite jdbc驱动程序.在我的应用程序中,我有多个sqlite数据库(.db文件),需要连接到不同的sqlite数据库,具体取决于用户登录的内容?我在哪里可以将所有.db文件放在webapp根目录中,或者放在系统上的任何位置,还是放在WEB-INF中?
谢谢,
深
我需要在PHP中创建函数,让我在给定的日期时间单位上升/下移.具体来说,我需要能够从当前月份进入下一个/上个月.
我想我可以使用DateTime :: add/sub(P1M)来做到这一点.然而,当试图获得前一个月时,如果日期值= 31-看起来它实际上试图倒数30天而不是递减月值,则会变得混乱!:
$prevMonth = new DateTime('2010-12-31');
Run Code Online (Sandbox Code Playgroud)
尝试减少月份:
$prevMonth->sub(new DateInterval('P1M')); // = '2010-12-01'
$prevMonth->add(DateInterval::createFromDateString('-1 month')); // = '2010-12-01'
$prevMonth->sub(DateInterval::createFromDateString('+1 month')); // = '2010-12-01'
$prevMonth->add(DateInterval::createFromDateString('previous month')); // = '2010-12-01'
Run Code Online (Sandbox Code Playgroud)
这肯定是错误的行为.有人有任何见解吗?谢谢-
注意: PHP版本5.3.3
怎么可能让我的实际文件滚动,然后在一些事件后设置它?我想知道我的页面如何滚动,并在一些事件回到这个位置后.thnk
我为ListView添加了一个标题视图,它运行得很好,我现在遇到的问题是当我点击标题时我需要删除默认的点击/焦点效果.
除此之外,当它们被"禁用"选项时,是否也可以删除某些项目的点击/聚焦效果?
在我的编程项目中,我想使用flex/bison来解析命令行属性.我的程序被调用如下:
./prog -a "(1, 2, 3)(4, 5)(6, 7, 8)" filename
Run Code Online (Sandbox Code Playgroud)
是否可以使用flex/bison解析此字符串而无需将其写入文件并解析该文件?
是否可以使用一个抽象属性来返回派生类中定义的类型:
abstract class baseClass
{
public abstract e_Type type { get; }
}
class derived : baseClass
{
public enum e_Type
{
type1,
type2
}
private e_Type _type;
public e_Type type { get { return _type; } }
}
Run Code Online (Sandbox Code Playgroud)
或者我必须返回一个int并将其映射到派生类中.欢迎任何其他建议.
下面的snipets来自我的Form1代码.因为我的MessageBox.Show(...),我一直得到格式异常; 我的Stop()方法中的声明.为什么?我究竟做错了什么?...
private TimeSpan iterationDuration = TimeSpan.Zero;
...
public void Stop()
{
IsGameOver = true;
MessageBox.Show(String.Format("Game Over\n\nScore = {0}\n\n Time Duration = {l}", score, iterationDuration));
Application.Exit();
}
public void Start()
{
score = 0;
IsGameOver = false;
currentRedLightX = 0;
currentRedLightY = 0;
currentGreenLightX = width / 2;
currentGreenLightY = height / 2;
double minIterationDuration = SPEED; // 50 frames / sec
//game loop
while (!IsGameOver)
{
if (IsCollision())
{
score += 10;
}
DateTime startIterationTime = System.DateTime.Now;
UpdateGameState();
Render(); …Run Code Online (Sandbox Code Playgroud) 在我的iPhone应用程序中,我需要识别用户在视图上进行的滑动手势.
我希望识别滑动手势并在滑动时执行功能.
我需要视图应该水平滑动并在用户进行滑动手势时显示另一个视图.
需要做什么?
我怎么认出来的?
我可以在heroku上部署我的基本sinatra应用程序,但运行它会出现"APP CRASHES"错误
anmol @ anmol-laptop:heroku $ heroku logs /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require': no such file to load -- sinatra (LoadError)
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in要求来自/ usr/ruby1的./main.rb:2. 8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:在gem_original_require'
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in/usr/ruby1.8.7/lib/ruby/中从/home/heroku_rack/heroku.ru:23获取'来自config.ru:1' gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in instance_eval'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:ininitialize'from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib /rack/builder.rb:46:in new'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:46:inmap/from /home/heroku_rack/heroku.ru:18 from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack /builder.rb:29:in instance_eval'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in从/usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib 初始化'from /home/heroku_rack/heroku.ru:11:in new'
from /home/heroku_rack/heroku.ru:11
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:ininstance_eval' /rack/builder.rb:29:ininitialize'
from /home/heroku_rack/heroku.ru:1:in新来自/home/heroku_rack/heroku.ru:1
==> dyno-3277552.log(崩溃)<== /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require': no such file to load -- sinatra (LoadError)
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:inrequire'from ./main.rb:2 from/usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31: gem_original_require'
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in …