tag:blogger.com,1999:blog-12753102.post1566719694879030836..comments2024-03-18T03:44:29.957-04:00Comments on Ben's Journal: A Scheme Copy-and-Paste HackBen Simonhttp://www.blogger.com/profile/09833753747177544979noreply@blogger.comBlogger3125tag:blogger.com,1999:blog-12753102.post-15630491161156656332010-04-13T02:38:34.070-04:002010-04-13T02:38:34.070-04:00JPC - Thanks for the OS-X tip.
Offyb1 - plt-schem...JPC - Thanks for the OS-X tip.<br /><br />Offyb1 - plt-scheme never ceases to amaze...look at that, they've added (curry ...). I'll definitely start looking for ways to use it. Though, I do like the explicit nature of (cut ...) which allows for invocations like:<br /><br />(map (cut format <> 100 'x)<br /> '("!~a!~a~" ">~a!~a<"))<br /><br />PLT-Sheme also offers a <a href="http://docs.plt-scheme.org/guide/define.html?q=curry#%28part._.Curried_.Function_.Shorthand%29" rel="nofollow">a curried notation</a> of (define ...) which is cool, though I haven't found an ideal use case for it yet.Ben Simonhttps://www.blogger.com/profile/09833753747177544979noreply@blogger.comtag:blogger.com,1999:blog-12753102.post-80797166697402274002010-04-13T00:00:39.566-04:002010-04-13T00:00:39.566-04:00I've gone on a jag recently, replacing all my ...I've gone on a jag recently, replacing all my uses of "cut" with "curry", which I just think is slicker. (And it's in "scheme", so you don't have to require anything to get it).<br /><br />So<br /><br />(require srfi/26)<br />(define as-string (cut format "~a" <>))<br /><br />becomes<br /><br />(define as-string (curry format "~a"))offby1https://www.blogger.com/profile/01257566357465364171noreply@blogger.comtag:blogger.com,1999:blog-12753102.post-46170332878505045402010-04-12T16:39:26.872-04:002010-04-12T16:39:26.872-04:00Just a side note in case someone is interested:
O...Just a side note in case someone is interested:<br /><br />On OS X the clipboard copying command is pbcopy and you can use it like this:<br />(require scheme/system)<br /><br />(define (pbcopy data)<br /> (define-values (stdout stdin pid stderr proc) (apply values (process "pbcopy")))<br /> (close-input-port stdout) (close-input-port stderr)<br /> (display data stdin)<br /> (close-output-port stdin)<br /> (proc 'wait))jpchttps://www.blogger.com/profile/05403272030490907018noreply@blogger.com