调用(读取)函数时,Allegro CL冻结 [英] Allegro CL freezes when calling (read) function

查看:137
本文介绍了调用(读取)函数时,Allegro CL冻结的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

每当我在Allegro Common Lisp 9.0中调用(read)函数时,调试"窗口就会中断"(抱歉,我想不出更清晰的术语):鼠标变成旋转的蓝色死亡轮,并且该窗口拒绝评估任何新输入,尽管仍然可以键入. IDE的其他部分均不受影响.屏幕看起来像这样:

Whenever I called the (read) function in Allegro Common Lisp 9.0 the Debug window "breaks" (I can't think of a more articulate term, sorry): the mouse becomes the spinning blue wheel of death, and the window refuses to evaluate any new input, although it can still be typed into. No other parts of the IDE are affected. The screen looks like this:

International Allegro CL Free Express Edition
9.0 [Windows] (Jan 8, 2013 8:45)
Copyright (C) 1985-2012, Franz Inc., Oakland, CA, USA.  All Rights Reserved.

This development copy of Allegro CL is licensed to:
   Allegro CL 9.0 Express user

CG version 9.0 / IDE version 9.0
Loaded options from C:\Users\Noah Dove\Documents\allegro-prefs-9-0-express.cl.

;; Optimization settings: safety 1, space 1, speed 1, debug 2.
;; For a complete description of all compiler switches given the current
;; optimization settings evaluate (EXPLAIN-COMPILER-SETTINGS).

[changing package from "COMMON-LISP-USER" to "COMMON-GRAPHICS-USER"]
CG-USER(1): (read) ; <--- causes window to malfunction. 
                   ;  any further input is not evaluated.

窗口底部的状态文本粘贴在:

The status text at the bottom of the window is stuck on:

"reading and evaluating 'read'..."

知道发生了什么吗?我要做的只是基本的控制台io.

Any idea what's going on? All I'm trying to do is basic console io.

推荐答案

此问题似乎已通过补丁

This problem seems to be resolved by patch cg_cg-text-edit-pane_001:

Date posted: Mon Jan 28 09:26:04 PST 2013
Patch names: code/cg-text-edit-pane.001,
             update/pjk001.001,
             update/pjl002.001
Description: The code for doing lisp reading in text-edit-pane windows and
             widgets was out-of-date with the conversion of Common Graphics
             to the Unicode version of the Windows API.
             fresh-line erroneously printed a newline just after a blocking
             read.
             Lisp reading was broken in IDE listeners.
Impact:      recommended

下载并安装新补丁:

  • 选择菜单安装"->新补丁"
  • 点击列出新补丁"
    确保您看到了这些补丁
  • 让下载所有新的和更新的补丁"单选按钮保持选中状态
    我建议您这样做,以便获得所有当前的修复和改进
    或者,您可以:
    • 仅检查这些补丁
    • 选中仅下载所选补丁(上面已选中的补丁)"单选按钮
    • Select the menu "Install" -> "New Patches"
    • Click "List New Patches"
      Make sure you see these patches
    • Leave the "Download all new and updated patches" radio button checked
      I recommend this, so you get all current fixes and improvements
      Alternatively, you may:
      • Check only these patches
      • Check the "Download selected patches only (the ones checked above)" radio button

      出现一条消息,表明该过程尚未结束:

      A message appears saying that the process isn't over:

      • 关闭所有Allegro CL实例
      • 运行update.exe
        它将使用下载的修补程序重建官方映像
      • Close all Allegro CL instances
      • Run update.exe
        It will rebuild the official images with the downloaded patches

      现在,(read)在IDE侦听器中起作用.

      Now, (read) works in the IDE listeners.

      这篇关于调用(读取)函数时,Allegro CL冻结的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆