Jump to content

Wikipedia:Reference desk/Archives/Computing/2018 January 11

From Wikipedia, the free encyclopedia
Computing desk
< January 10 << Dec | January | Feb >> January 12 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


January 11

[edit]

elisp, capture function definition

[edit]
Thanks, all

how can I capture the definition of a function that is passed to my function as an argument such that when that other function is re-defined my function would still call the "original" function?

;; -*- lexical-binding: t; -*-

(defun extend (f)
    (lambda (n)
      (princ "something:")
      (funcall f n)))

(defun g (a)
  (* a a))
        
(fset 'w (extend #'g))
(funcall #'w 9)  ;; 81

(defun g (a)
  (+ a 10))

(funcall #'w 9)  ;;19 but want 81

apparently, what gets captured by the lambda is the name g but not the actual definition of g (and the bahavior). What's the proper way to do this? I wrote a simple function memoizer that is called thus: (fset 'f (memoize #'f)). But when I then call f Emacs signals excessive nesting (which makes sense, after all the lambda calls the memoized version instead of the original one). PS I'm aware of Emacs' rich function advising capabilities (defadvice and consorts) and macros but would like to do this without either 78.50.150.107 (talk) 09:15, 11 January 2018 (UTC)[reply]

OP here: It seems to work when I bind the symbol-function of f to a variable and call that:

(defun extend (f)
  (let ((u (symbol-function f)))
    (lambda (n)
      (princ "something:")
      (funcall u n))))

Sometimes just formulating what you want helps come up with the answer! 78.50.124.84 (talk) 04:47, 12 January 2018 (UTC)[reply]

For reference, this is similar to the C# 4 behavior: the value (of the variable) you were capturing was the symbol g, not the function itself. --Tardis (talk) 05:01, 12 January 2018 (UTC)[reply]

Calendar synchronisation

[edit]

I currently don't possess my Android and anxiousness is clouding me.

My Android calendar saves files as .ics.

MS Outlook provides the opportunity to "Import an iCalendar (.ics) or vCalendar file (.vcs)" but doesn't allow any export features of desired file type.

Question is: If I import the .ics file to my PC and use it, could I export the same file after modifying and amending data in it, to my phone? If not, which "Import and Export Wizard" option should I choose that facilitates the desire.

119.30.47.241 (talk) 16:21, 11 January 2018 (UTC)[reply]

MS OneNote

[edit]

Hello,

I wish to insert personal "Tag"'s (created by myself or ready made found in the internet) in order to use it in the application. A step by step guide is sought for:

1) Where is the destination folder?

2) Which software to use if conversion is required.

Thanks in advance.

119.30.47.241 (talk) 16:21, 11 January 2018 (UTC)[reply]

There is a Help page and Forum for MS OneNote at https://www.onenote.com/. While the Microsoft site has a backlog of questions this independent tutorial may be helpful, though specific answers to your questions depend on which of many possibly platforms you run MS OneNote. SdrawkcaB99 (talk) 11:07, 12 January 2018 (UTC)[reply]