@BW Yes, I'm probably overthinking itβ. The below type defs are pretty straightforward β -- this is not a type issue at all -- β
list() [any()] charlist() [char()] char() 0..0x10FFFF Since the culprit for me here is the IO display -- I think the easiest solution is what @O is referencing (Thanks!) --> iex(1)> IEx.configure inspect: [char_lists: false] :ok iex(2)> [7] [7] iex(3)> List.insert_at([], 2, 7) [7] iex(4)> :) On Tue, Aug 9, 2016 at 1:08 PM, Ben Wilson <benwilson...@gmail.com> wrote: > Maybe type with list doesn't make any sense. For one thing the maybe type > is Nothing | Some(a) but that isn't what we have here at all. Thus a Maybe > list would be Nothing | Some(list), which doesn't cover the various single > char and so on you talked about. > > I think you're over thinking it. '\a' and [7] are just two different ways > of writing exactly the same list. > > On Monday, August 8, 2016 at 10:47:53 PM UTC-4, brpandey wrote: >> >> Thanks folks. I appreciate it >> >> I guess logically I understand it and have before but I feel like I have >> some intuitive gap/resistance to really accept this (because I feel like I >> have run into this before). >> >> In the spirit of Haskell, it would be interesting to have a Maybe type to >> wrap the List type. So Maybe List could return a list, a single char or a >> list with a single num, or an absence of both. >> >> http://learnyouahaskell.com/a-fistful-of-monads >> >> The return type of insert_at is a list and so technically this works >> fine, but folks just have a lot of programmer word gravity and baggage -- >> LOL. So even though '\a' is in fact [7] which is a list, `\a` in itself >> printed out doesn't look like a list. >> >> Just my 2 -- >> >> >> Enjoy the Olympics! >> B >> >> On Mon, Aug 8, 2016 at 6:41 PM, Ben Wilson <benwil...@gmail.com> wrote: >> >>> You can read more about it in the getting started guides: >>> http://elixir-lang.org/getting-started/binaries-stri >>> ngs-and-char-lists.html >>> >>> On Monday, August 8, 2016 at 8:27:23 PM UTC-4, Louis Pilfold wrote: >>>> >>>> Hey >>>> >>>> [7] == '\a' >>>> >>>> Single quote strings are actually lists of characters, so when you have >>>> a list of numbers that can be treated as characters Elixir will print them >>>> as like so. >>>> >>>> Cheers, >>>> Louis >>>> >>>> On 9 Aug 2016 01:15, "Bibek Pandey" <bib...@gmail.com> wrote: >>>> >>>>> Hi all -- >>>>> >>>>> I'm getting a '\a' when trying to insert into an empty list. Doesn't >>>>> appear to be expected behavior. >>>>> >>>>> $ iex >>>>> Erlang/OTP 19 [erts-8.0.2] [source-9503fff] [64-bit] [smp:2:2] >>>>> [async-threads:10] [hipe] [kernel-poll:false] >>>>> >>>>> Interactive Elixir (1.3.2) - press Ctrl+C to exit (type h() ENTER for >>>>> help) >>>>> iex(1)> List.insert_at([], 0, 7) >>>>> '\a' >>>>> iex(2)> List.insert_at([], 1, 7) >>>>> '\a' >>>>> iex(3)> List.insert_at([], 2, 7) >>>>> '\a' >>>>> iex(4)> List.insert_at([3], 2, 7) >>>>> [3, 7] >>>>> iex(5)> List.insert_at([3], 0, 7) >>>>> [7, 3] >>>>> iex(6)> List.insert_at([3], 1, 7) >>>>> [3, 7] >>>>> iex(7)> >>>>> >>>>> >>>>> Thanks B >>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "elixir-lang-talk" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to elixir-lang-ta...@googlegroups.com. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/elixir-lang-talk/CAF5zmfxO >>>>> VPpDqVCQCTjHy5gJwEW74JbHH2m6BK3ADRubD5GoPA%40mail.gmail.com >>>>> <https://groups.google.com/d/msgid/elixir-lang-talk/CAF5zmfxOVPpDqVCQCTjHy5gJwEW74JbHH2m6BK3ADRubD5GoPA%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> For more options, visit https://groups.google.com/d/optout. >>>>> >>>> >> -- You received this message because you are subscribed to the Google Groups "elixir-lang-talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to elixir-lang-talk+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-talk/CAF5zmfyPKefHx7TY7QEkUOmeCZ5i9r%2BC9mgXsSj7%3D7NNBdTCZg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.