{"action":"created","issue":{"url":"https://api.github.com/repos/Yomguithereal/baobab/issues/394","labels_url":"https://api.github.com/repos/Yomguithereal/baobab/issues/394/labels{/name}","comments_url":"https://api.github.com/repos/Yomguithereal/baobab/issues/394/comments","events_url":"https://api.github.com/repos/Yomguithereal/baobab/issues/394/events","html_url":"https://github.com/Yomguithereal/baobab/issues/394","id":116416137,"number":394,"title":"Using complex objects with attached functions and array buffers with/alongside baobab","user":{"login":"tnrich","id":2730609,"avatar_url":"https://avatars.githubusercontent.com/u/2730609?v=3","gravatar_id":"","url":"https://api.github.com/users/tnrich","html_url":"https://github.com/tnrich","followers_url":"https://api.github.com/users/tnrich/followers","following_url":"https://api.github.com/users/tnrich/following{/other_user}","gists_url":"https://api.github.com/users/tnrich/gists{/gist_id}","starred_url":"https://api.github.com/users/tnrich/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tnrich/subscriptions","organizations_url":"https://api.github.com/users/tnrich/orgs","repos_url":"https://api.github.com/users/tnrich/repos","events_url":"https://api.github.com/users/tnrich/events{/privacy}","received_events_url":"https://api.github.com/users/tnrich/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-11-11T20:36:12Z","updated_at":"2015-11-16T19:40:30Z","closed_at":null,"body":"Hey @Yomguithereal , \r\n\r\nSo I'd like to use an npm module called ntseq (https://github.com/keithwhor/NtSeq)\r\n\r\nand use it in conjunction with baobab like so (this is just one example): \r\n\r\n```js\r\n    ntSeq: deriveData([\r\n        ['sequenceData',\r\n            'sequence'\r\n        ],\r\n        function(sequenceString) {\r\n            var seq = (new Nt.Seq()).read(sequenceString); //sequenceString = atgc\r\n            return seq;\r\n        }\r\n    ]),\r\n\r\n    reverseComplement: deriveData([\r\n        ['ntSeq'],\r\n        function(ntSeq) {\r\n            var a = ntSeq.complement().sequence();\r\n            return a; //a = gcat\r\n        }\r\n    ]),\r\n```\r\n\r\nThis doesn't work if I'm using baobab's immutable option, but it does work if immutability is turned off.\r\n\r\nIs there anything I should watch out for here? Or is there a better way to do what I'm trying to do. \r\n\r\nThanks!\r\nThomas"},"comment":{"url":"https://api.github.com/repos/Yomguithereal/baobab/issues/comments/157147092","html_url":"https://github.com/Yomguithereal/baobab/issues/394#issuecomment-157147092","issue_url":"https://api.github.com/repos/Yomguithereal/baobab/issues/394","id":157147092,"user":{"login":"Yomguithereal","id":2571951,"avatar_url":"https://avatars.githubusercontent.com/u/2571951?v=3","gravatar_id":"","url":"https://api.github.com/users/Yomguithereal","html_url":"https://github.com/Yomguithereal","followers_url":"https://api.github.com/users/Yomguithereal/followers","following_url":"https://api.github.com/users/Yomguithereal/following{/other_user}","gists_url":"https://api.github.com/users/Yomguithereal/gists{/gist_id}","starred_url":"https://api.github.com/users/Yomguithereal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Yomguithereal/subscriptions","organizations_url":"https://api.github.com/users/Yomguithereal/orgs","repos_url":"https://api.github.com/users/Yomguithereal/repos","events_url":"https://api.github.com/users/Yomguithereal/events{/privacy}","received_events_url":"https://api.github.com/users/Yomguithereal/received_events","type":"User","site_admin":false},"created_at":"2015-11-16T19:40:30Z","updated_at":"2015-11-16T19:40:30Z","body":"Hello @tnrich. This is an interesting use case indeed. The thing is that the data returned by monkeys is indeed made immutable. But since your monkeys return specific objects etc. the freezing fails. There can be solutions (none currently apart from disabling immutability or fiddling with internals) and I am willing to implement them. Let me check that more thoroughly."}}