App realtime - deprecated makes it more complex and unsafe

Here is the deprecated version. Notice how small and uncomplex the dialplan is:

; See if that conference exists in database
exten => s,n,RealTime(meetme,confno,${USER_CONFNO},‘CONF_’)

; If conference doesn’t exist, play error
exten => s,n,GotoIf(${ISNULL(${CONF_CONFNO})} ? 101)

exten => s,n,NoOp(User PIN: ${CONF_PIN})
exten => s,n,NoOp(Admin PIN: ${CONF_ADMINPIN})
exten => s,n,NoOp(Conf Settings: ${CONF_SETTINGS})

=====

But app_realtime is deprecated in favor of func_realtime. But func_realtime returns all columns concat’d as a single string and there’s no guarantee that the columns will be in same order each time. PLUS, you cannot nest function calls and use the return value in another call.

; See if that conference exists in database
exten => s,n,Set(CONFINFO="${REALTIME(meetme,confno,${USER_CONFNO})}")

; If conference doesn’t exist, play error
exten => s,n,GotoIf(${ISNULL(${CONFINFO})} ? 101)

; Retardedly string-manip out the conference settings
exten => s,n,Set(CONF_PINPAIR=${CUT(CONFINFO,"|",2)})
exten => s,n,Set(CONF_PIN=${CUT(CONF_PINPAIR,"=",2)})
exten => s,n,Set(CONF_ADMINPINPAIR=${CUT(CONFINFO,"|",3)})
exten => s,n,Set(CONF_ADMINPIN=${CUT(CONF_ADMINPINPAIR,"=",2)})
exten => s,n,Set(CONF_SETTINGSPAIR=${CUT(CONFINFO,"|",5)})
exten => s,n,Set(CONF_SETTINGS=${CUT(CONF_SETTINGSPAIR,"=",2)})

exten => s,n,NoOp(User PIN: ${CONF_PIN})
exten => s,n,NoOp(Admin PIN: ${CONF_ADMINPIN})
exten => s,n,NoOp(Conf Settings: ${CONF_SETTINGS})

======

So I have to ask, why is app_realtime deprecated when it is easier and safer to use in the dialplan?