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.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>

Reply via email to