I think proc is a good keyword. Note that in older languages like Pascal, 
Modula, Oberon PROCEDURE was used, which is too long.

def is not that nice, because we can not only define code procedures, but other 
symbols like variables, types, constants...

fun may be ok if the code only returns a result but does not modify internal 
state. But note that programming can be fun, but not always is, so fun keyword 
is a bit silly.

No keyword for callable code as in C/C++ makes searching in editor for start of 
function more difficult.

So Nims proc and func keywords are fine for me, as I can not imagine something 
better currently.

And finally, if your post has serious intent and you really have a mental 
problem with proc, you may consider using Nim's source code filters -- I have 
considered using it for allowing tabs, but never really used.

Source code filters are a bit restricted, seems that the have to be placed at 
the top of a file, only one can be used, they don't work with regular 
expressions, and they work on all input data, also for strings. So it is no 
serious solution, but maybe helps you starting with Nim, as it did for me in 
early Nim days for using tabs. (I still miss them...)
    
    
    #? replace(sub="def ", by="proc ")
    
    proc test1 =
      echo "Hello 1."
    
    func test2 =
      debugecho "Hello 2." # as echo can have side effects
    
    def test3 =
      echo "Hello 3, def "
    
    test1()
    test2()
    test3()
    
    
    Run

Reply via email to