Re: Generating runtime type information.
[Thread Prev] | [Thread Next]
- Subject: Re: Generating runtime type information.
- From: Ori Bernstein <ori@xxxxxxxxxxxxxx>
- Date: Sun, 29 Mar 2015 02:44:49 -0700
- To: Ori Bernstein <ori@xxxxxxxxxxxxxx>
- Cc: Ryan Gonzalez <rymg19@xxxxxxxxx>, myrddin-dev@xxxxxxxxxxxxxx
(Also, nearly 1000 lines deleted.) On Sun, 29 Mar 2015 01:55:35 -0700 Ori Bernstein <ori@xxxxxxxxxxxxxx> wrote: > On Fri, 27 Mar 2015 14:56:46 -0500 > Ryan Gonzalez <rymg19@xxxxxxxxx> wrote: > > > That worked. I didn't realize mc used mbld if available. > > > > Honestly, I would enjoy having mbld *and* libbio in the standard > > distribution. > > http://git.eigenstate.org/ori/mc-integrated.git > > Take a look, try it out, and make sure that bootstrapping works for you. If > it does, I can push that to the main mc/ repository. > > > On Fri, Mar 27, 2015 at 2:46 PM, Ori Bernstein <ori@xxxxxxxxxxxxxx> wrote: > > > > > So, the first thing you're going ot have to rebuild (or delete) > > > is mbld. From there, you should be able to re-bootstrap. > > > > > > I should import mbld and it's dependencies into mc/ for ease of > > > remaking the world. > > > > > > On Fri, 27 Mar 2015 14:24:36 -0500 > > > Ryan Gonzalez <rymg19@xxxxxxxxx> wrote: > > > > > > > I can't get it to build though: > > > > > > > > ... > > > > export MYR_MC=../6/6m && \ > > > > export MYR_MUSE=../muse/muse && \ > > > > ./build.sh -l std alloc.myr bigint.myr bitset.myr blat.myr bytebuf.myr > > > > chartype.myr cmp.myr clear.myr dial.myr die.myr dir.myr dirname.myr > > > > endian.myr env.myr errno.myr execvp.myr extremum.myr fltbits.myr fmt.myr > > > > fltfmt.myr hashfuncs.myr hasprefix.myr hassuffix.myr htab.myr getint.myr > > > > intparse.myr ipparse.myr mk.myr mkpath.myr now.myr option.myr > > > optparse.myr > > > > pathjoin.myr putint.myr rand.myr resolve.myr result.myr search.myr > > > slcp.myr > > > > sldup.myr sleq.myr slfill.myr sljoin.myr slpush.myr slput.myr slurp.myr > > > > sort.myr spork.myr cstrconv.myr strfind.myr strjoin.myr strsplit.myr > > > > strstrip.myr syswrap.myr syswrap-ss.myr swap.myr try.myr types.myr > > > > units.myr utf.myr varargs.myr wait.myr > > > > libsys.a... > > > > libstd.a... > > > > library sys: usefile version unknown > > > > make[1]: *** [libstd.a] Error 1 > > > > > > > > I removed sys and libsys.a from /usr/local/lib/myr but still bet the same > > > > error. Also already ran `make clean`. > > > > > > > > > > > > On Fri, Mar 27, 2015 at 1:19 AM, Ori Bernstein <ori@xxxxxxxxxxxxxx> > > > wrote: > > > > > > > > > Congratulations everyone! you get to rebuild as we break ABI > > > > > again! > > > > > > > > > > We now generate type descriptions for variadic types, and push > > > > > a pointer to the variadic arguments on to the stack when we call. > > > > > The valist code currently ignores this, and does nothing useful > > > > > with it -- this should be fixed. > > > > > > > > > > In other words, if you have a variadic function f: > > > > > > > > > > const f : (a : int, b : byte[:], ... -> void) > > > > > > > > > > and you call it like this: > > > > > > > > > > f(1, "asdf", 'c', "blah", false) > > > > > > > > > > you will get, on the stack: > > > > > > > > > > [ > > > > > 1 : int, > > > > > "asdf" : byte[:], > > > > > argtype : byte# > > > > > 'c' : char, > > > > > "blah" : byte[:], > > > > > false : bool > > > > > ] > > > > > > > > > > The argtype will be a binary encoded description of the types > > > > > of the tuple (char, byte[:], bool) > > > > > > > > > > This means that you can write (admittedly, slightly hairy) code > > > > > to parse out the types passed in for variadics, and write code > > > > > that looks like: > > > > > > > > > > const pack : (vals : ... -> byte[:]) > > > > > > > > > > One goal that I would like to support is making std.fmt() > > > > > callable as such: > > > > > > > > > > std.fmt("%: list contains %\n", 1, [1,2,3][:]) > > > > > > > > > > > > > > > -- > > > > > Ori Bernstein <ori@xxxxxxxxxxxxxx> > > > > > > > > > > > > > > > > > > > > > > -- > > > > Ryan > > > > [ERROR]: Your autotools build scripts are 200 lines longer than your > > > > program. Something’s wrong. > > > > http://kirbyfan64.github.io/ > > > > > > > > > -- > > > Ori Bernstein <ori@xxxxxxxxxxxxxx> > > > > > > > > > > > -- > > Ryan > > [ERROR]: Your autotools build scripts are 200 lines longer than your > > program. Something’s wrong. > > http://kirbyfan64.github.io/ > > > -- > Ori Bernstein <ori@xxxxxxxxxxxxxx> > -- Ori Bernstein <ori@xxxxxxxxxxxxxx>
Generating runtime type information. | Ori Bernstein <ori@xxxxxxxxxxxxxx> |
Re: Generating runtime type information. | Ryan Gonzalez <rymg19@xxxxxxxxx> |
Re: Generating runtime type information. | Ori Bernstein <ori@xxxxxxxxxxxxxx> |
Re: Generating runtime type information. | Ryan Gonzalez <rymg19@xxxxxxxxx> |
Re: Generating runtime type information. | Ori Bernstein <ori@xxxxxxxxxxxxxx> |
- Prev by Date: Re: Generating runtime type information.
- Next by Date: Re: Generating runtime type information.
- Previous by thread: Re: Generating runtime type information.
- Next by thread: Re: Generating runtime type information.
- Index(es):