guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 25/99: Implement call-with-values


From: Christopher Allan Webber
Subject: [Guile-commits] 25/99: Implement call-with-values
Date: Sun, 10 Oct 2021 21:50:48 -0400 (EDT)

cwebber pushed a commit to branch compile-to-js-merge
in repository guile.

commit cf905a700435f7f0a57ef94db10be1db33011373
Author: Ian Price <ianprice90@googlemail.com>
AuthorDate: Tue Jun 16 23:07:13 2015 +0100

    Implement call-with-values
---
 module/language/js-il/runtime.js | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/module/language/js-il/runtime.js b/module/language/js-il/runtime.js
index 5b4089e..232e9fa 100644
--- a/module/language/js-il/runtime.js
+++ b/module/language/js-il/runtime.js
@@ -319,7 +319,13 @@ var abort_to_prompt = function(self, k, prompt, arg) {
     return handler(kont, arg);
 };
 
-var call_with_values = not_implemented_yet;
+var call_with_values = function (self, k, producer, consumer) {
+    var k2 = function () {
+        var args = Array.prototype.slice.call(arguments);
+        return consumer.fun.apply(consumer.fun, [consumer, k].concat(args));
+    };
+    return producer.fun(producer, k2);
+};
 
 var callcc = function (self, k, closure) {
     var f = function (self, k2) {



reply via email to

[Prev in Thread] Current Thread [Next in Thread]