Commit Graph

38 Commits

Author SHA1 Message Date
Jon Rafkind
f3ae0f1875 remove old provide. disable honu repl
svn: r16532
2009-11-03 22:13:13 +00:00
Jon Rafkind
02d19e6588 remove bogus code
svn: r16531
2009-11-03 21:11:42 +00:00
Jon Rafkind
388a2c99d4 reorganize honu. provide ellipses properly
svn: r16530
2009-11-03 21:07:29 +00:00
Jon Rafkind
c3857c32e3 test
svn: r16458
2009-10-29 19:43:50 +00:00
Jon Rafkind
b55944bb93 upgrade to #lang scheme
svn: r15345
2009-06-30 21:05:16 +00:00
Jon Rafkind
3d356123cf upgrade to #lang scheme
svn: r15344
2009-06-30 20:57:23 +00:00
Jon Rafkind
616630f862 add test
svn: r15343
2009-06-30 20:55:06 +00:00
Matthew Flatt
20fcb6314c honu-module -> honu; misc doc and slideshow tweaks
svn: r10230
2008-06-12 13:02:41 +00:00
Carl Eastlund
871a696fb9 Removed out-of-date honu module.
svn: r2185
2006-02-09 18:14:51 +00:00
Carl Eastlund
3b3f379d22 Honu: (merging from branch)
- Updated testing framework to use SchemeUnit
- Added generalized environment implementation

svn: r1986
2006-01-26 19:51:30 +00:00
Carl Eastlund
114a4dab65 Honu: updating from branch
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
2006-01-24 19:54:15 +00:00
Carl Eastlund
8efd89de41 Honu:
- 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
2006-01-17 23:07:15 +00:00
Carl Eastlund
48a8dac067 Honu:
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
2006-01-15 22:05:40 +00:00
Eli Barzilay
029beb046a fix and set svn:eol-style
svn: r1836
2006-01-15 19:08:07 +00:00
Carl Eastlund
e90709d65c Changed names of some typechecking functions.
svn: r1835
2006-01-15 18:57:34 +00:00
Carl Eastlund
10d276dd7b Honu:
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
2006-01-15 18:53:00 +00:00
Carl Eastlund
fde1701b71 Honu: split up typecheck-defns into separate functions.
svn: r1832
2006-01-15 17:24:00 +00:00
Carl Eastlund
6494462e1a Honu:
- Adjusted line wrapping in typechecker.ss
- Changed srfi1 import to use prefix rather than exclude "any"

svn: r1322
2005-11-15 17:07:02 +00:00
Carl Eastlund
a57403031e Honu:
- 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
2005-10-05 20:57:48 +00:00
Carl Eastlund
f3d24c7d46 Honu:
- 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
2005-10-04 22:01:03 +00:00
Stevie Strickland
47a3f0176b PR 7541
svn: r636
2005-08-23 07:17:48 +00:00
Stevie Strickland
db07756a73 merging 355:360 from branches/sstrickl
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
2005-07-06 03:07:18 +00:00
Stevie Strickland
c7fb7b5ec5 Separated out the cruft for syntax into a separate value until it gets into
the tool, where we combine it, and then drop it appropriately.

svn: r348
2005-07-05 18:38:24 +00:00
Stevie Strickland
359415ca42 Using the don't care syntax in List.honu triggered a bug, so now that's
fixed.  Also added foreach to the List type in the appropriate places.

svn: r345
2005-07-05 07:14:54 +00:00
Stevie Strickland
a440c19b44 Missed removing cenv from one of the typecheck-expression calls.
svn: r343
2005-07-05 02:41:26 +00:00
Stevie Strickland
73b1b12558 Now mixins also show up as being bound appropriately. I also removed the
old honu:type function that has no use now that I'm doing things the
"right" way.

svn: r342
2005-07-05 01:54:21 +00:00
Stevie Strickland
2feaff9d19 Moving all the calculation for what needs to be dragged along kicking
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
2005-07-05 01:25:46 +00:00
Stevie Strickland
d3654cfdec Forgot to give map its list argument.
svn: r337
2005-07-04 22:40:31 +00:00
Stevie Strickland
03aba477f7 Added useless statements so that Check Syntax will see all uses of interfaces,
even those that get erased in the transition to MzScheme classes.

svn: r336
2005-07-04 22:31:33 +00:00
Stevie Strickland
cc8ee7ac3a merging 326:329 from branches/sstrickl
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
2005-07-04 20:13:47 +00:00
Stevie Strickland
39cb4f027f merging 322:325 from sstrickl/branches
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
2005-07-04 18:40:02 +00:00
Stevie Strickland
62d631998b merging 314:317 from branches/sstrickl
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
2005-07-04 04:33:41 +00:00
Stevie Strickland
50a7859893 merged 308:311 from branches/sstrickl
Now null values are printed out as "null" instead of
"#<struct:object:null%>".  Simple addition, but useful.

This also adds a very unintelligent pretty printing for classes
by adding a new public member for every Honu generated class that
gets called by format-honu (in tool.ss).

This pretty printing reveals the values for static members.
Eventually I'll want to add an option to print just classes or
classes + fields, like in ProfessorJ, but this was the heavy
lifting of getting classes + fields printing out in the first place.

svn: r312
2005-07-04 02:47:32 +00:00
Stevie Strickland
b0e056190a We should be checking the new statement's annotation, if we want type-valid? to
only be defined on types that the programmer can write down.n

svn: r307
2005-07-04 00:15:56 +00:00
Stevie Strickland
11a7add8bb Forgot to quote "values", and missed a use of "list".
May have to eventually make my own prefixed version of values to use,
similar to what I did with send (though honu:send does a (Honu) null object
check).

svn: r301
2005-07-03 00:58:52 +00:00
Stevie Strickland
439c1ecd24 Several bugs found, the biggest being using <:_P to compare members
of a supertype and subtype, where the subtype was not yet added to
the tenv.  Had to hack to get around that one.

Also little problems like the fact that list can be captured by the
user program, so we can't use that -- used list* (with a null at the
end) and null (for empty lists) instead.

Since the power was down and I couldn't get the earlier stuff committed,
I have even more changes.  Bug-fixes, mostly, though now top-level
functions that are defined consecutively are mutually recursive as they
should be.

svn: r300
2005-07-03 00:28:59 +00:00
Stevie Strickland
7dbb99d3c6 merged 292:296 from branches/sstrickl
svn: r297
2005-07-02 04:03:02 +00:00
Eli Barzilay
017d151d59 Adding collects, with all the right properties (except eoln-style).
svn: r3
2005-05-27 18:56:37 +00:00