Undocumented object variable?

I was reading Help with Oscillation Function in Pulp and I noticed Terry using this pattern:

aboveTarget = sTargetX,aboveTargetY
nameAT = name aboveTarget

I tried it out, and it works in browser, in simulator and on device! Test snippet:

xy = 8,7
tile_name = name xy
// This first say works
say "tile_name: {tile_name}" then
  // This second say causes a crash
  say "xy: {xy}"

According to the pulpscript docs "variables can hold a number or a string", and there is similarly no mention of this pattern under the functions type, name, etc.

Logging out the value of xy in browser gives [object Object] and attempting to format xy into a string causes this crash on the simulator (and similar on device):

Update error: invalid value (table) at index 6 in table for 'concat'
stack traceback:
	[C]: in function 'table.concat'
	?: in function <?:77>
	(...tail calls...)
	?: in upvalue '?'
	?: in function <?:1465>
	(...tail calls...)
	?: in function <?:1365>
	(...tail calls...)
	?: in upvalue '?'
	?: in upvalue '?'
	?: in upvalue '?'
	?: in function <?:3743>
09:52:00: Update failed, simulator paused.

Is this an intentional feature of pulpscript?

I would guess not and might want fixing given the string formatting bug, but it is interesting that it works with the name function!

1 Like