Rewrite without parenthesis

How do you rewrite head (tail [1,2,3]) without parenthesis. Thanks!

Francesco, you missed a piece. 'head' is part of the expression. :) What
Carl is looking for is one or the other of these:
head $ tail [1,2,3]
-- or --
head . tail $ [1,2,3]
The first one is shorter and fine for inlining, but I generally prefer the
second form... it helps intuition about eta reduction, refactoring, and
additional composition.
On Aug 18, 2016 5:19 AM, "Francesco Ariis"
On Thu, Aug 18, 2016 at 05:03:21AM -0700, Carl Petersen wrote:
How do you rewrite head (tail [1,2,3]) without parenthesis.
Hello Carl, simply
λ> tail [1,2,3] [2,3]
will do! Haskell is not a Lisp, no need to wrap expressions around (). _______________________________________________ Haskell-Cafe mailing list To (un)subscribe, modify options or view archives go to: http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only members subscribed via the mailman list are allowed to post.

On Thu, Aug 18, 2016 at 05:29:34AM -0700, Theodore Lief Gannon wrote:
Francesco, you missed a piece. 'head' is part of the expression. :) What Carl is looking for is one or the other of these:
head $ tail [1,2,3] -- or -- head . tail $ [1,2,3]
The first one is shorter and fine for inlining, but I generally prefer the second form... it helps intuition about eta reduction, refactoring, and additional composition.
Welp, silly me! :P

On 18 August 2016 at 22:29, Theodore Lief Gannon
Francesco, you missed a piece. 'head' is part of the expression. :) What Carl is looking for is one or the other of these:
head $ tail [1,2,3] -- or -- head . tail $ [1,2,3]
Or for this specific use case, [1,2,3] !! 1 ==> (!!1) [1,2,3]
The first one is shorter and fine for inlining, but I generally prefer the second form... it helps intuition about eta reduction, refactoring, and additional composition.
On Aug 18, 2016 5:19 AM, "Francesco Ariis"
wrote: On Thu, Aug 18, 2016 at 05:03:21AM -0700, Carl Petersen wrote:
How do you rewrite head (tail [1,2,3]) without parenthesis.
Hello Carl, simply
λ> tail [1,2,3] [2,3]
will do! Haskell is not a Lisp, no need to wrap expressions around (). _______________________________________________ Haskell-Cafe mailing list To (un)subscribe, modify options or view archives go to: http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only members subscribed via the mailman list are allowed to post.
_______________________________________________ Haskell-Cafe mailing list To (un)subscribe, modify options or view archives go to: http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only members subscribed via the mailman list are allowed to post.
-- Ivan Lazar Miljenovic Ivan.Miljenovic@gmail.com http://IvanMiljenovic.wordpress.com

Hi,
Do you want to apply tail and then head on the list?
If so, you can write:
head $ tail [1, 2, 3]
Besides the dollar opeartor there is a dot (.) operator. You can read more
here:
http://stackoverflow.com/questions/940382/haskell-difference-between-dot-and...
Regards,
Daniel
On Thu, Aug 18, 2016 at 2:19 PM Francesco Ariis
On Thu, Aug 18, 2016 at 05:03:21AM -0700, Carl Petersen wrote:
How do you rewrite head (tail [1,2,3]) without parenthesis.
Hello Carl, simply
λ> tail [1,2,3] [2,3]
will do! Haskell is not a Lisp, no need to wrap expressions around (). _______________________________________________ Haskell-Cafe mailing list To (un)subscribe, modify options or view archives go to: http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only members subscribed via the mailman list are allowed to post.

How do you rewrite head (tail [1,2,3]) without parenthesis. s/parenthesis/parentheses/
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 On 19/08/16 02:46, Richard A. O'Keefe wrote: head . tail $ [1, 2, 3] --) - -- Alexander alexander@plaimi.net https://secure.plaimi.net/~alexander -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCgAGBQJXtwZ7AAoJENQqWdRUGk8Bb00P/jhJoUQTh3dCCLqbJHGJm1+x Cvh+DOXMWoQyQcEvOh9u6DruqpnLRGgzcqDVzUOmqM2rwwkt7kznF7vzof5mCcXx UPb9W0X7OI6oMFmvg2Xp9gDxTcQinTfaLDyyKRZzRV5xj+On00xtso8SjriVh2HO ubzQLVs0kxt3irX+7orvz3JmHDiiVnfMVR6bC+TfJE7gnrIjtJH5jxkZP+Os10tC fHOEa0jhRY8E8BR9nbzOhcw2/3HZeQLSek3MIFxvAtgyYT67JprJwKwLbslGHcKV YS7kHL8BEOb+rJbIi3RHyVNwSnYi0hc0WkwrQo4CI7yr2HloAwewMuMPwMHjmNRS CAmWry4lVO+NFAaRnnVCLkXqxUjOKeIs3D5Fin0DTxgfetp245RuHuYiMTiGV/yf 0eSX2QjPf4sNFutOHbUdgwmyLwZJRUFxgdOt2cYQ/keRPSdARjG8vf83rriBqCkB QNbQgC3M1w8zQ4sSeHvQUtYHAPBjyj8JHpQ1yFfy8g3DNyr7950IXalGPHNwvqZJ HGILbKJfMb+bB0n0/9rzsFz8gdXKt/9JvysYEg6VP4TWUaNIhSNoKLGXQsNYLFMB QFYN+byKb4JQVnPT8ojRS7btBcs3m9oAfiu2d+4rK6z9x31TjPMNiQUcNp8Vlmvb Tb9wd51A4uJARO/eja3O =UMCW -----END PGP SIGNATURE-----
participants (8)
-
Alexander Berntsen
-
Carl Petersen
-
Daniel Berecz
-
Francesco Ariis
-
Ivan Lazar Miljenovic
-
Michael Orlitzky
-
Richard A. O'Keefe
-
Theodore Lief Gannon