tool.ss
- Added comments and contracts to all functions/methods
- Moved all definitions inside Honu language class
- Simplified some functions
- Removed Honu "configuration" option
format.ss
- Started new module for text formatting of Honu values
svn: r1964
ast.ss
- Massive name changes for clarity
- Added structure contracts
private/tools/general.ss
- Moved from utils.ss
contract.ss
- Removed define and contract utilities (now using PLaneT tools)
svn: r1946
- added current partial changes to todo list
- renamed most ast structs (haven't propagated)
- added contracts to some ast structs (haven't finished)
- removed define,provide,contract helpers from utils.ss
- started contracts.ss for those and others
- began writing define-structs,provide,contract
for defining hierarchies of structs at once
svn: r1859
- Updated todo list
- Promoted "name" field of member ASTs to member (rather than field/method/etc.)
- Added false? function
- Added extend-fenv for formal parameters
- Removed class env (folded in with lexical env)
- Added abstraction for member names of a type
- Added abstractions for enforcing distinct types and names
- Updated mixin typing rule
svn: r1854
tenv.ss
- Moved provides to end of file
typecheck-utils.ss
- Added check-valid-types!
typechecker.ss
- Used check-valid-types!
- Added helpers for mixin name checking
svn: r1837
util.ss
- Added curry function
- Reorganized provide list
typecheck-utils.ss
- Added module of general typechecker helpers
typechecker.ss
- Made use of typecheck-utils.ss
svn: r1834
- test-cases.ss
- Used new test framework to test example files
- Used new test framework to test non-void-statement error message
- private/tools/test.ss
- Implemented new SchemeUnit-like test-case macros
svn: r987
- doc.txt, documented the sqrt() function
- typecheck-expression.ss, line-wrapped to <100 columns
- type-utils.ss, changed printout for void type from "<>" to "void"
svn: r980
- top.ss
- removed top: prefix from exports
- renamed parse-file to ast-from-file to prevent name clash
- removed test case list and run-tests
- test-cases.ss
- added test case list and run-tests
- test-tools.ss
- renamed from test.ss
svn: r945
- top.ss
- commented out compile-failure tests for now
- cce-notes.txt
- added my preliminary notes about the Honu codebase
- examples/*-test.ss
- added *-test.ss files for all *.honu files
svn: r943
- top.ss
- Added top:eval-after-program
to evaluate a new syntax in the context of Honu definitions
- Added previous contents of test.ss - testing is a top-level behavior
- test.ss
- Removed top-level testing calls
- Added bindings useful from testcase code
- New purpose is to be auto-required from *-test.ss when *.honu is tested
- examples/point-test.ss
- Removed now-redundant definitions
- examples/BoundedStack-test.ss
- Wrote tests for BoundedStack, both of defined names and actual code results
- examples/BoundedStack.honu
- Removed test results that are now in ...-test.ss
svn: r930
- test.ss
- Special case, short error messages if test files not found
- parsers/parse.ss
- Removed make-struct-type-decls and make-struct-exports
(at Stevie's instruction: functionality duplicated elsewhere)
- tenv.ss, ast.ss, compile.ss
- linewrapped code and comments to 100 columns or less
svn: r928
- test.ss
- added list of examples files to test
- added test-file function to run file and related test cases
- added run-tests to run automated honu tests
- examples/
- added test case file for point.honu
- top.ss
- imported util.ss
- added run-programs
- moved test-program to test.ss
- util.ss
- removed unnecessary "ast.ss" import
- added "contract.ss" import
- changed names to prevent import name-clash
- added definitions of define/p (provide) and define/c (provide/contract),
plus define-struct versions
- added map-values for mapping functions which return arbitrary numbers of values
- tenv.ss
- added sqrt() function to Honu environment
svn: r909
- Changed names:
- no longer add honu: prefix to imports
- now include top: prefix on exports
- *-introduced-identifiers now *-names (produce symbols, not identifiers)
- Added tenv:entry-mangled-name
- Implemented run-test-class-from-name to print whether a class is/isn't test code
svn: r906
Added basic uniqueness checks for type/class members, fun args, etc. Also
added checks to make sure that all exports for the same type agree in what
they're exporting.
svn: r361
and screaming into its own file, and now we stick that stuff into its
own little space at the front of what translate returns so that it's
seen by Check Syntax, but we can drop it like a hot potato when it
comes time to run the compiled code.
svn: r340
This fixes up the fact that is-a? should work different for Honu
classes than MzScheme ones (since Honu classes do not automatically
implement the interfaces their superclass did). I also did some
parameterization in the translate module (outside the already
existing current-compile-context).
svn: r330
This makes tenv and lenv, which were arguments to almost everything,
into parameters. The only time they need to be set is after parsing
and before calling anything else, so there's one use in compile/defns
and one use in compile/interaction.
While I was at it, I took a lot of the infrequently-changing
arguments to typecheck-expression and made some typechecker-local
parameters also.
svn: r326
This adds the ability to configure whether to print out just the class
name or class + fields for objects. This also adds the feature of
printing out the type of expressions evaluated at the REPL as well as
their value.
svn: r318