mirror of
https://github.com/not-kennethreitz/convore.json.git
synced 2026-06-05 23:20:19 +00:00
1 line
3.9 KiB
JSON
1 line
3.9 KiB
JSON
[{"user_id": 32737, "stars": [], "topic_id": 36797, "date_created": 1306353302.822264, "message": "Even something as simple as (extend ar-apply (x . args) t) breaks it", "group_id": 9739, "id": 1183602}, {"user_id": 32737, "stars": [], "topic_id": 36797, "date_created": 1306353366.776042, "message": "For the record, (extend ar-apply (x . args) nil) breaks it too", "group_id": 9739, "id": 1183614}, {"user_id": 25438, "stars": [], "topic_id": 36797, "date_created": 1306353785.853667, "message": "It's true, you can't use extend on ar-apply, because the test in the extend form itself makes a function call. The best you can do is to have ar-apply unilaterally check for a function, and if it isn't a function, have it call something that can be extend'ed or redef'ed.", "group_id": 9739, "id": 1183701}, {"user_id": 32737, "stars": [], "topic_id": 36797, "date_created": 1306353910.9514861, "message": "Uh, question. Why is ar-apply exposed to Arc, then? :P", "group_id": 9739, "id": 1183753}, {"user_id": 32737, "stars": [], "topic_id": 36797, "date_created": 1306353408.486342, "message": "Though... come to think of it... you could probably use the old (let orig ar-apply (def ar-apply ...)) trick", "group_id": 9739, "id": 1183626}, {"user_id": 32737, "stars": [], "topic_id": 36797, "date_created": 1306353559.6337769, "message": "No, that didn't work either. At least it errored, rather than going into a loop.", "group_id": 9739, "id": 1183658}, {"user_id": 32737, "stars": [], "topic_id": 36797, "date_created": 1306353251.4711399, "message": "It uh, seems to be impossible. Goes into an infinite loop. So it would seem some sort of defcall facility (or similar) would need to be provided in the core. Unless you have a suggestion?", "group_id": 9739, "id": 1183572}, {"user_id": 25438, "stars": [], "topic_id": 36797, "date_created": 1306354244.1806829, "message": "If you overwrite it with something else, the new version will be used in subsequent compiles. (I imagine you'd probably have to write the new version in Racket, since any Arc code you write to implement ar-apply would itself be making procedure calls).", "group_id": 9739, "id": 1183834}, {"user_id": 32737, "stars": [], "topic_id": 36797, "date_created": 1306354290.05322, "message": "Hm... I hadn't thought of that. I suppose I could use racket-apply. I'll try that.", "group_id": 9739, "id": 1183845}, {"user_id": 32943, "stars": [], "topic_id": 36797, "date_created": 1306358869.834929, "message": "@Pauan This is exactly the kind of infinite loop we were talking about at http://arclanguage.org/item?id=14338 , when I was speaking in hypotheticals. I don't know if you're still looking for an example of that in practice, but if you are, here it is. ^^;", "group_id": 9739, "id": 1184506}, {"user_id": 32737, "stars": [], "topic_id": 36797, "date_created": 1306359135.0306389, "message": "The reason this doesn't work is because ar-apply is an absolute primitive. But I think your example would work because things like `car` wouldn't be primitives: they would call primitives, and since the primitives would be implemented in Python, no infinite loops.", "group_id": 9739, "id": 1184527}, {"user_id": 32737, "stars": [], "topic_id": 36797, "date_created": 1306359010.6590929, "message": "I am aware that infinite loops are possible, and that they can occur in these situations, but I still don't understand why your example in that post would cause an infinite loop, nor have I encountered that problem in practice.", "group_id": 9739, "id": 1184520}, {"user_id": 32943, "stars": [], "topic_id": 36797, "date_created": 1306359643.4928451, "message": "Ah I suppose I was assuming you'd want to be able to pass anything to a function as an argument list as long as it implemented things like 'car to get the args out. If parameters use a Python version of 'car instead, then yeah, it's not an issue. Well, I'm glad we're on the same page. ^_^", "group_id": 9739, "id": 1184565}] |