lfe-deprecated / lfetool

DEPRECATED - See:
https://github.com/lfe-rebar3/
Other
61 stars 19 forks source link

Difficulties getting started; can't get to a working REPL #163

Open lvh opened 9 years ago

lvh commented 9 years ago

So, today, I wanted to do some LFE on my shiny new Mac. The README suggested lfetool, and I knew you wrote it, so it's probably cool software. Being a lisper, what I really want is a REPL.

On we go:

$ curl -L -o ./lfetool https://raw.github.com/lfe/lfetool/stable/lfetool
$ bash lfetool install

After that, lfetool repl didn't quite work, but it told me to extract something. Apparently there's a ticket for making it autoextract; I think that'd be nice. I did lfetool -x and it appears to have worked, because the second time I run it, I get:

/u/l/bin: lfetool -x
Script has already been extracted.

I tried to get a REPL going, and discerned from the error messages that I still needed to manually install Erlang and rebar. That's fine; its probably better if it doesn't try to install its own erl. So, I do that, and then I'm at:

/u/l/bin: lfetool repl                                                                                                                                                                              09:19:17
find: ./deps: No such file or directory
/usr/local/bin/lfetool: line 1139: lfe: command not found

OK, so I don't have lfe. lfetool install lfe sounds like a thing. That appears to work successfully, but really only produced a bunch of broken links in my /usr/local/bin:

/u/l/bin: ls -la | grep lfe                                                                                                                                                                         09:22:23
lrwxr-xr-x    1 lvh   admin        16 Jan 25 09:10 lfe -> /tmp/lfe/bin/lfe
lrwxr-xr-x    1 lvh   admin        17 Jan 25 09:10 lfec -> /tmp/lfe/bin/lfec
lrwxr-xr-x    1 lvh   admin        22 Jan 25 09:10 lfescript -> /tmp/lfe/bin/lfescript

Hm. Okay, so, let's get rid of those. Maybe lfetool is of the Clojurelike opinion that lfe itself is a dep and it gets installed in a project. That'd be sensible. lfetool new looks like a thing for that.

 * new
   * script, library, service, presentation
   * yaws
     * default (or no parameter/empty string), bootstrap

I... I don't know which one of those I want. I wanted a REPL to evaluate (+ 1 1) in.

So, I make a directory, and do lfetool new script helloworld. That did a thing. Maybe I should install lfetool into this directory?

~/P/helloworld: lfetool install lfe                                                                                                                                                                 09:26:10
fatal: destination path 'lfe' already exists and is not an empty directory.

... OK, so I guess it doesn't just go by the symlinks, and lfe is actually installed somewhere. I don't know where it's installed, but I should probably get rid of it, since I can't actually get it to work. Hm.

Okay, let's make a library instead.

~/Projects: lfetool new library helloworld                                                                                                                                                          09:28:13
Setting up starter library project helloworld ...
Initialized empty Git repository in /Users/lvh/Projects/helloworld/.git/
Removing EUnit test files ...
rm: ./.eunit/*.beam: No such file or directory
make: [clean-eunit] Error 1 (ignored)
Getting dependencies ...
WARN:  Expected /Users/lvh/Projects/helloworld/deps/lfe to be an app dir (containing ebin/*.app), but no .app found.
WARN:  Expected /Users/lvh/Projects/helloworld/deps/lutil to be an app dir (containing ebin/*.app), but no .app found.
WARN:  Expected /Users/lvh/Projects/helloworld/deps/ltest to be an app dir (containing ebin/*.app), but no .app found.
==> helloworld (get-deps)
WARN:  Expected /Users/lvh/Projects/helloworld/deps/lfe to be an app dir (containing ebin/*.app), but no .app found.
WARN:  Expected /Users/lvh/Projects/helloworld/deps/lutil to be an app dir (containing ebin/*.app), but no .app found.
WARN:  Expected /Users/lvh/Projects/helloworld/deps/ltest to be an app dir (containing ebin/*.app), but no .app found.
Pulling lfe from {git,"git://github.com/rvirding/lfe.git",{tag,"v0.9.0"}}
Cloning into 'lfe'...

Pulling lutil from {git,"https://github.com/lfex/lutil.git",{tag,"0.5.1"}}
Cloning into 'lutil'...
Pulling ltest from {git,"git://github.com/lfex/ltest.git",{tag,"0.4.1"}}
Cloning into 'ltest'...
==> lfe (get-deps)
==> ltest (get-deps)
==> lutil (get-deps)
Cleaning ebin dir ...
Compiling project code and dependencies ...
==> lfe (compile)
Compiled src/lfe_scan.xrl
Compiled src/lfe_scan.erl
Compiled src/lfe_lib.erl
Compiled src/lfe_env.erl
Compiled src/lfescript.erl
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_shell.erl:139: Warning: function new_state/2 is unused
Compiled src/lfe_shell.erl
Compiled src/lfe_pmod.erl
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_parse.erl:129: Warning: the guard for this clause evaluates to 'false'
Compiled src/lfe_parse.erl
Compiled src/lfe_trans.erl
Compiled src/lfe_macro_record.erl
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_ms.erl:302: Warning: function fetch_binding/2 is unused
Compiled src/lfe_ms.erl
Compiled src/lfe_macro_include.erl
Compiled src/lfe_lint.erl
Compiled src/lfe_macro.erl
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_io_pretty.erl:86: Warning: the guard for this clause evaluates to 'false'
Compiled src/lfe_io_pretty.erl
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_io.erl:165: Warning: the guard for this clause evaluates to 'false'
Compiled src/lfe_io.erl
Compiled src/lfe_init.erl
Compiled src/lfe_io_format.erl
Compiled src/lfe_gen.erl
Compiled src/lfe_comp.erl
Compiled src/lfe_qlc.erl
Compiled src/lfe_bits.erl
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:128: Warning: variable 'M' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:132: Warning: variable 'M' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:485: Warning: function init_letrec_env/1 is unused
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:491: Warning: function extend_letrec_env/3 is unused
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:491: Warning: variable 'Fbs0' is unused
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:760: Warning: variable 'M' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:764: Warning: variable 'M' shadowed in 'fun'
Compiled src/lfe_eval.erl
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:225: Warning: variable 'St' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:232: Warning: variable 'St' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:237: Warning: variable 'St' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:288: Warning: variable 'L' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:288: Warning: variable 'St' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:295: Warning: variable 'Env' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:295: Warning: variable 'L' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:295: Warning: variable 'St' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:359: Warning: function lambda_arity/1 is unused
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:730: Warning: variable 'L' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:786: Warning: variable 'Env' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:786: Warning: variable 'L' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:885: Warning: variable 'L' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:903: Warning: variable 'St' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:910: Warning: variable 'St' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:915: Warning: variable 'St' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:939: Warning: variable 'Env' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:939: Warning: variable 'L' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:939: Warning: variable 'St' shadowed in 'fun'
/Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:1214: Warning: the guard for this clause evaluates to 'false'
Compiled src/lfe_codegen.erl
Compiling c_src/lfeexec.c
==> ltest (compile)
Compiled src/ltest-unit.lfe
Compiled src/ltest-util.lfe
Compiled src/ltest-system.lfe
Compiled src/ltest-integration.lfe
Compiled src/ltest.lfe
==> lutil (compile)
Compiled src/lutil-text.lfe
Compiled src/lutil.lfe
Compiled src/lutil-type.lfe
Compiled src/lutil-file.lfe
Compiled src/lutil-math.lfe
==> helloworld (compile)
Compiled src/helloworld.lfe
Compiled src/helloworld-util.lfe
Removing old tests ...
rm -rf ./.eunit
mkdir: created directory ./.eunit
Compiling tests ...
Successfully compiled test modules.

------------------
Running unit tests ...
------------------

======================== EUnit ========================
unit-helloworld-tests: my-adder-test ...[failed]
in function 'unit-helloworld-tests':'my-adder-test'/0
**error:{assertEqual-failed,[{module,'unit-helloworld-tests'},
          {line,11},
          {expression,"(: helloworld my-adder 2 2)"},
          {expected,4},
          {value,5}]}
=======================================================
  Failed: 1.  Skipped: 0.  Passed: 0.
make: *** [check-unit-only] Error 127

Yes! That did a thing.

~/P/helloworld: lfetool repl                                                                                                                                                                        09:29:03
Erlang/OTP 17 [erts-6.3] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]

LFE Shell V6.3 (abort with ^G)
> (+ 1 1)
2
>

SUCCESS!

So, all I'm trying to say is that this wasn't obvious to me. I'd like to help make it more obvious to the next guy. How are you supposed to do this, how can we streamline this process, and where the heck did that lfe install actually go?

oubiwann commented 9 years ago

Yikes. I'll go through this carefully when I get some time -- hopefully later today.

lfetool was originally created to not only create new skeleton projects, but to do a bunch of things automatically that LFE didn't do (e.g., adding library paths to ERL_LIBS, etc.). There wasn't a very good install story for lfe at that point, either.

LFE proper has come a long way in the past two years, integrating more and more conveniences (with more to come, very soon -- @rvirding's working on some additions that will obsolete many lines of lfetool and associated Makefiles.

As such, we need to update the LFE README to remove the reference to lfetool -- it's super-easy to jump into LFE now without having to use lfetool to set things up. In fact, I've updated teh official Quick Start for LFE to no longer reference lfetool (though there is a Quick Start for LFE that does use lfetool, and that's the one that focuses on creating projects, TDD, etc.)

In summary, thanks for your input! We're actively trying to get the first-time-user experience polished and consistent (I'm spending most of my time these days on LFE docs and related materials). Your report will be very useful in making sure we get this nailed down :-)

On Sun, Jan 25, 2015 at 11:29 AM, lvh notifications@github.com wrote:

So, today, I wanted to do some LFE on my shiny new Mac. The README suggested lfetool, and I knew you wrote it, so it's probably cool software. Being a lisper, what I really want is a REPL.

On we go:

$ curl -L -o ./lfetool https://raw.github.com/lfe/lfetool/stable/lfetool $ bash lfetool install

After that, lfetool repl didn't quite work, but it told me to extract something. Apparently there's a ticket for making it autoextract; I think that'd be nice. I did lfetool -x and it appears to have worked, because the second time I run it, I get:

/u/l/bin: lfetool -x Script has already been extracted.

I tried to get a REPL going, and discerned from the error messages that I still needed to manually install Erlang and rebar. That's fine; its probably better if it doesn't try to install its own erl. So, I do that, and then I'm at:

/u/l/bin: lfetool repl 09:19:17 find: ./deps: No such file or directory /usr/local/bin/lfetool: line 1139: lfe: command not found

OK, so I don't have lfe. lfetool install lfe sounds like a thing. That appears to work successfully, but really only produced a bunch of broken links in my /usr/local/bin:

/u/l/bin: ls -la | grep lfe 09:22:23 lrwxr-xr-x 1 lvh admin 16 Jan 25 09:10 lfe -> /tmp/lfe/bin/lfe lrwxr-xr-x 1 lvh admin 17 Jan 25 09:10 lfec -> /tmp/lfe/bin/lfec lrwxr-xr-x 1 lvh admin 22 Jan 25 09:10 lfescript -> /tmp/lfe/bin/lfescript

Hm. Okay, so, let's get rid of those. Maybe lfetool is of the Clojurelike opinion that lfe itself is a dep and it gets installed in a project. That'd be sensible. lfetool new looks like a thing for that.

  • new
    • script, library, service, presentation
    • yaws
    • default (or no parameter/empty string), bootstrap

I... I don't know which one of those I want. I wanted a REPL to evaluate (+ 1 1) in.

So, I make a directory, and do lfetool new script helloworld. That did a thing. Maybe I should install lfetool into this directory?

~/P/helloworld: lfetool install lfe 09:26:10 fatal: destination path 'lfe' already exists and is not an empty directory.

... OK, so I guess it doesn't just go by the symlinks, and lfe is actually installed somewhere. I don't know where it's installed, but I should probably get rid of it, since I can't actually get it to work. Hm.

Okay, let's make a library instead.

~/Projects: lfetool new library helloworld 09:28:13 Setting up starter library project helloworld ... Initialized empty Git repository in /Users/lvh/Projects/helloworld/.git/ Removing EUnit test files ... rm: ./.eunit/.beam: No such file or directory make: [clean-eunit] Error 1 (ignored) Getting dependencies ... WARN: Expected /Users/lvh/Projects/helloworld/deps/lfe to be an app dir (containing ebin/.app), but no .app found. WARN: Expected /Users/lvh/Projects/helloworld/deps/lutil to be an app dir (containing ebin/.app), but no .app found. WARN: Expected /Users/lvh/Projects/helloworld/deps/ltest to be an app dir (containing ebin/.app), but no .app found. ==> helloworld (get-deps) WARN: Expected /Users/lvh/Projects/helloworld/deps/lfe to be an app dir (containing ebin/.app), but no .app found. WARN: Expected /Users/lvh/Projects/helloworld/deps/lutil to be an app dir (containing ebin/.app), but no .app found. WARN: Expected /Users/lvh/Projects/helloworld/deps/ltest to be an app dir (containing ebin/*.app), but no .app found. Pulling lfe from {git,"git://github.com/rvirding/lfe.git",{tag,"v0.9.0"}} Cloning into 'lfe'...

Pulling lutil from {git,"https://github.com/lfex/lutil.git",{tag,"0.5.1"}} Cloning into 'lutil'... Pulling ltest from {git,"git://github.com/lfex/ltest.git",{tag,"0.4.1"}} Cloning into 'ltest'... ==> lfe (get-deps) ==> ltest (get-deps) ==> lutil (get-deps) Cleaning ebin dir ... Compiling project code and dependencies ... ==> lfe (compile) Compiled src/lfe_scan.xrl Compiled src/lfe_scan.erl Compiled src/lfe_lib.erl Compiled src/lfe_env.erl Compiled src/lfescript.erl /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_shell.erl:139: Warning: function new_state/2 is unused Compiled src/lfe_shell.erl Compiled src/lfe_pmod.erl /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_parse.erl:129: Warning: the guard for this clause evaluates to 'false' Compiled src/lfe_parse.erl Compiled src/lfe_trans.erl Compiled src/lfe_macro_record.erl /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_ms.erl:302: Warning: function fetch_binding/2 is unused Compiled src/lfe_ms.erl Compiled src/lfe_macro_include.erl Compiled src/lfe_lint.erl Compiled src/lfe_macro.erl /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_io_pretty.erl:86: Warning: the guard for this clause evaluates to 'false' Compiled src/lfe_io_pretty.erl /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_io.erl:165: Warning: the guard for this clause evaluates to 'false' Compiled src/lfe_io.erl Compiled src/lfe_init.erl Compiled src/lfe_io_format.erl Compiled src/lfe_gen.erl Compiled src/lfe_comp.erl Compiled src/lfe_qlc.erl Compiled src/lfe_bits.erl /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:128: Warning: variable 'M' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:132: Warning: variable 'M' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:485: Warning: function init_letrec_env/1 is unused /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:491: Warning: function extend_letrec_env/3 is unused /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:491: Warning: variable 'Fbs0' is unused /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:760: Warning: variable 'M' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_eval.erl:764: Warning: variable 'M' shadowed in 'fun' Compiled src/lfe_eval.erl /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:225: Warning: variable 'St' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:232: Warning: variable 'St' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:237: Warning: variable 'St' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:288: Warning: variable 'L' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:288: Warning: variable 'St' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:295: Warning: variable 'Env' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:295: Warning: variable 'L' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:295: Warning: variable 'St' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:359: Warning: function lambda_arity/1 is unused /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:730: Warning: variable 'L' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:786: Warning: variable 'Env' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:786: Warning: variable 'L' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:885: Warning: variable 'L' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:903: Warning: variable 'St' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:910: Warning: variable 'St' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:915: Warning: variable 'St' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:939: Warning: variable 'Env' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:939: Warning: variable 'L' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:939: Warning: variable 'St' shadowed in 'fun' /Users/lvh/Projects/helloworld/deps/lfe/src/lfe_codegen.erl:1214: Warning: the guard for this clause evaluates to 'false' Compiled src/lfe_codegen.erl Compiling c_src/lfeexec.c ==> ltest (compile) Compiled src/ltest-unit.lfe Compiled src/ltest-util.lfe Compiled src/ltest-system.lfe Compiled src/ltest-integration.lfe Compiled src/ltest.lfe ==> lutil (compile) Compiled src/lutil-text.lfe Compiled src/lutil.lfe Compiled src/lutil-type.lfe Compiled src/lutil-file.lfe Compiled src/lutil-math.lfe ==> helloworld (compile) Compiled src/helloworld.lfe Compiled src/helloworld-util.lfe Removing old tests ... rm -rf ./.eunit mkdir: created directory ./.eunit Compiling tests ... Successfully compiled test modules.


Running unit tests ...

======================== EUnit ======================== unit-helloworld-tests: my-adder-test ...[failed] in function 'unit-helloworld-tests':'my-adder-test'/0 **error:{assertEqual-failed,[{module,'unit-helloworld-tests'}, {line,11}, {expression,"(: helloworld my-adder 2 2)"}, {expected,4},

{value,5}]}

Failed: 1. Skipped: 0. Passed: 0. make: *\ [check-unit-only] Error 127

Yes! That did a thing.

~/P/helloworld: lfetool repl 09:29:03 Erlang/OTP 17 [erts-6.3] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]

LFE Shell V6.3 (abort with ^G)

(+ 1 1) 2

SUCCESS!

So, all I'm trying to say is that this wasn't obvious to me. I'd like to help make it more obvious to the next guy. How are you supposed to do this, how can we streamline this process, and where the heck did that lfe install actually go?

— Reply to this email directly or view it on GitHub https://github.com/lfe/lfetool/issues/163.

lvh commented 9 years ago

No worries, man; hope I didn't come off as too critical. Just trying to make this a bit nicer :)

Since rebar and erlang are already in brew, maybe the best way for me to contribute would be an lfe/lfetool recipe?

oubiwann commented 9 years ago

Holy cow, that would be awesome!

On Sun, Jan 25, 2015 at 1:49 PM, lvh notifications@github.com wrote:

No worries, man; hope I didn't come off as too critical. Just trying to make this a bit nicer :)

Since rebar and erlang are already in brew, maybe the best way for me to contribute would be an lfe/lfetool recipe?

— Reply to this email directly or view it on GitHub https://github.com/lfe/lfetool/issues/163#issuecomment-71388928.

lvh commented 9 years ago

FYI, the quick start that I found was:

http://lfe.io/quick-start/1.html

... which definitely still seems to suggest lfetool as a thing you should preferentially use. Maybe I was just primed by osmosis from all the stuff you posted into seeing lfetool and no longer reading things at that point :-)

Would lfetool -> lfe -> (erlang, rebar) be a good dependency chain? I.e. does it ever make sense to have lfetool installed on your machine with brew but not have lfe?

oubiwann commented 9 years ago

On Sun, Jan 25, 2015 at 1:59 PM, lvh notifications@github.com wrote:

FYI, the quick start that I found was:

http://lfe.io/quick-start/1.html

... which definitely still seems to suggest lfetool as a thing you should preferentially use.

Huh. That's odd -- it should have been pointed to the new one. That looks like the version that was pushed to staging a while ago.

Need to get that fixed.

Maybe I was just primed by osmosis from all the stuff you posted into seeing lfetool and no longer reading things at that point :-)

No, you've just come into it at a time of transition :-) We're trying to get things sorted ...

Would lfetool -> lfe -> (erlang, rebar) be a good dependency chain? I.e. does it ever make sense to have lfetool installed on your machine with brew but not have lfe?

No, that would never make sense. The best and most useful parts of lfetool depend upon lfe or doing things with lfe.

— Reply to this email directly or view it on GitHub https://github.com/lfe/lfetool/issues/163#issuecomment-71389555.

oubiwann commented 9 years ago

On Sun, Jan 25, 2015 at 1:59 PM, lvh notifications@github.com wrote:

FYI, the quick start that I found was:

http://lfe.io/quick-start/1.html

... which definitely still seems to suggest lfetool as a thing you should preferentially use. Maybe I was just primed by osmosis from all the stuff you posted into seeing lfetool and no longer reading things at that point :-)

I should be more clear:

1) lfetool is not going away and will remain the tool to use for such things as creating new projects, performing non-LFE installs of other tools, etc., (a one-stop-shop for the LFE hacker, in other words). 2) LFE is incorporating more of the conveniences originally provided by lfetool, as they pertain specifically to LFE

So, if your first and foremost original intention was simply to get into an LFE REPL as soon as possible, you needn't have bothered with lfetool.

This will be much more clear when I figure out what's wrong with the Quick Start deployment, as it should really point (and redirect) here:

Huh. Okay, so the docs.lfe.io site does, in fact, point there. I thought that wasn't working. That's good news; now to make that experience consistent ...

Do you remember how you got to http://lfe.io/quick-start/1.html?

Would lfetool -> lfe -> (erlang, rebar) be a good dependency chain? I.e. does it ever make sense to have lfetool installed on your machine with brew but not have lfe?

— Reply to this email directly or view it on GitHub https://github.com/lfe/lfetool/issues/163#issuecomment-71389555.

lvh commented 9 years ago

I thought I got there from lfe.io, but can't find whence now.

oubiwann commented 9 years ago

On Sun, Jan 25, 2015 at 3:03 PM, Duncan McGreggor duncan@cogitat.io wrote:

Huh. Okay, so the docs.lfe.io site does, in fact, point there. I thought that wasn't working. That's good news; now to make that experience consistent ...

Okay, I've just updated most of the old redirects to point to the Quick Start gitbook.

Let me know if you find anything pointing to the old one still ...

lvh commented 9 years ago

Awesome, thanks! I'm working on the lfe homebrew formula here, but so far it's been less than trivial. I'll let you know :)