标签: visualworks

在Smalltalk中解析RDF

在任何Smalltalk风格中,是否有任何示例显示如何解析RDF文件?我见过的唯一的包是Rikaiko与RDFXMLReader类,但没有引用,它似乎很undocummented.

rdf smalltalk visualworks squeak pharo

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

从Smalltalk代码生成UML类图

目前,我正在使用基于Smalltalk的应用程序服务器,使用Visual Works.我正在寻找一种从代码生成UML类图的方法.我已经查找了许多工具,但似乎没有任何工作或有用.

uml smalltalk visualworks

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

是否可以将[和]保留为以下消息:ifAbsent:如果您不需要完整的块?

在Smalltalk(特别是Pharo/Squeak)中,我想知道是否可以省略"["和"]"作为消息的参数,如:ifAbsent:如果你不需要一个块,就像这样;

^ bookTitles at: bookID ifAbsent: ''.
Run Code Online (Sandbox Code Playgroud)

^ books at: bookID ifAbsent: nil.
Run Code Online (Sandbox Code Playgroud)

代码有效,因为(在Pharo/Squeak中)对象>>值只返回self.但我想知道这种用法是如何接受的,或者你是否应该总是键入[和],即使你不关心参数是否被快速评估或多次评估.

smalltalk visualworks squeak pharo gemstone

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

在Smalltalk实现中测试Unicode支持的正确方法是什么?

鉴于任何Smalltalk风格,我应该如何检查是否支持Unicode?如果没有支持,我如何检测缺少哪个级别(VM,字体,转换器等)?

unicode smalltalk visualworks pharo gnu-smalltalk

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

在Smalltalk Unit测试用例中,assert失败了

我很难过.这是我的测试用例.

theTestArray := #(1.2 3 5.1 7).
self assert: theTestArray  squareOfAllElements = #(1.44 9 26.01 49).
Run Code Online (Sandbox Code Playgroud)

断言不应该失败.在计算每个元素的平方是正确的.所以我做了"步入测试",表明方法squareOfAllElements和#(1.44 9 26.01 49)的结果都是相同的但是assert的计算结果为false.为什么?我在这做错了什么?任何帮助表示赞赏.

floating-point assert smalltalk visualworks

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

如何在Smalltalk中读取和处理CSV文件的内容

我试图在smalltalk(visualworks)中读取和处理csv文件的内容,但我似乎很难将字符串拆分成数组.以下是我能够开始工作的代码.我缺少的是将myLine变量的内容(一个以逗号分隔的字符串)拆分为字符串数组的片段,以添加到TwoDList中.请帮助您提供有关如何处理此问题的任何信息.谢谢

SpreadsheetReadCSV:  inFilename
    |inStream myLine rcnt|  
      rcnt := 0.
       " scan thru the text lines, using a traditional i/o loop "
       inStream :=  (inFilename asFilename) readStream  .
       [ inStream atEnd ] whileFalse: [
             rcnt := rcnt + 1. 
            myLine := inStream upTo: Character cr.
                "Process the commadelimited string here"
       ].
      inStream inspect. 
      inStream close.
   ^myLine.
Run Code Online (Sandbox Code Playgroud)

smalltalk visualworks

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

如何将图片(图像)加载到smalltalk中

如何将图片加载到smalltalk 中?我找到了几个如何在图像成为类资源后显示图像的示例,但找不到将图片导入我的smalltalk环境的方法。(我使用图片一词以避免与smalltalk图像混淆)

graphics smalltalk image visualworks

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

有一个小的"toString"等价吗?

例如,假设我正在添加一组我创建的对象myClass(称为包含字符串)myList,然后我希望使用该列表并将其传递给GUI列表.有没有办法只使用该字符串的值填充该GUI列表myClass

smalltalk visualworks

5
推荐指数
2
解决办法
1753
查看次数

具有双屏幕的Pharo/Squeak环境

我只是想知道是否有办法在Pharo或Squeak中使用多个屏幕.我只是从VisualWorks切换到Pharo,我真的错过了这个功能.我习惯将我的工作区/成绩单放在另一个和我的浏览器上.

谢谢,亨里克

smalltalk visualworks squeak pharo

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

Smalltalk中子字符串的索引

似乎Smalltalk实现错过了一个算法,该算法返回String中子字符串的所有索引.最相似的只返回一个元素的索引,例如:firstIndexesOf:in:,findSubstring:,findAnySubstring:variants.

Ruby中实现,但第一个依赖于Ruby hack,第二个不能忽略重叠的字符串,最后一个使用Enumerator类,我不知道如何转换为Smalltalk.我想知道这个Python实现是否是最好的开始路径,因为考虑两种情况,重叠或不重叠,并且不使用正则表达式.

我的目标是找到一个提供以下行为的包或方法:

'ABDCDEFBDAC' indicesOf: 'BD'. "#(2 8)"
Run Code Online (Sandbox Code Playgroud)

考虑重叠时:

'nnnn' indicesOf: 'nn' overlapping: true. "#(0 2)"
Run Code Online (Sandbox Code Playgroud)

不考虑重叠时:

'nnnn' indicesOf 'nn' overlapping: false. "#(0 1 2)"
Run Code Online (Sandbox Code Playgroud)

在Pharo中,当在Playground中选择文本时,扫描程序会检测子字符串并突出显示匹配项.但是我找不到这个的String实现.

到目前为止,我的最大努力导致了String(Pharo 6)中的这种实现:

indicesOfSubstring: subString
  | indices i |

  indices := OrderedCollection new: self size.
  i := 0.
  [ (i := self findString: subString startingAt: i + 1) > 0 ] whileTrue: [
    indices addLast: i ].
  ^ indices
Run Code Online (Sandbox Code Playgroud)

string smalltalk visualworks pharo dolphin-smalltalk

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