summaryrefslogtreecommitdiff
path: root/sly/signal.scm
Commit message (Collapse)AuthorAgeFilesLines
* blahwip-signal-improvementsDavid Thompson2016-08-241-14/+32
|
* signal: Reimplement signal-fold.David Thompson2016-08-241-7/+5
| | | | * sly/signal.scm (signal-fold): There was no need for using let-over-lambda.
* signal: Print signals like regular values.David Thompson2016-08-241-3/+2
| | | | | Simply printing the contents of the signal makes signal objects feel more native when working at the REPL.
* signal: Fix signal-sample.David Thompson2016-03-211-5/+9
| | | | | | | | | | | | signal-sample had a nasty nondeterministic bug where the newly created signal might actually be GC'd before it could be returned to the caller. This was able to happen because no reference to the signal was help between creating the signal and returning it. Reported-By: David Hashe <david.hashe@dhashe.com> * sly/signal.scm (signal-sample): Ensure that the garbage collector cannot reclaim the new signal before it is returned.
* signal: Add docstring for signal-if.David Thompson2016-02-271-0/+3
| | | | * sly/signal.scm (signal-if): Add docstring.
* signal: Add signal-map-maybe.David Thompson2016-02-101-1/+12
| | | | * sly/signal.scm (signal-map-maybe): New procedure.
* signal: Add signal-if.David Thompson2016-02-101-0/+4
| | | | * sly/signal.scm (signal-if): New syntax.
* signal: Run newly added hooks immediately.David Thompson2016-01-121-2/+6
| | | | * sly/signal.scm (add-signal-hook!): Apply 'proc' immediately.
* signal: Add hook API for side-effects.David Thompson2016-01-011-6/+30
| | | | | | | | | * sly/signal.scm (<signal>)[hook]: New field. (signal-hook): New selector. (add-signal-hook, remove-signal-hook, clear-signal-hook!): New procedures. (%make-signal): Create hook for the signal. (signal-propagate!): Run hook.
* signal: Add signal-call.David Thompson2015-11-151-1/+8
| | | | | * sly/signal.scm (signal-call): New procedure. * doc/api/signals.texi: Add docs.
* signal: Add comments specifying emacs indentation for macros.Christopher Allan Webber2015-06-121-0/+4
| | | | | * sly/signal.scm: Add comments specifying emacs indentation level for signal-let and signal-let* syntax.
* signal: Redefine the semantics of signal-let and signal-let*.David Thompson2015-06-061-9/+9
| | | | * sly/signal.scm (signal-let, signal-let*): Reimplement.
* signal: Fix inaccurate comment.David Thompson2015-06-061-1/+1
| | | | | | | | I don't know why I wrote that the signal combinators are "higher order signals", but that's not true. They are just procedures (some of which are higher order procedures) that take signals as arguments. * sly/signal.scm: Fix comment.
* signals: Add signal-timer.David Thompson2015-03-091-1/+6
| | | | | * sly/signal.scm (signal-timer): New procedure. * doc/api/signals.texi: Document it.
* signal: Require signal values in signal-let.David Thompson2014-12-071-1/+1
| | | | | * sly/signal.scm (signal-let): Use signal-ref instead of signal-ref-maybe.
* signal: Improve docstrings and parameter names.David Thompson2014-12-071-32/+33
| | | | * sly/signal.scm: Tweak docstrings and parameter names.
* signal: Do not export signal-proc.David Thompson2014-12-071-1/+0
| | | | * sly/signal.scm: Remove signal-proc for export list.
* signal: Add signal-sample-on.David Thompson2014-12-061-1/+6
| | | | * sly/signal.scm (signal-sample-on): New procedure.
* signal: Add custom record type printer.David Thompson2014-12-061-0/+10
| | | | * sly/signal.scm: Set record type printer for <signal>.
* signal: Rename signal-reject to signal-drop.David Thompson2014-11-301-11/+11
| | | | | * sly/signal.scm (signal-reject): Delete. (signal-drop): New procedure.
* signal: Change parameter name in signal-sample.David Thompson2014-11-301-13/+11
| | | | * sly/signal.scm (signal-sample): Change 'delay' to 'step'.
* signal: Add signal-time.David Thompson2014-11-301-1/+6
| | | | * sly/signal.scm (signal-time): New procedure.
* signal: Add signal-every and signal-since.David Thompson2014-11-301-0/+12
| | | | * sly/signal.scm (signal-every, signal-since): New procedures.
* signal: Add signal-timestamp.David Thompson2014-08-271-0/+7
|
* signal: Add signal-negate.David Thompson2014-08-271-0/+6
| | | | * sly/signal.scm (signal-negate): New procedure.
* signal: Allow non-signal values to be bound in signal-let.David Thompson2014-08-271-1/+1
| | | | * sly/signal.scm (signal-let): Use signal-ref-maybe instead of signal-ref.
* Add signal-generator macro.David Thompson2014-08-251-1/+25
| | | | | * sly/signal.scm (yield): New variable. (signal-generator): New macro.
* Add signal-let and signal-let* forms.David Thompson2014-08-251-0/+12
| | | | * sly/signal.scm (signal-let, signal-let*): New macros.
* Fix memory leak in signal-sample.David Thompson2014-08-251-5/+23
| | | | * sly/signal.scm (signal-sample): Fix memory leak.
* Add optional start and step parameters to signal-count.David Thompson2014-07-221-4/+5
| | | | * sly/signal.scm (signal-count): Add start and step parameters.
* Fix typos in signal-constant and signal-tap docstrings.David Thompson2014-07-221-3/+3
| | | | * sly/signal.scm (signal-constant, signal-tap): Fix docstrings.
* Add signal-switch procedure.David Thompson2014-07-221-0/+13
| | | | * sly/signal.scm (signal-switch): New procedure.
* Add signal-drop-repeats procedure.David Thompson2014-06-291-0/+15
| | | | * sly/signal.scm (signal-drop-repeats): New procedure.
* Rename guile-2d to Sly!David Thompson2014-06-281-0/+292
Massive find/replace job.