Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Jun 1, 2010
  1. [doc/announce/2010.06] added

  2. [ChangeLog] updated

  3. [README] some more guidance about alpha

    Still not enough, though. :/
  4. [logotype] next iteration

    Still not perfect, but hopefully an improvement.
  5. [logotype] added

Commits on May 3, 2010
  1. [Yapsi] bumped SIC version

    Between releases, the SIC version is always the version number of the
    upcoming release.
Commits on May 1, 2010
  1. [doc/announce/2010.05] fixed a few typos

    'Gasp! He's changing the announcement post-release!' No, actually these
    typos were found by by wolverian++ before the release announcements were
    sent out (but after the uploading of the release tarball).
  2. [README] updated

  3. [Yapsi] expose the runtime state a bit more

    This commit is explicitly tailored to expose the parts that Tardis will need
    in order to register the state at each tick.
    The four calls to self.*tick (beginning of program, after assignment, after
    binding, after call to &say) are in a way arbitrary, but it's the best
    guess we have right now as to what a debugger needs. The reason we use a
    * rather than a ? in the call is so that many deriving classes will be able
    to have their .tick method invoked. Will be interesting to see if that
    distinction will actually be important to someone.
  4. [yapsi] make target really case-insensitive

    Both uc and lc variants parsed before, but now both of them actually work.
  5. [] added Yapsi::Environment

    This enables passing an environment (containing all the lexical variables set
    at runtime) into another compilation, allowing for such things as BEGIN time
    and a REPL.
Commits on Apr 29, 2010
  1. @snarkyboojum
Commits on Apr 28, 2010
  1. [Yapsi] turned many attributes into contextuals

    By the principle that variables shouldn't have a wider scope than necessary.
    These particular variables are only needed during the .compile call, so
    contextuals rooted in this method fit nicely.
  2. [Yapsi] counting blocks without gaps

    Blocks are now always given the name main_x_y_z etc, where x, y, and z start
    at 1 and don't have any gaps.
Commits on Apr 27, 2010
  1. [yapsi] added --target argument

    The allowed targets are currently 'run' (the default), and 'sic' (which
    outputs the compiled SIC instead of running the program). Capitalization
    doesn't matter, so --target=SIC works as well as --target=sic.
  2. [Yapsi] whitespace therapy

  3. @snarkyboojum

    Change to generate unique names for same-level blocks and added a run…

    snarkyboojum authored
    …time test to validate that.
    Block numbering can be improved upon later.
Commits on Apr 26, 2010
  1. [.gitignore] added

  2. [Yapsi] blocks now return

    A block doesn't return *values*, mind, it just returns to the executing scope
    that called it.
  3. [t/compiler.t] one more test

    Which passes already.
  4. [Yapsi] autovivification workaround

    A few tests broke in t/compiler.t due to the mistake that this workaround
  5. [Yapsi] first shot at blocks and scopes

    There's no stack yet, and thus no proper block exit back to surrounding blocks.
    But calling a block from another block works, and each block has its own
    lexical pad.
  6. [Yapsi] blocks now return values

  7. [Yapsi] now parses blocks

  8. [Makefile] added

Commits on Apr 20, 2010
  1. @snarkyboojum

    Adding a test to ensure that statements with whitespace after the ter…

    snarkyboojum authored
    …minating semicolon parse correctly.
  2. @snarkyboojum

    Allow whitespace after a statement is terminated with a semicolon.

    snarkyboojum authored
    masak++ for suggesting the use of <.ws>
Commits on Apr 15, 2010
  1. [README] e with a ^ on it

    If we're to use other people's languages, let's do it with style. :)
  2. [Yapsi] put warnings into an attribute

    This required putting in all the multi subs as multi methods. Probably
    just as well; the whole Yapsi::Compiler is more of an object now.
  3. [t/parse.t -> t/compiler.t] describes better the file

    Compiling consists of parsing, checking, and codegen, each one currently
    inextricable from the others. Better to talk about the whole process than
    one of the stages.
Something went wrong with that request. Please try again.