However, is there a reason why a simpler way to extend methods isn't provided? While one can "read" methods from a function, lack of "write" support to modify / add / delete methods from a generic function makes me curious.
On Friday, July 24, 2015 at 1:49:42 AM UTC+5:30, Vinuth Madinur wrote: > > Cool. Had missed the module part. So they give an accessible isolated > scope. > This should do it. > > Thanks for the help! > > > On Friday, July 24, 2015 at 1:43:16 AM UTC+5:30, Tom Breloff wrote: >> >> So... you want a method name globally accessible, but you don't want to >> put in global scope? Maybe you should use a Module instead of a let >> block. Your first method definition goes in the scope of "MyModule", and >> then later on you can add to that method definition by defining a function: >> "MyModule.myFunction(x::MyType) = ..." >> >> See: http://julia.readthedocs.org/en/latest/manual/modules/ >> >> On Thursday, July 23, 2015 at 4:08:45 PM UTC-4, Vinuth Madinur wrote: >>> >>> Please ignore the "anonymous function" part above. >>> >>> I'm creating a function in my macro inside a let block so that it >>> doesn't pollute the surrounding scope. Later on, when the same macro is >>> used on a different expression, I wont be able to access this same function >>> to extend it inside another let block. I was looking for a way to do this. >>> >>> >>> >>> On Friday, July 24, 2015 at 1:12:36 AM UTC+5:30, Vinuth Madinur wrote: >>>> >>>> It's a little complicated scenario to explain. It's like this: >>>> >>>> I have a macro that replaces an expression with a function whose name >>>> isn't fixed / known / is anonymous / created inside a closured scope. >>>> Later >>>> on I want the ability to add methods to this. >>>> >>>> >>>> >>>> On Friday, July 24, 2015 at 12:57:01 AM UTC+5:30, Tom Breloff wrote: >>>>> >>>>> Can you tell us more about your end-goal? I have a feeling that >>>>> you're not thinking about this in a Julian way, but I'm not entirely sure >>>>> what you want to be able to do. >>>>> >>>>> On Thu, Jul 23, 2015 at 3:21 PM, Vinuth Madinur <[email protected]> >>>>> wrote: >>>>> >>>>>> Hi, >>>>>> >>>>>> Is there a way to add a method to a generic function during runtime? >>>>>> Or to merge two generic functions? For example: >>>>>> >>>>>> >>>>>> function abc end >>>>>> function xyz end >>>>>> >>>>>> function add_method(method, func) >>>>>> #Add method to func >>>>>> end >>>>>> >>>>>> add_method(xyz) do x::Int >>>>>> x*2 >>>>>> end >>>>>> >>>>>> or >>>>>> >>>>>> add_method(x -> x * 4, abc) >>>>>> >>>>>> >>>>>> Thanks, >>>>>> Vinuth. >>>>>> >>>>>> >>>>>> >>>>>> >>>>>
