Nadeen:

You are welcome to send questions here, of course.  I wanted to point out
another resource that many people take advantage of: The #beginners channel
on Slack.

https://clojurians.slack.com

Sorry, I don't recall the exact button clicks necessary after you create a
free account on Slack for yourself in order to join particular 'channels',
but hopefully the web page makes that not difficult to figure out.

Andy

On Tue, Feb 6, 2018 at 8:50 AM, Nadeen Kurz <kurznad...@gmail.com> wrote:

> Thanks Simon, I am using the repl and I am sorry, I should have click
> share to make it easier, don't know what I was thinking.
>
> Thanks everyone for your help, really appreciate it.
>
> On Feb 6, 2018 10:32 AM, "Simon Luetzelschwab" <i...@alpeware.com> wrote:
>
>> Hi Nadeen,
>>
>> Welcome to Clojure!
>>
>> I'd recommend incorporating Clojure's excellent REPL into your workflow
>> to easily try things out with quick feedback.
>>
>> Here's an online version with your code snippet prepopulated - just hit
>> the run button!
>>
>> https://repl.it/repls/OblongIntrepidAlabamamapturtle
>>
>> This should do what you like -
>>
>> (def input-file [{:st_abbrev "AZ", :firstname "john", :lastname "smith"}
>>                       {:st_abbrev "FL", :firstname "roy", :lastname
>> "wills"}
>>                        {:st_abbrev "OH", :firstname "jay", :lastname
>> "louis"}])
>>
>>  (def state-names
>>     {"AZ" "Arizona", "FL" "Florida", "OH" "Ohio"})
>>
>>  (defn state-desc3 [e]
>>     (assoc e :state (state-names (:st_abbrev e))))
>>
>> (map state-desc3 input-file)
>>
>>
>> On Tue, Feb 6, 2018 at 5:27 AM, Nadeen Kurz <kurznad...@gmail.com> wrote:
>>
>>> Thanks for the quick response James. Yes, you hit the nail on the head
>>> with me not understanding map, explanation you provided helps. I like the
>>> second option better. I have tried both options and now I am getting
>>> "illegalargumentexception, key must be an integer"
>>> When I call
>>> (state-desc3 input-file)
>>>
>>> When I do this, it works find of course cause it's only one
>>> (state-desc3 {:st_abbr "AZ", :first name "John", :lastname  "Smith"})
>>>
>>>
>>>  1) maybe an index problem which I don't understand yet and researching
>>>
>>> 2) I need to figure out how to call function for testing
>>>
>>>
>>> On Feb 5, 2018 9:57 PM, "James Reeves" <ja...@booleanknot.com> wrote:
>>>
>>> First:
>>>
>>>   (#(map :st_abbrev input-file))
>>>
>>> Is equivalent to:
>>>
>>>   (map :st_abbrev input-file)
>>>
>>> Because your putting the form in an anonymous function, then immediately
>>> calling it. This is equivalent to just evaluating the form.
>>>
>>> Next, I think you're confused as to how `map` handles multiple
>>> arguments. If you call:
>>>
>>>   (map f [1 2 3] [4 5 6])
>>>
>>> Then it will return:
>>>
>>>   [(f 1 4) (f 2 5) (f 3 6)]
>>>
>>> The two collections are lined up, then passed as arguments to the
>>> function.
>>>
>>> If you want to put this into one function, then you don't need an inner
>>> map. You instead want:
>>>
>>>   (defn state-desc2 [input-file]
>>>     (let [desc2 (:st_abbrev input-file)]
>>>         (case desc2
>>>          "AZ" (assoc input-file :state "Arizona")
>>>          "FL" (assoc input-file :state "Florida")
>>>          "OH" (assoc input-file :state "Ohio")
>>>          "default")))
>>>
>>> You could also write it as:
>>>
>>>   (def state-names
>>>     {"AZ" "Arizona", "FL" "Florida", "OH" "Ohio"})
>>>
>>>   (defn state-desc3 [input-file]
>>>     (assoc input-file :state (state-names (:st_abbrev input-file))))
>>>
>>>
>>>
>>> On 6 February 2018 at 01:22, Nadeen Kurz <kurznad...@gmail.com> wrote:
>>>
>>>> Can someone help me with the following please: I am new to clojure and
>>>> i haven't developed in 4 years, previous was mainframe. See questions in
>>>> blue
>>>>
>>>> ; Task is to add full state name based on st_abbr
>>>>
>>>>
>>>> (def input-file [{:st_abbrev "AZ", :firstname "john", :lastname "smith"}
>>>>                       {:st_abbrev "FL", :firstname "roy", :lastname
>>>> "wills"}
>>>>                        {:st_abbrev "OH", :firstname "jay", :lastname
>>>> "louis"}])
>>>>
>>>> *Question 1: How do I make these between the lines into one Defn?*
>>>> -----------------------------------------------------------------------
>>>> (def get-state
>>>>   (#(map :st_abbrev input-file)))
>>>>
>>>> #'user/get-state
>>>> ("AZ" "FL" "OH")
>>>>
>>>> (defn state-desc [get-state input-file]
>>>>   (let [desc get-state]
>>>>       (case desc
>>>>        "AZ" (assoc input-file :state "Arizona")
>>>>        "FL" (assoc input-file :state "Florida")
>>>>        "OH" (assoc input-file :state "Ohio")
>>>>        "default"
>>>>        )))
>>>>
>>>> (map state-desc get-state input-file)
>>>>
>>>> #'user/state-desc
>>>>  ({:st_abbrev "AZ", :firstname "john", :lastname "smith", :state
>>>> "Arizona"}
>>>>   {:st_abbrev "FL", :firstname "roy", :lastname "wills", :state
>>>> "Florida"}
>>>>   {:st_abbrev "OH", :firstname "ja  y", :lastname "louis", :state
>>>> "Ohio"})
>>>> ------------------------------------------------------------
>>>> ---------------
>>>>
>>>> Question 2: I tried to combine in one defn, but it's not working, any
>>>> help would be appreciated
>>>>
>>>> (defn state-desc2 [input-file]
>>>>   (let [desc2 (#(map :st_abbrev input-file))]
>>>>       (case desc2
>>>>        "AZ" (assoc input-file :state "Arizona")
>>>>        "FL" (assoc input-file :state "Florida")
>>>>        "OH" (assoc input-file :state "Ohio")
>>>>        "default"
>>>>        )))
>>>>
>>>> (map state-desc2 input-file)
>>>>
>>>> #'user/state-desc2
>>>> ("default" "default" "default")
>>>>
>>>> --
>>>> 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.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>
>>>
>>> --
>>> James Reeves
>>> booleanknot.com
>>>
>>> --
>>> 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.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>>
>>> --
>>> 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.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>>
>> --
>> Alpeware LLC - 548 Market St #35286, San Francisco, CA 94104
>> <https://maps.google.com/?q=548+Market+St+%2335286,+San+Francisco,+CA+94104&entry=gmail&source=g>
>> - +1 415 200 3094 <(415)%20200-3094>
>>
>> --
>> 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.
>> For more options, visit https://groups.google.com/d/optout.
>>
> --
> 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.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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.
For more options, visit https://groups.google.com/d/optout.

Reply via email to