Thanks Tania! The point I'm making is that list (data structure for evaluatable data/code) is not easily manipulatable with code in clojure. So much for 'code-is-data'... Thanks for the suggestion. In regards to rethinking it: it is supposed to be commands coming-in that sets parts of the grid with on/off/toggle... I want to append those commands (code) as data to the representation of a grid and evaluate the list of commands to get the final state of the grid. Trying to embrace this code-is-data thing here. On Saturday, July 17, 2021 at 9:21:29 PM UTC+2 tanya.m...@gmail.com wrote:
> > Hi, > > conj <https://clojuredocs.org/clojure.core/conj> adds at the end of a > vector, but at the beginning of a list. It is how it is implemented. I > think this > <https://stackoverflow.com/questions/5734435/put-an-element-to-the-tail-of-a-collection> > and > this <https://medium.com/@greg_63957/conj-cons-concat-oh-my-1398a2981eab> > sums > it up why. > > You could achieve what you want by using concat > <https://clojuredocs.org/clojure.core/concat> (note this returns a > LazySeq): > > user=> (concat grid '((off 1 2 3 6))) > (-> (grid 10 10) (toggle 2 3 4 5) (off 2 3 4 5) (on 2 3 4 5) (off 1 2 3 6)) > > Though I'm not exactly sure what is the end goal of this but I'd rethink > the way it is done. > > > > On Sat, 17 Jul 2021 at 14:24, SideStep <nesvarb...@gmail.com> wrote: > >> >> <https://stackoverflow.com/posts/68420449/timeline> >> >> I have a representation of a matrix in grid.clj file: >> >> (-> (grid 10 10) >> (toggle 2 3 4 5) >> (off 2 3 4 5) >> (on 2 3 4 5)) >> >> It's a list of functionts, first one initializes a grid, others modify it. >> Clojures' 'code is data' supposed to make it easy for me to modify that >> representation by adding an instrucion at the *end* of collection. List >> is an ordered collection right? Order matters. How do I add an instruction >> to the end of the list then? >> Something like this: >> >> (def grid (read-string (slurp "grid.clj"))) >> (conj grid '(off 1 2 3 6)) >> >> Yet I can't add to the end of the list, which is a data structure that is >> evaluatable as code. How is it 'code as data' if I can't add to the end of >> the ordered collection that is meant for code (as data)? >> >> -- >> You received this message because you are subscribed to the Google >> Groups "Clojure" group. >> To post to this group, send email to clo...@googlegroups.com >> Note that posts from new members are moderated - please be patient with >> your first post. >> To unsubscribe from this group, send email to >> clojure+u...@googlegroups.com >> For more options, visit this group at >> http://groups.google.com/group/clojure?hl=en >> --- >> You received this message because you are subscribed to the Google Groups >> "Clojure" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to clojure+u...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/clojure/efd72013-a85e-46e8-b9db-10dde1a8a235n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/clojure/efd72013-a85e-46e8-b9db-10dde1a8a235n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/clojure/6cf09a4d-aedd-42e4-860c-35efcb68ed50n%40googlegroups.com.