Send Beginners mailing list submissions to beginners@haskell.org To subscribe or unsubscribe via the World Wide Web, visit http://www.haskell.org/mailman/listinfo/beginners or, via email, send a message with subject or body 'help' to beginners-requ...@haskell.org
You can reach the person managing the list at beginners-ow...@haskell.org When replying, please edit your Subject line so it is more specific than "Re: Contents of Beginners digest..." Today's Topics: 1. Re: (no subject) (Jamie F Olson) 2. Re: (no subject) (Brandon Allbery) 3. Re: can't make distribution, requires rerunning ./configure (Karl Voelker) 4. Re: (no subject) (Daniel Trstenjak) ---------------------------------------------------------------------- Message: 1 Date: Thu, 28 Mar 2013 22:34:26 +0000 (UTC) From: Jamie F Olson <jamie.f.ol...@gmail.com> Subject: Re: [Haskell-beginners] (no subject) To: beginners@haskell.org Message-ID: <loom.20130328t233341-...@post.gmane.org> Content-Type: text/plain; charset=us-ascii David McBride <toad3k <at> gmail.com> writes: > > data JSValue = ... | JSObject (JSObject JSValue) | ... > Thank you! I think the two strange things as an outsider particularly from more OO languages are that types aren't objects, and then the strangeness of the naming convention. Would it have been legal to define data JSValue as something like this instead? data JSValue = JSValue | JSValue !Bool | JSValue !Rational | JSValue JSString | JSValue [JSValue] | JSValue (JSObject JSValue) ------------------------------ Message: 2 Date: Thu, 28 Mar 2013 18:38:41 -0400 From: Brandon Allbery <allber...@gmail.com> Subject: Re: [Haskell-beginners] (no subject) To: The Haskell-Beginners Mailing List - Discussion of primarily beginner-level topics related to Haskell <beginners@haskell.org> Message-ID: <CAKFCL4XMO_r=pvsykpct08vyb8ap5za3enjvams1levzdgo...@mail.gmail.com> Content-Type: text/plain; charset="utf-8" On Thu, Mar 28, 2013 at 6:34 PM, Jamie F Olson <jamie.f.ol...@gmail.com>wrote: > Would it have been legal to define data JSValue as something like this > instead? > > data JSValue > = JSValue > | JSValue !Bool > | JSValue !Rational > | JSValue JSString > | JSValue [JSValue] > | JSValue (JSObject JSValue) No; the data constructor used tells it what to expect afterward. -- brandon s allbery kf8nh sine nomine associates allber...@gmail.com ballb...@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://www.haskell.org/pipermail/beginners/attachments/20130328/4258f873/attachment-0001.htm> ------------------------------ Message: 3 Date: Fri, 29 Mar 2013 00:05:07 -0700 From: Karl Voelker <ktvoel...@gmail.com> Subject: Re: [Haskell-beginners] can't make distribution, requires rerunning ./configure To: The Haskell-Beginners Mailing List - Discussion of primarily beginner-level topics related to Haskell <beginners@haskell.org> Message-ID: <CAFfow0y4eMGdVTAVgAdj0FNh0qo2L1dVjwAu=Ro6AnX7Hw=o...@mail.gmail.com> Content-Type: text/plain; charset="iso-8859-1" This isn't exactly an answer to your question, but have you considered using the Haskell Platform (which is recommended for most purposes) or a GHC binary package? http://www.haskell.org/platform/ http://www.haskell.org/ghc/download_ghc_7_6_2#binaries -Karl On Thu, Mar 28, 2013 at 9:37 AM, Josh Stratton <strattonbra...@gmail.com>wrote: > I recently downloaded the ghc distribution for Linux (x86_64) and had > difficulty installing to my machine. The configure step seems to have > completed successfully, but when I run the followup "make install", it > fails suggesting that I haven't run the configure command yet. > > atlas => ./configure --prefix=/opt/ghc > checking for path to top of build tree... /tmp/ghc-7.6.2 > Build platform inferred as: x86_64-unknown-linux > Host platform inferred as: x86_64-unknown-linux > Target platform inferred as: x86_64-unknown-linux > GHC build : x86_64-unknown-linux > GHC host : x86_64-unknown-linux > GHC target : x86_64-unknown-linux > checking for perl... /rel/map/generic-2012.18.last/bin/perl > checking if your perl works in shell scripts... yes > checking for a BSD-compatible install... /usr/bin/install -c > checking whether ln -s works... yes > checking for gsed... sed > checking for gcc... /usr/bin/gcc > checking for gcc... /usr/bin/gcc > checking whether the C compiler works... yes > checking for C compiler default output file name... a.out > checking for suffix of executables... > checking whether we are cross compiling... no > checking for suffix of object files... o > checking whether we are using the GNU C compiler... yes > checking whether /usr/bin/gcc accepts -g... yes > checking for /usr/bin/gcc option to accept ISO C89... none needed > checking version of gcc... 4.4.6 > checking how to run the C preprocessor... /usr/bin/gcc -E > checking whether ld understands --hash-size=31... > checking whether ld understands --reduce-memory-overheads... > checking for extra options to pass gcc when compiling via C... -fwrapv > checking Setting up CFLAGS, LDFLAGS, IGNORE_LINKER_LD_FLAGS and > CPPFLAGS... done > checking Setting up CONF_CC_OPTS_STAGE0, CONF_GCC_LINKER_OPTS_STAGE0, > CONF_LD_LINKER_OPTS_STAGE0 and CONF_CPP_OPTS_STAGE0... done > checking Setting up CONF_CC_OPTS_STAGE1, CONF_GCC_LINKER_OPTS_STAGE1, > CONF_LD_LINKER_OPTS_STAGE1 and CONF_CPP_OPTS_STAGE1... done > checking Setting up CONF_CC_OPTS_STAGE2, CONF_GCC_LINKER_OPTS_STAGE2, > CONF_LD_LINKER_OPTS_STAGE2 and CONF_CPP_OPTS_STAGE2... done > checking for .subsections_via_symbols... no > checking whether your assembler supports .ident directive... yes > checking for GNU non-executable stack support... yes > checking for grep that handles long lines and -e... /bin/grep > checking for egrep... /bin/grep -E > checking for ANSI C header files... yes > checking for sys/types.h... yes > checking for sys/stat.h... yes > checking for stdlib.h... yes > checking for string.h... yes > checking for memory.h... yes > checking for strings.h... yes > checking for inttypes.h... yes > checking for stdint.h... yes > checking for unistd.h... yes > checking size of void *... 8 > checking for ar... /usr/bin/ar > checking whether /usr/bin/ar is GNU ar... yes > checking for ar arguments... q > checking whether ranlib is needed... no > configure: creating ./config.status > config.status: creating settings > config.status: creating mk/config.mk > config.status: creating mk/install.mk > **************************************************** > Configuration done, ready to 'make install' > (see README and INSTALL files for more info.) > **************************************************** > > atlas => make > install > make -r --no-print-directory -f ghc.mk install BINDIST=YES > NO_INCLUDE_DEPS=YES > ghc.mk:122: *** Please run ./configure first. Stop. > make: *** [install] Error 2 > > > _______________________________________________ > Beginners mailing list > Beginners@haskell.org > http://www.haskell.org/mailman/listinfo/beginners > > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://www.haskell.org/pipermail/beginners/attachments/20130329/0625fdea/attachment-0001.htm> ------------------------------ Message: 4 Date: Fri, 29 Mar 2013 10:20:26 +0100 From: Daniel Trstenjak <daniel.trsten...@gmail.com> Subject: Re: [Haskell-beginners] (no subject) To: beginners@haskell.org Message-ID: <20130329092026.GA2542@machine> Content-Type: text/plain; charset=us-ascii Hi Jamie, On Thu, Mar 28, 2013 at 10:34:26PM +0000, Jamie F Olson wrote: > Thank you! I think the two strange things as an outsider particularly from > more > OO languages are that types aren't objects, and then the strangeness of the > naming convention. In C++ you could have something like: class JSObject { public: typedef std::map<std::string, JSValue> Map_t; static JSObject JSONObject(const Map_t& m); ... }; class JSValue { public: static JSValue JSNull(); static JSValue JSBool(bool b); static JSValue JSObject(const JSObject& obj); ... }; The data constructors of Haskell have some similarity to these constructor functions. Greetings, Daniel ------------------------------ _______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners End of Beginners Digest, Vol 57, Issue 41 *****************************************