« Back to channel list

#elixir-lang - 02 April 2019

« Back 1 day Forward 1 day »
[00:16:41] blahdodo: has joined #elixir-lang
[00:22:46] blahdodo: has joined #elixir-lang
[00:22:46] __charly__: has joined #elixir-lang
[00:27:50] Sgeo_: has joined #elixir-lang
[00:30:37] mattste: has joined #elixir-lang
[00:45:14] mattste: has joined #elixir-lang
[00:47:34] orbyt_: has joined #elixir-lang
[01:01:52] mattste: has joined #elixir-lang
[01:04:07] sevenseacat: has joined #elixir-lang
[01:07:35] carldd: has joined #elixir-lang
[01:16:52] tomterl: has joined #elixir-lang
[01:19:11] KeyJoo: has joined #elixir-lang
[01:19:22] jeffro: has joined #elixir-lang
[01:31:55] blahdodo: has joined #elixir-lang
[01:38:56] marciol: has joined #elixir-lang
[01:45:19] gwillickers: has joined #elixir-lang
[01:48:09] mdbm: has joined #elixir-lang
[01:48:29] mdbm_: has joined #elixir-lang
[01:49:10] mdbm__: has joined #elixir-lang
[01:49:34] mdbm_: has joined #elixir-lang
[01:51:16] iamvery: has joined #elixir-lang
[02:26:24] notzmv: has joined #elixir-lang
[02:27:01] ur5us: has joined #elixir-lang
[02:29:04] jeffro: has joined #elixir-lang
[02:34:03] mattste: has joined #elixir-lang
[02:38:17] iamvery: has joined #elixir-lang
[02:49:09] mattste: has joined #elixir-lang
[03:11:56] orbyt_: has joined #elixir-lang
[03:18:53] iamvery: has joined #elixir-lang
[03:21:02] carldd: has joined #elixir-lang
[03:29:45] glasz: has joined #elixir-lang
[03:32:53] mattste: has joined #elixir-lang
[03:34:41] jeffro: has joined #elixir-lang
[03:36:45] glasz: has joined #elixir-lang
[03:49:52] jeffro: has joined #elixir-lang
[03:54:05] mdbm: has joined #elixir-lang
[04:07:27] mattste: has joined #elixir-lang
[04:19:17] glasz: has joined #elixir-lang
[04:27:32] mbuf: has joined #elixir-lang
[04:35:00] mattste: has joined #elixir-lang
[04:43:40] ur5us: has joined #elixir-lang
[04:46:14] mattste: has joined #elixir-lang
[04:47:54] jeffro: has joined #elixir-lang
[04:50:33] fyber: kinda confused as to what exactly an "atom" is
[04:50:53] fyber: I get that it's a "constant where its name is its own value" - but I see it sometimes referring to modules?
[05:00:43] mattste: has joined #elixir-lang
[05:01:43] LordPtolemy[m]: has joined #elixir-lang
[05:11:58] voltone: has joined #elixir-lang
[05:13:36] mattste: has joined #elixir-lang
[05:19:00] kyrylo: has joined #elixir-lang
[05:23:03] blahdodo: has joined #elixir-lang
[05:27:01] josevalim: fyber: yes, the module names are represented by atoms
[05:29:11] fyber: josevalim: how does that work?
[05:29:26] fyber: like can I set the value of atoms to my own things?
[05:29:34] fyber: or is it just a special case
[05:33:18] Nicd-: `defmodule :foo do` is a valid module named `:foo`
[05:33:37] Nicd-: `defmodule Foo do` is a module named `:"Elixir.Foo"`
[05:34:08] blahdodo: has joined #elixir-lang
[05:34:23] Nicd-: terms starting with a capital letter are syntax sugar for atoms that have `Elixir` in front of them like that
[05:38:07] josevalim: You can use a map to associate an atom to any given value
[05:38:23] josevalim: You can assume that the runtime does something similar as well
[05:38:33] josevalim: It keeps a map from atoms to module names
[05:45:13] gvaughn: has joined #elixir-lang
[05:53:54] blahdodo: has joined #elixir-lang
[05:59:02] Havvy: has joined #elixir-lang
[06:00:21] mattste: has joined #elixir-lang
[06:12:14] infowolfe: has joined #elixir-lang
[06:12:14] infowolfe: has joined #elixir-lang
[06:12:45] Jetimon: has joined #elixir-lang
[06:12:50] ur5us: has joined #elixir-lang
[06:13:33] Jetimon: has joined #elixir-lang
[06:13:41] voltone: has joined #elixir-lang
[06:25:30] Phylock: has joined #elixir-lang
[06:33:06] craigp: has joined #elixir-lang
[06:33:40] bingobingolotto: has joined #elixir-lang
[06:37:09] mattste: has joined #elixir-lang
[06:39:35] iamvery: has joined #elixir-lang
[06:48:41] jeffro: has joined #elixir-lang
[06:51:33] __jrjsmrtn__: has joined #elixir-lang
[06:52:10] gvaughn: has joined #elixir-lang
[06:52:43] kapil____: has joined #elixir-lang
[07:02:41] za1b1tsu: has joined #elixir-lang
[07:10:10] Beam`: has joined #elixir-lang
[07:11:00] ur5us: has joined #elixir-lang
[07:46:11] lexmag: has joined #elixir-lang
[07:47:55] jeffro: has joined #elixir-lang
[07:52:18] ur5us: has joined #elixir-lang
[07:53:15] ur5us_: has joined #elixir-lang
[07:54:45] mattste: has joined #elixir-lang
[07:56:33] gvaughn: has joined #elixir-lang
[08:19:08] wonko7: has joined #elixir-lang
[08:25:33] josevalim: lpil: nice interview!
[08:26:01] lpil: Thank you josevalim!
[08:26:17] josevalim: lpil: quick question: you said you pretty-print erlang
[08:26:38] josevalim: do you call the compiler in rust and that returns a pretty printed file?
[08:26:52] josevalim: or do you return erlang terms and then pretty print them in erlang?
[08:27:08] lpil: I've written a pretty printer in Rust
[08:27:42] lpil: It doesn't parse Erlang or use an internal Erlang AST so it's not useful outside of Gleam
[08:28:19] josevalim: makes sense
[08:28:21] lpil: But I might extend it if I have a free month or so
[08:28:43] josevalim: are you using rustler to invoke your compiler?
[08:29:23] lpil: No, I normally run it directly because it's much nicer to not have to wait for the VM to boot (and Rust handles CLI options better)
[08:29:49] lpil: Once it type checks I run rebar3
[08:30:47] lpil: I've also set up rebar3 to run Gleam using hooks though it's nothing a perfect solution. Perhaps a plugin is needed.
[08:31:02] Nicd-: are you the gleam person?
[08:31:09] josevalim: i think you probably want to fry bigger fish for now anyway :)
[08:31:23] lpil: Yes! Hi. There's a channel over at #gleam-lang btw
[08:31:38] josevalim: one last question: i think we briefly talked about this in the forum, but why don't you think type classes are a good fit?
[08:31:43] josevalim: more from the typing side of things?
[08:31:45] lpil: Yes, fancy tooling can come after this works more
[08:31:55] Nicd-: thanks for your contributions to the community <3
[08:32:10] Nicd-: Gleam is really interesting and I will definitely try it out in the future
[08:33:10] lpil: Type classes are very slow and use implicit global scope. I want to be explicit and use namespaces.
[08:33:30] lpil: Thank you Nicd- 💜💙💚💛
[08:33:47] lpil: It is a lot of fun
[08:34:30] josevalim: lpil: slow to type check?
[08:34:37] josevalim: implicit global scope -> true
[08:35:28] lpil: The other reason is that I want the the Gleam and generated Erlang to be semantically similar, and I think that works better with implicits
[08:35:45] lpil: Yes, slow to type check. At least how Haskell does it.
[08:36:21] lpil: We could probably avoid most of that work because we don't care about monomorphising as much as they do.
[08:38:04] josevalim: all very good points. i don't think you can do type classes without introducing some work to be done at runtime
[08:38:08] lpil: This is all theory and speculation.
[08:38:23] lpil: Could be wrong. Let's find out :)
[08:38:28] josevalim: lpil: they all make sense because they are very close to the pains on protocols
[08:38:34] josevalim: 1. need to perform consolidation
[08:38:39] josevalim: 2. only a single implementation is possible
[08:39:08] lpil: 3. Hard to use from Erlang
[08:39:23] lpil: I'd like to re-use the behaviour pattern for interop
[08:41:06] josevalim: I would say protocols are actually easy to use from erlang, just a regular function dispatch
[08:41:55] lpil: You can't define implementations I mean
[08:42:03] josevalim: lpil: you totally can!
[08:42:22] josevalim: you can just define the module by hand
[08:42:36] josevalim: deimpl doesn't really do much besides concatenating the names
[08:43:07] lpil: For some reason I thought it built a case expression
[08:43:15] josevalim: that's on the protocol when consolidated
[08:43:19] wonko7: has joined #elixir-lang
[08:43:24] lpil: Oh I see
[08:43:57] josevalim: i think defimpl just 1. concatenates the names and 2. defines a __impl__(:protocol) callback or something similar
[08:44:22] josevalim: most of the work is the consolidation
[08:45:53] lpil: I'll keep that in mind
[08:46:54] josevalim: but i would love to see how implicit modules look like
[08:47:09] josevalim: because i am not super familiar with it
[08:47:21] lpil: Me either really. :)
[08:48:03] 7F1AAMRD4: has joined #elixir-lang
[08:48:06] lpil: I've also got an idea for a classical object system which isn't something I want but I still want to build it because it would be fun :P
[08:55:40] DarkSeid: has joined #elixir-lang
[09:03:10] kyrylo: has joined #elixir-lang
[09:11:29] PragTob: has joined #elixir-lang
[09:33:15] gvaughn: has joined #elixir-lang
[09:37:38] lexmag: has joined #elixir-lang
[09:42:11] gabrielpoca: has joined #elixir-lang
[09:44:43] kyrylo_: has joined #elixir-lang
[09:46:13] DarkSeid: has joined #elixir-lang
[09:48:43] jeffro: has joined #elixir-lang
[09:50:34] gamache: Is there a good syntax for including a regex as part of another regex? https://elixirforum.com/t/interpolating-regex-expressions/3325/3 has an answer but it is unfortunately dead wrong
[10:03:34] lexmag: has joined #elixir-lang
[10:03:55] ur5us: has joined #elixir-lang
[10:05:58] jeffro: has joined #elixir-lang
[10:14:25] iamvery: has joined #elixir-lang
[10:14:39] umamaistempo: has joined #elixir-lang
[10:20:26] umamaistempo: Wow, it has been such a long time since I last wrote elixir code :o
[10:20:49] umamaistempo: I was confused because there was a variable somewhere and I thought it was an atom because erlang :P
[10:20:49] dysfun: it's been literally several seconds here heh
[10:21:43] jeffro: has joined #elixir-lang
[10:23:42] fredsir: has joined #elixir-lang
[10:37:52] jeffro: has joined #elixir-lang
[10:40:25] Saukk: has joined #elixir-lang
[10:50:44] gvaughn: has joined #elixir-lang
[11:03:37] iamvery: has joined #elixir-lang
[11:11:16] craigp: has joined #elixir-lang
[11:14:35] tnez: has joined #elixir-lang
[11:18:52] lexmag: has joined #elixir-lang
[11:44:37] Jetimon: has joined #elixir-lang
[11:45:14] marciol: has joined #elixir-lang
[11:54:12] DarkSeid: has joined #elixir-lang
[11:59:50] gvaughn: has joined #elixir-lang
[11:59:54] DarkSeid: has joined #elixir-lang
[12:13:19] griffinbyatt: has joined #elixir-lang
[12:22:34] voloyev: has joined #elixir-lang
[12:28:47] voloyev: has joined #elixir-lang
[12:29:43] duane: has joined #elixir-lang
[12:31:41] hypercore: has joined #elixir-lang
[12:38:37] jeffro: has joined #elixir-lang
[12:50:47] ariedler: has joined #elixir-lang
[12:53:20] inoas: has joined #elixir-lang
[12:55:34] ariedler: has joined #elixir-lang
[12:55:40] either|or: has joined #elixir-lang
[13:04:14] inoas: has joined #elixir-lang
[13:12:28] gvaughn: has joined #elixir-lang
[13:16:14] lauromoura_: has joined #elixir-lang
[13:19:02] inoas: has joined #elixir-lang
[13:32:10] inoas: has joined #elixir-lang
[13:33:34] edw: At some point I'm going to want to indulge my laziness with autocomplete; is there some Emacs-based analogue to SLIME, CIDER, etc.?
[13:35:50] lpil: edw https://github.com/tonini/alchemist.el :)
[13:36:07] lpil: I've not used it, my poison is neovim, but I've heard good things
[13:36:47] edw: Thanks very much, lpil.
[13:42:59] __charly__: has joined #elixir-lang
[13:43:29] inoas: has joined #elixir-lang
[13:47:48] OliverMT: josevalim: this talk about defimpl made me remember a funny story
[13:48:01] OliverMT: I know Noah Fontes, the guy who has @impl as github handle
[13:48:13] OliverMT: you can imagine how he felt about it when you guys were hashing out that part
[13:48:14] josevalim: tell him i am sorry
[13:48:28] josevalim: both @impl and @spec
[13:48:55] OliverMT: he's here on freenode as impl :D
[13:52:29] KeyJoo: has joined #elixir-lang
[13:53:33] drincruz: has joined #elixir-lang
[13:56:26] Cthalupa: has joined #elixir-lang
[13:58:24] PragTob: has joined #elixir-lang
[13:59:22] wsieroci: has joined #elixir-lang
[14:00:15] __charly__: has joined #elixir-lang
[14:01:25] lizzin: has joined #elixir-lang
[14:01:28] ps: has joined #elixir-lang
[14:01:38] DarkSeid: has joined #elixir-lang
[14:07:00] Cthalupa: has joined #elixir-lang
[14:08:22] gvaughn: has joined #elixir-lang
[14:15:28] jeffro: has joined #elixir-lang
[14:17:49] samrose: has joined #elixir-lang
[14:19:05] kyrylo: has joined #elixir-lang
[14:21:46] Zarathu: OliverMT: he's a cool dude, i've known him irl over a decade
[14:22:39] Zarathu: how do you know him?
[14:28:27] __charly__: has joined #elixir-lang
[14:48:36] lytedev: a handful of folks at the KC user group have had success with the elixir language server with emacs/spacemacs: https://elixirforum.com/t/emacs-elixir-setup-configuration-wiki/19196
[14:49:09] wonko7: has joined #elixir-lang
[15:08:29] warmwaffles: has joined #elixir-lang
[15:20:32] lexmag: has joined #elixir-lang
[15:28:35] davidw: has joined #elixir-lang
[15:29:48] 7GHAANERT: has joined #elixir-lang
[15:53:23] BitBot: has joined #elixir-lang
[15:55:05] OliverMT: Zarathu: drunk shenanigans in socal :) i know his friends
[15:56:59] serafeim: has joined #elixir-lang
[16:05:24] Saukk: has joined #elixir-lang
[16:24:33] vovs03: has joined #elixir-lang
[16:25:41] KeyJoo: has joined #elixir-lang
[16:31:29] orbyt_: has joined #elixir-lang
[16:36:07] sbs_: has joined #elixir-lang
[16:49:52] mattste: has joined #elixir-lang
[16:54:50] impl: has joined #elixir-lang
[16:55:34] impl: josevalim: apology accepted :-) BTW, sometimes i discover really interesting new projects in my inbox so it isn't so bad
[17:04:59] MuffinPimp: has joined #elixir-lang
[17:09:52] DarkSeid: has joined #elixir-lang
[17:12:48] lizzin: has joined #elixir-lang
[17:22:04] lexmag: has joined #elixir-lang
[17:22:57] voltone: has joined #elixir-lang
[17:25:55] markh: has joined #elixir-lang
[17:37:41] orbyt_: has joined #elixir-lang
[17:37:45] lizzin_: has joined #elixir-lang
[17:37:47] MuffinPimp: has joined #elixir-lang
[17:53:15] lexmag: has joined #elixir-lang
[17:57:16] umamaistempo: has joined #elixir-lang
[18:02:52] squalloster: has joined #elixir-lang
[18:07:35] squall: has joined #elixir-lang
[18:14:38] aalmazan: has joined #elixir-lang
[18:23:34] orbyt_: has joined #elixir-lang
[18:25:50] wsieroci: has joined #elixir-lang
[18:35:17] markh2: has joined #elixir-lang
[18:40:07] lexmag: has joined #elixir-lang
[18:46:43] lexmag: has joined #elixir-lang
[18:51:03] mahmudov: has joined #elixir-lang
[18:54:38] Jetimon: has joined #elixir-lang
[18:56:43] lexmag: has joined #elixir-lang
[19:05:17] paxis: has joined #elixir-lang
[19:11:04] infowolfe: has joined #elixir-lang
[19:11:04] infowolfe: has joined #elixir-lang
[19:20:07] lexmag: has joined #elixir-lang
[19:22:17] orbyt_: has joined #elixir-lang
[19:24:33] ariedler: has joined #elixir-lang
[19:35:29] netrino: has joined #elixir-lang
[19:41:54] duane: has joined #elixir-lang
[19:46:42] lexmag: has joined #elixir-lang
[19:50:13] DarkSeid: has joined #elixir-lang
[19:55:27] ur5us: has joined #elixir-lang
[20:02:47] kapil____: has joined #elixir-lang
[20:05:54] netrino: has joined #elixir-lang
[20:12:56] netrino_: has joined #elixir-lang
[20:14:11] orbyt_: has joined #elixir-lang
[20:15:49] work_: has joined #elixir-lang
[20:23:08] lizzin: has joined #elixir-lang
[20:37:15] orbyt_: has joined #elixir-lang
[20:42:22] gvaughn: has joined #elixir-lang
[21:09:34] lexmag_: has joined #elixir-lang
[21:21:54] ariedler: has joined #elixir-lang
[21:29:16] mattste: has joined #elixir-lang
[21:57:24] mattste: has joined #elixir-lang
[22:06:23] ur5us_: has joined #elixir-lang
[22:13:08] rhbvkleef: has joined #elixir-lang
[22:15:04] gremly_: has joined #elixir-lang
[22:16:53] Sgeo: has joined #elixir-lang
[22:22:19] mattste: has joined #elixir-lang
[22:26:20] gvaughn_: has joined #elixir-lang
[22:32:33] orbyt_: has joined #elixir-lang
[22:43:47] lizzin: has joined #elixir-lang
[23:38:16] craigp: has joined #elixir-lang
[23:49:18] gvaughn: has joined #elixir-lang