Alexander Burger <a...@software-lab.de> writes:

Hi Alex,

>> I remember that Alex recently mentioned a method how to get the
>> signature of any function or method definition loaded in the system.
>
> I'm not completely sure what you mean with signature in this context.
>
>
> You can inspect a function by pretty-printing,
>
>    : (pp 'insert)
>    (de insert (N Lst X)
>       (conc (cut (dec N) 'Lst) (cons X) Lst) )

too much output in this case

> by looking at it with an editor (sorry, only 'vim' at the moment),
>
>    : (vi 'insert)

that was another question of mine - what would it take to get a

,----------------
| (emacs 'insert)
`----------------

function, and a 

,---------------
| (edit 'insert)
`---------------

that opens an emacs window?

> or access its reference
>
>    : (doc 'insert)

gives me this output - is that intended for vim too? (sorry for the long
lines). 

: (doc 'insert)
1,02kbloaded->(208730594.32315):(stamp73059432315)->"2000-06-1708:58:35"(init 
'tree ['any1] ['any2]) -> 
lstInitializesastructureforsteppingiterativelythroughadatabasetree.any1andany2mayspecifyarangeofkeys.Ifany2isgreaterthanany1,thetraversalwillbeinoppositedirection.Seealsotree,step,iterandscan.:(init(tree'nr'+Item)35)->(((3.5)((3NIL.{3-3})(4NIL.{3-4})(5NIL.{3-5})(6NIL.{3-6})(insert
 'cnt 'lst 'any) -> 
lstInsertsanyintolstatpositioncnt.Thisisanon-destructiveoperation.Seealsoremove,place,append,deleteandreplace.:(insert3'(abcde)777)->(ab777cde):(insert1'(abcde)777)->(777abcde):(insert9'(abcde)777)->(abcde777)≪
 ↑ ↓ Viewing <I>libgpm: zero screen dimension, assuming 80x25.


> A "signature" in the sense of C or Java is perhaps
>
>    : (car insert)
>    -> (N Lst X)

That probably what I was looking for.

> i.e. the formal parameters of the function.

Is there is similar method to get the formal parameters of a method?

,-----------------------------------------------
| :(class +Shape)                               
| -> +Shape                                     
|                                               
| :(dm T (X Y)                                  
| (=: x X)                                      
| (=: y Y))                                     
| -> T                                          
|                                               
| :(dm move> (DX DY)                            
| (inc (:: x) DX)                               
| (inc (:: y) DY))                              
| -> move>                                      
|                                               
| :(car move>)                                  
| !? (car move>) 67291568 -- Variable expected ?
|                                               
| : (car 'move>)                                
| -> 67291568                                   
|                                               
| : (car insert)                                
| -> (N Lst X)                                  
`-----------------------------------------------

Thanks for you answer

Cheers,
-- 
Thorsten

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to