The Sifflet visual functional programming language and aid to understanding recursive functions (http://mypage.iu.edu/~gdweber/software/sifflet/home.html)

#57Crash when moving a node

We were moving a node, and suddenly the entire window disappeared.

[rysbell@merlin ~]$ sifflet & [1] 28276 [rysbell@merlin ~]$ (sifflet:28276): Gtk-WARNING **: Attempt to load unknown IM context type '001'

(sifflet:28276): Gtk-WARNING **: Attempt to load unknown IM context type '001'

(sifflet:28276): Gtk-WARNING **: Attempt to load unknown IM context type '001'

(sifflet:28276): Gtk-WARNING **: Attempt to load unknown IM context type '001'

(sifflet:28276): Gtk-WARNING **: Attempt to load unknown IM context type '001'

(sifflet:28276): Gtk-WARNING **: Attempt to load unknown IM context type '001'

decideTypes.expr: Succ (ELambda (Symbol "pie") (ELambda (Symbol "cake") (ELambda (Symbol "iceCream") (ECall (Symbol "*") [ENumber 7.0e-2,ECall (Symbol "+") [ECall (Symbol "+") [ECall (Symbol "") [ENumber 1.25,ESymbol (Symbol "pie")],ECall (Symbol "") [ENumber 2.5,ESymbol (Symbol "cake")]],ECall (Symbol "*") [ENumber 0.8,ESymbol (Symbol "iceCream")]]]))))

decideTypes.t: Succ (Num -> (Num -> (Num -> Num)))

decideTypes.res: Succ ([Num,Num,Num],Num)

decideTypes: (["pie","cake","iceCream"],ECall (Symbol "*") [ENumber 7.0e-2,ECall (Symbol "+") [ECall (Symbol "+") [ECall (Symbol "") [ENumber 1.25,ESymbol (Symbol "pie")],ECall (Symbol "") [ENumber 2.5,ESymbol (Symbol "cake")]],ECall (Symbol "*") [ENumber 0.8,ESymbol (Symbol "iceCream")]]]) ::
Succ ([Num,Num,Num],Num)

(sifflet:28276): Gtk-WARNING **: Attempt to load unknown IM context type '001'

(sifflet:28276): Gtk-WARNING **: Attempt to load unknown IM context type '001'

(sifflet:28276): Gtk-WARNING **: Attempt to load unknown IM context type '001'

(sifflet:28276): Gtk-WARNING **: Attempt to load unknown IM context type '001' sifflet: nodeContainerFrameNode: node 6 has multiple parents in graph

1:WFrame 1->[(WEdge 10,11),(WEdge 4,5),(WEdge 9,6),(WEdge 9,10),(WEdge 8,9),(WEdge 7,8),(WEdge 6,7),(WEdge 5,6),(WEdge 3,4),(WEdge 1,2),(WEdge 2,3)]

2:WSimple (LayoutNode (GNode ENode (NSymbol (Symbol "limit")) EvalUntried [TextBox {tbText = "limit", tbTextBB = BBox 79.5 267.5 27.0 21.0, tbBoxBB = BBox 71.5 244.5 43.0 37.0}] BBox 71.5 244.5 43.0 37.0 [] [Iolet (Circle {circleCenter = Position {posX = 93.0, posY = 244.5}, circleRadius = 5.0})]) BBox 61.5 234.5 63.0 57.0)->[]

3:WSimple (LayoutNode (GNode ENode (NSymbol (Symbol "speed")) EvalUntried [TextBox {tbText = "speed", tbTextBB = BBox 23.5 267.5 31.0 21.0, tbBoxBB = BBox 15.5 244.5 47.0 37.0}] BBox 15.5 244.5 47.0 37.0 [] [Iolet (Circle {circleCenter = Position {posX = 39.0, posY = 244.5}, circleRadius = 5.0})]) BBox 5.5 234.5 67.0 57.0)->[]

4:WSimple (LayoutNode (GNode ENode (NSymbol (Symbol "<")) EvalUntried [TextBox {tbText = "<", tbTextBB = BBox 63.0 191.5 8.0 21.0, tbBoxBB = BBox 55.0 168.5 24.0 37.0}] BBox 55.0 168.5 24.0 37.0 [Iolet (Circle {circleCenter = Position {posX = 62.0, posY = 205.5}, circleRadius = 5.0}),Iolet (Circle {circleCenter = Position {posX = 72.0, posY = 205.5}, circleRadius = 5.0})] [Iolet (Circle {circleCenter = Position {posX = 67.0, posY = 168.5}, circleRadius = 5.0})]) BBox 45.0 158.5 44.0 57.0)->[]

5:WSimple (LayoutNode (GNode ENode (NSymbol (Symbol "if")) EvalUntried [TextBox {tbText = "if", tbTextBB = BBox 147.5 105.5 9.0 21.0, tbBoxBB = BBox 139.5 82.5 25.0 37.0}] BBox 139.5 82.5 25.0 37.0 [Iolet (Circle {circleCenter = Position {posX = 142.0, posY = 119.5}, circleRadius = 5.0}),Iolet (Circle {circleCenter = Position {posX = 152.0, posY = 119.5}, circleRadius = 5.0}),Iolet (Circle {circleCenter = Position {posX = 162.0, posY = 119.5}, circleRadius = 5.0})] [Iolet (Circle {circleCenter = Position {posX = 152.0, posY = 82.5}, circleRadius = 5.0})]) BBox 129.5 72.5 45.0 57.0)->[]

6:WSimple (LayoutNode (GNode ENode (NNumber 0) EvalUntried [TextBox {tbText = "0", tbTextBB = BBox 147.5 183.5 7.0 21.0, tbBoxBB = BBox 139.5 160.5 23.0 37.0}] BBox 139.5 160.5 23.0 37.0 [] [Iolet (Circle {circleCenter = Position {posX = 151.0, posY = 160.5}, circleRadius = 5.0})]) BBox 129.5 150.5 43.0 57.0)->[]

7:WSimple (LayoutNode (GNode ENode (NSymbol (Symbol "speed")) EvalUntried [TextBox {tbText = "speed", tbTextBB = BBox 225.5 271.5 31.0 21.0, tbBoxBB = BBox 217.5 248.5 47.0 37.0}] BBox 217.5 248.5 47.0 37.0 [] [Iolet (Circle {circleCenter = Position {posX = 241.0, posY = 248.5}, circleRadius = 5.0})]) BBox 207.5 238.5 67.0 57.0)->[]

8:WSimple (LayoutNode (GNode ENode (NSymbol (Symbol "limit")) EvalUntried [TextBox {tbText = "limit", tbTextBB = BBox 276.5 271.5 27.0 21.0, tbBoxBB = BBox 268.5 248.5 43.0 37.0}] BBox 268.5 248.5 43.0 37.0 [] [Iolet (Circle {circleCenter = Position {posX = 290.0, posY = 248.5}, circleRadius = 5.0})]) BBox 258.5 238.5 63.0 57.0)->[]

9:WSimple (LayoutNode (GNode ENode (NSymbol (Symbol "-")) EvalUntried [TextBox {tbText = "-", tbTextBB = BBox 239.5 217.5 4.999999999999999 21.0, tbBoxBB = BBox 231.5 194.5 21.0 37.0}] BBox 231.5 194.5 21.0 37.0 [Iolet (Circle {circleCenter = Position {posX = 237.0, posY = 231.5}, circleRadius = 5.0}),Iolet (Circle {circleCenter = Position {posX = 247.0, posY = 231.5}, circleRadius = 5.0})] [Iolet (Circle {circleCenter = Position {posX = 242.0, posY = 194.5}, circleRadius = 5.0})]) BBox 221.5 184.5 41.0 57.0)->[]

10:WSimple (LayoutNode (GNode ENode (NNumber 10) EvalUntried [TextBox {tbText = "10", tbTextBB = BBox 280.0 218.5 14.0 21.0, tbBoxBB = BBox 272.0 195.5 30.0 37.0}] BBox 272.0 195.5 30.0 37.0 [] [Iolet (Circle {circleCenter = Position {posX = 287.0, posY = 195.5}, circleRadius = 5.0})]) BBox 262.0 185.5 50.0 57.0)->[]

11:WSimple (LayoutNode (GNode ENode (NSymbol (Symbol "*")) EvalUntried [TextBox {tbText = "*", tbTextBB = BBox 262.5 170.5 7.0 21.0, tbBoxBB = BBox 254.5 147.5 23.0 37.0}] BBox 254.5 147.5 23.0 37.0 [Iolet (Circle {circleCenter = Position {posX = 261.0, posY = 184.5}, circleRadius = 5.0}),Iolet (Circle {circleCenter = Position {posX = 271.0, posY = 184.5}, circleRadius = 5.0})] [Iolet (Circle {circleCenter = Position {posX = 266.0, posY = 147.5}, circleRadius = 5.0})]) BBox 244.5 137.5 43.0 57.0)->[]

[1]+ Exit 1 sifflet [rysbell@merlin ~]$

[Reported by R. Bell and M. Dudley]