Nested function: Difference between revisions

Content added Content deleted
(Add Julia language)
Line 352: Line 352:
}</lang>
}</lang>
=={{header|Elena}}==
=={{header|Elena}}==
ELENA 3.2 :
ELENA 3.3 :
<lang elena>import extensions.
<lang elena>import extensions.

MakeList = (:separator)
MakeList = (:separator)
[
[
var counter := 1.
var counter := 1.
var makeItem := (:item)[ var retVal := counter literal + separator + item + 'newLine. counter += 1. ^ retVal ].
var makeItem := (:item)[ var retVal := counter literal + separator + item + 'newLine. counter += 1. ^ retVal ].
^ makeItem eval:"first" + makeItem eval:"second" + makeItem eval:"third"
^ makeItem("first") + makeItem("second") + makeItem("third")
].
].

program =
program =
[
[
console printLine(MakeList eval:". ")
console printLine(MakeList(". "))
].</lang>
].</lang>
{{out}}
{{out}}