Supongo que usted está preocupado acerca de la velocidad de la iteración. La iteración sería un tiempo de orden-n O(n).
En AppleScript, usted posiblemente puede utilizar un registro de los registros en lugar de una lista de registros, pero creo que la clase de la clave tiene que ser un identificador (no entero, como en tu ejemplo.
Aquí hay un enlace a alguien con una pregunta similar:
Emulando matrices asociativas en AppleScript
Lauri ranta le la respuesta es utilizar la herramienta de línea de comandos llamada "awk".
La solución que he jugado con el fue a hacer un rostro de fondo de la aplicación que sería lo que se llama un "Agente" que AppleScript podría llamar para el uso de su datastructures como un array asociativo (también conocido como un diccionario o una Asignación.)
Yo no se mi de la solución de hecho. Es sólo una idea, pero se puede usar Lauri la respuesta, por lo general se las sabe de qué está hablando.
Desde que me conozco un poco Pyton, y desde Pyton viene con OS X, pre-instalado en la Carpeta del Sistema, me gustaría considerar el uso de Python a mí mismo.
Lo intenté de nuevo en "pura AppleScript" con el siguiente código que no estoy muy contento con:
set theRecords to {fooKey:{key:"fooKey", value:"fooValue"}, barKey:{key:"barKey", value:"barValue"}}
try
set theRecord to get barKey of theRecords
display dialog (key of theRecord & ":" & value of theRecord)
on error errorMessage number errorNumber
if errorNumber is not equal to -128 then
display dialog "No match"
end if
end try
Usted puede mezclar secuencia de comandos de shell y AppleScripts:
-- in AppleScript, you can call a shell script
do shell script "<enter your shell script here>"
O, puede llamar a un AppleScript a partir de un guión del intérprete de comandos con la herramienta de línea de comandos llamada "osascript".