New patches: [look for internal libffi headers first Goetz Isenmann**20061110092325] { hunk ./build/SConscript.libffi 11 - ffienv.Append(CCFLAGS="-DX86_WIN32") - ffienv.Append(CPPPATH=["#depends/ctypes/libffi_msvc"]) + ffienv.Prepend(CCFLAGS="-DX86_WIN32") + ffienv.Prepend(CPPPATH=["#depends/ctypes/libffi_msvc"]) hunk ./build/SConscript.libffi 15 - ffienv.Append(CPPPATH=["#depends/ctypes/libffi/include", "#depends/ctypes/libffi/src/x86", "#depends/ctypes/libffi"]) + ffienv.Prepend(CPPPATH=["#depends/ctypes/libffi/include", "#depends/ctypes/libffi/src/x86", "#depends/ctypes/libffi"]) hunk ./build/SConscript.libffi 18 - ffienv.Append(CPPPATH=["#depends/ctypes/libffi/include", "#depends/ctypes/libffi/src/x86", "#depends/ctypes/libffi"]) + ffienv.Prepend(CPPPATH=["#depends/ctypes/libffi/include", "#depends/ctypes/libffi/src/x86", "#depends/ctypes/libffi"]) hunk ./build/SConscript.libffi 21 - ffienv.Append(CPPPATH=["#depends/ctypes/libffi/include", "#depends/ctypes/libffi/src/x86", "#depends/ctypes/libffi"]) + ffienv.Prepend(CPPPATH=["#depends/ctypes/libffi/include", "#depends/ctypes/libffi/src/x86", "#depends/ctypes/libffi"]) hunk ./build/SConscript.libffi 24 - ffienv.Append(CPPPATH=["#depends/ctypes/libffi/include", "#depends/ctypes/libffi/src", "#depends/ctypes/libffi/src/powerpc", "#depends/ctypes/libffi"]) + ffienv.Prepend(CPPPATH=["#depends/ctypes/libffi/include", "#depends/ctypes/libffi/src", "#depends/ctypes/libffi/src/powerpc", "#depends/ctypes/libffi"]) hunk ./build/SConscript.libffi 27 - ffienv.Append(CPPPATH=["#depends/ctypes/libffi/include", "#depends/ctypes/libffi/src", "#depends/ctypes/libffi/src/powerpc", "#depends/ctypes/libffi"]) + ffienv.Prepend(CPPPATH=["#depends/ctypes/libffi/include", "#depends/ctypes/libffi/src", "#depends/ctypes/libffi/src/powerpc", "#depends/ctypes/libffi"]) } Context: [Attempt to fix the extra-spaces in ghc command line once again. Andrew Wilkinson **20061108150229] [Import System.FilePath.Version_0_09 instead of just System.FilePath, this gives better assurances of reverse compatability Neil Mitchell**20061108143853] [Fix the FilePath build script to build the Version files as well, this is now specific to each minor revision of FilePath, so probably needs fixing properly Neil Mitchell**20061108143819] [Detect if the user is using an rc release of darcs. Andrew Wilkinson **20061108141640] [Update the Echo demo program as Runtime has been updated golubovsky@gmail.com**20061108034658] [More primitives in Overlay, worked around oversaturation golubovsky@gmail.com**20061108033621] [Fix sExp to not crash, this fixes bug 75 Neil Mitchell**20061107141604] [Fixed the Defect #72 (oversaturated function calls) golubovsky@gmail.com**20061107045634] [Move more towards Control.Monad.State Neil Mitchell**20061107025938] [Remove applyStateMonad from Util.Graph, was unused Neil Mitchell**20061107025400] [Use execState/evalState instead of runState in some places Neil Mitchell**20061107025138] [Use runState instead of applyStateMonad Neil Mitchell**20061107024852] [Remove getState and setState, get and put are used instead Neil Mitchell**20061107024338] [Remove the qualification from Control.Monad.State (offending name clashes have been fixed now) Neil Mitchell**20061107024005] [In the ByteCode.CompileLib rename lift to liftC Neil Mitchell**20061107023854] [Rename lift -> liftC in DotNet.Compile Neil Mitchell**20061107023715] [Rename State to CState in the compiler Neil Mitchell**20061107023505] [Import Control.Monad.State, use State instead of StateMonad for the type Neil Mitchell**20061107023134] [Rewrite the state monad in terms of Control.Monad.State Neil Mitchell**20061107021843] [Add -package mtl in the Haskell module - this is a hacky patch and needs doing properly by Andrew! Neil Mitchell**20061107021500] [Add type signatures for trimLeft and trimRight, the last missing two Neil Mitchell**20061107020907] [Add type signatures to Util.Text Neil Mitchell**20061107015308] [Make the StateMonad export less of its internals Neil Mitchell**20061107012914] [Fix the play instance when encountering a let, it was going too deep on the RHS of a let - missing top level elements Neil Mitchell**20061105160335] [Fix type. Remove unneed code from build system. Andrew Wilkinson **20061105113633] [Stole replicateM, replicateM_ from GHC Control.Monad golubovsky@gmail.com**20061105034313] [First demo added: Echo golubovsky@gmail.com**20061104055934] [Remove the -i options, forgot them when I removed -d Neil Mitchell**20061103145201] [Revert Dimitry's patch, by fixing the file path semantics in Flags (which means that included source files are found correctly) Neil Mitchell**20061103142321] [Do not specify the -d flags any more, Yhc uses paths as relative to the file you are compiling, not relative to the current directory Neil Mitchell**20061103142044] [Make sure the rootPath is represented in the location of a file, required to get include's working correct (may well break something else...) Neil Mitchell**20061103123416] [Get closer to building yhi with ghc on Windows. Andrew Wilkinson **20061103092321] [Add scons test quick command for testing things quickly. Andrew Wilkinson **20061102164657] [Allow ghc to be used to compile yhi. Pass cc=ghc to scons to activate. Andrew Wilkinson **20061102162937] [Remove warning about libraries not being recognised when it is. Andrew Wilkinson **20061102155855] [Allow using ghc as compiler for yhi. Andrew Wilkinson **20061102155535] [Allow scons build libraries. Fail on unrecongised options. Andrew Wilkinson **20061102155228] [Dirty hack to Core Linker - set path to ycr same as to hs golubovsky@gmail.com**20061103043047] [Remove all the bootstrap files, now scons can build them properly Neil Mitchell**20061102151137] [No need to copy Ratio.hbc, its made automatically by the build system Neil Mitchell**20061102151004] [Make sure that you also search the includes directories passed on the flags, fixes a bug reported by Dimitry Neil Mitchell**20061102133630] [Add main x y = Main.main x y, so that reachability knows where to start from Neil Mitchell**20061102003151] [Use not . Set.member, instead of Set.notMember - notMember is only in GHC 6.6. and Hugs Sep 2006 (so no one but me has it!) Neil Mitchell**20061102002222] [Add Yhc.Core.Overlay, for Catch and the JS back end Neil Mitchell**20061101172331] [Fixed the unmarshaller for characters so it works with computed chars golubovsky@gmail.com**20061031123437] [Simplify the fix to finding the version number. Andrew Wilkinson **20061031121535] [Check we can find matching .hs file for a required .o file. Andrew Wilkinson **20061031121507] [use_records golubovsky@gmail.com**20061031033006 Changed the code to use record syntax for Core and CoreFunc. ] [Move back towards the old let method, accepting that let's are really letrec's under the covers - this fixes repeat using a where binding Neil Mitchell**20061031021937] [Fix a bug in the let bindings, let's can be written as let {x = y; z = x} in q, where the z refers to the previous x - i.e. letrec's - make this more explicit Neil Mitchell**20061031020608] [Change the serialise code so checking for the right version is done sooner, and more likely to get an error here rather than in the Binary instance Neil Mitchell**20061031011608] [Allow the -corelink module not to be called module Main, and therefore allow alternative type signatures on main Neil Mitchell**20061031005515] [Only remake the .yca file if the source file has changed (not enough, should be on any recompilation, but hard to express for now) Neil Mitchell**20061031004710] [Base the location of the .yca file on the ycr file location, not on the source file Neil Mitchell**20061031004325] [Change the -hide flag so it gives cleaner semantics for Catch, allowing multiple Main files in one directory Neil Mitchell**20061031003849] [Ensure that the directory for the .ycr file exists Neil Mitchell**20061031003713] [Remove the makefile, was long since out of date Neil Mitchell**20061030140939] [unmarshaller_deep_eval golubovsky@gmail.com**20061030115448 Added deep evaluation for arrays by applying `exprEval' to the head element of each cons cell (was applied only to the tail element before). As a result, nested lists of strings are unmarshalled correctly, and toString called on [["aaa","bbb","ccc"],["dd","ee"],["f"]] returns 'aaa,bbb,ccc,dd,ee,f' (Javascript itself does not place square brackets when doing Array.toString). ] [string_array_unmarshaller golubovsky@gmail.com**20061030050107 Implemented unmarshaller (i. e. Haskell -> Javascript) for strings and lists (represented as Javascript arrays). Works for lists of integers and strings (literals and computed), but for e. g. ["aaa","bbb","ccc"] Javascript sees an array of three objects (deep expression evaluation is needed). Core to Javascript converter may have lost its compatibility with the latest core types change introduced together with the core linker. ] [Add type signatures for Core.Linker Neil Mitchell**20061029182626] [Add reachable for data values Neil Mitchell**20061029182610] [Move to using records for all the Core types Neil Mitchell**20061029181727] [Remove special treatment for Prelude.[] and Prelude.: only in the show interface, this behaviour either wants to be put in the Convertor or dropped entirely (as it is now) Neil Mitchell**20061029180414] [Actually generate a completely linked file Neil Mitchell**20061029175124] [Write more of the linker, now actually does basic linking Neil Mitchell**20061029172603] [Pass around the free variables in a let binding, otherwise they are translated as functions Neil Mitchell**20061029172521] [Add Yhc.Core.Reachable Neil Mitchell**20061029172439] [Add some type signatures, to fix up the warnings Neil Mitchell**20061029164532] [Move to using records for the main Core type Neil Mitchell**20061029164111] [Add coreFuncName method Neil Mitchell**20061029164007] [Add some type signatures for Yhc.Core.Show, fix some warnings Neil Mitchell**20061029142827] [Use the trim functions from Util.Text instead of writing custom ones Neil Mitchell**20061029142752] [Add some type signatures to remove warnings Neil Mitchell**20061029142726] [core_js_step_0 golubovsky@gmail.com**20061029035154 Fixed a minor omission in Core.Convert to convert STRING primitive to CoreStr. Got Core to Javascript converter aligned with the latest changes in the Core types. Got partially working string unmarshaller (works for string literals, but not for char consed together). ] [ycr2js_init_checkin golubovsky@gmail.com**20061028032454 Code for ycr2js has been roken down into modules and transferred into the Yhc project. Everything compiles but would not work at this time until changes in Core haven't been addressed. ] [Use the -core flag, used to be called -corep Neil Mitchell**20061027194301] [Add a basic interface to the linker, the linker doesn't do anything yet Neil Mitchell**20061027180724] [Add getNodes method to graph, required for Core link mode Neil Mitchell**20061027180557] [Add a -linkcore flag, currently unimplemented Neil Mitchell**20061027174530] [Change the Core flags, so -core generates a file and -showcore shows the file instead of generating it - also fixed the flags reference Neil Mitchell**20061027170810] [Make a file dirty if the flag -corep is specified and the core file is dirty Neil Mitchell**20061027170141] [Add an entry for .ycr files into the file flags, to make .ycr output more standard and less hacky Neil Mitchell**20061027170050] [Add CorePrim to the Core library, for primitives (allows the linking to be complete in some sense) Neil Mitchell**20061027162324] [Add a failure variable to the Core conversion, and make sure its used - fixes a bug with nested fatbar's and multiple replacements Neil Mitchell**20061027154627] [Move the code around for the CoreExpr conversion stuff, to make it a bit clearer Neil Mitchell**20061027152357] [Rename Core.Core to Core.Convert, since its the convertor, and no longer does all the Core stuff Neil Mitchell**20061027145248] [fix_version_py golubovsky@gmail.com**20061027032708 version.py behaved incorrectly when _darcs/inventory's last line did not contain two asterisks. Added a filter that keeps only lines with two asterisks. ] [fix_core_show_and_init_js_checkin golubovsky@gmail.com**20061027025815 Fixed Yhc.Core.Show to output CoreFloat and CoreDouble. Initial directory structure and basic files check-in for the Core -> Javascript converter. ] [non_crashing_corefunc golubovsky@gmail.com**20061026031128 Added a non-crashing version of coreFunc: returns Nothing when a function is not found in the core. ] [Remove a backup of the old wiki, out of date information (the new wiki is backed up automatically) Neil Mitchell**20061026133230] [Add a Fun type in addition to Var, to indicate a top level binding - useful for reachability analysis Neil Mitchell**20061025175845] [Remove the unused function argument from exp2core Neil Mitchell**20061025173329] [Give concatMapM a type signature Neil Mitchell**20061025152529] [Redefine concatMapM as a liftM Neil Mitchell**20061025152434] [Use a proper pretty printer for Yhc.Core Neil Mitchell**20061025152043] [Generalise the getHaskellFile, to allow yhc core files to be given without arguments Neil Mitchell**20061025145735] [Add core viewer, -viewcore, to the Yhc Neil Mitchell**20061025144731] [Fix isTidOp, so that an identifier only of ___ works Neil Mitchell**20061025142641] [Build Yhc.Core library Andrew Wilkinson **20061025141839] [Move the Yhc.Core into a separate libraries directory Neil Mitchell**20061025135804] [Fix so that building without cpp gives you (unversioned) and still works Neil Mitchell**20061025135031] [Rename the version variable. Andrew Wilkinson **20061025132216] [Make the new Yhc Libraries build Andrew Wilkinson **20061025131852] [Create a libraries directory, and start on a Yhc.General library - will not compile! Neil Mitchell**20061025125517] [Switch to using date/time of last patch as version number to make it consistant across all computers. Andrew Wilkinson **20061025111200] [Build and install .ycr files for Haskell libraries. Andrew Wilkinson **20061025110529] [Don't try and build files unless we really need them. Andrew Wilkinson **20061022173843] [Fix yhc build error on Windows buildbot. Andrew Wilkinson **20061021175249] [Python people have moved the directory for libffi. Andrew Wilkinson **20061021172116] [Fix building the docs now yhe can be built. Andrew Wilkinson **20061021170442] [Add support for building Yhe. Andrew Wilkinson **20061021143044] [Fix building the docs. Andrew Wilkinson **20061020135037] [Add file with version number in it. Andrew Wilkinson **20061020133953] [Add support for proper version numbers. Andrew Wilkinson **20061020133417] [Fix Samuel Bronson's broken patch. All tests pass with this - not sure if it's the correct fix though. Andrew Wilkinson **20061020110049] [Keep generated names from conflicting with real names Samuel Bronson **20061019200517] [Fix more Id output stuff Samuel Bronson **20061019194125] [Allow user to specify addition directories to search for libraries. Andrew Wilkinson **20061016160752] [Sigs and Haddock Samuel Bronson **20061016000836] [Revert Show instance for Id Samuel Bronson **20061016000304] [Fix a bug, Id's were being shown differently since being newtype wrapped Neil Mitchell**20061014201710] [Add version check for Darcs. Andrew Wilkinson **20061013160337] [Remove old ghc file. Andrew Wilkinson **20061013104525] [Check for a recent version of Python. Andrew Wilkinson **20061013104346] [Fix scons depends on Windows. (Bug #66) Andrew Wilkinson **20061013081625] [Fix building yhi on Windows. Andrew Wilkinson **20061012160123] [Hack around with the linker flags to allow GMP to link. Andrew Wilkinson **20061012154228] [Don't use a blank environment to the always_configure. Andrew Wilkinson **20061012152614] [Allow libgmp to be called GMP. Andrew Wilkinson **20061012152225] [Rewrite the readme, old version was just plain wrong Neil Mitchell**20061012151059] [Look for libgmp where GHC installs it on Mac OS X. Andrew Wilkinson **20061012150636] [Make basepath_guess try adding a .exe on the end if a filename cannot be located, fixes bug on Windows Neil Mitchell**20061008174601] [Free the path on basepath_guess Neil Mitchell**20061008172222] [Make sure that the last entry on the path is searched, by appending a SEPARATOR character on to the end Neil Mitchell**20061008171825] [Add lexing change for 1e12 as a rational, from Malcolm, extracted from nhc Neil Mitchell**20061008160957] [Add tests for parsing 1e12, common bug for nhc Neil Mitchell**20061008160744] [Add type signatures to the test program Neil Mitchell**20061008155549] [Add scons push. Andrew Wilkinson **20061008152745] [Types in Type.Type Samuel Bronson **20061007170726] [TAG 07_oct_2006 Tom Shackell **20061007165033] Patch bundle hash: 3787437454e64476f139adaa1a41e2e185b0be63