• entries
    359
  • comments
    237
  • views
    188610

Hardware and next steps.

Sign in to follow this  

64 views

My main dev machine ran into some problems a few days back. Windows would flash and generally not be interactive, making it pretty useless. The login screen and alt-ctrl-del screen worked well, so I put the problem in with the video card/driver (since I'm using vista). A reinstall of the drivers didn't help, so next step was to replace the (~3 year old) card.

Got a random geforce 9800 w/512m. Can't really tell the difference except that this one takes an extra power connector, takes 2 slots and makes a different fan noise. The store also had 1tb drives on sale, so I got one to replace my ever full games drive. Merry Christmas!

And around the same time, my linux machine developed a little more serious problems. It's much older and been running in a drawer rather than a case for years now. I'm actually pretty happy it's lasted this long. I'll decide later if it's worth replacing or if it's easier to just put an ssh server on my windows box.


As for Tangent, work begins on the next bit of development. For the next release, I aim to have native generics working. Generic classes and methods at least. Ideally I'll also get constraints, generics in phrases, and some non-trivial type inference done. Probably in this next release will be more .NET type importing, and maybe type expressions.

Today's work allows generic classes to be defined, but they're not yet instantiatable and the members can't yet use the generic param.

The test target is to allow this definition of not to work:


public abstract bool not(bool rhs);
public Type.False not(Type.True rhs){ return(false); }
public Type.True not(Type.False rhs){ return(true); }

public bool(T) not( bool(T) rhsMethod ){
return(
(T rhs)=>bool{ return(not rhsMethod(rhs)); }
);
}

public bool(A,B) mix Type.BinaryOperator not( bool(A,B) mix Type.BinaryOperator rhsOp ){

return(
(A lhs, B rhs)=>bool{ return( not rhsOp(lhs,rhs) ); }
);
}




A bit ugly, but will allow not to act as a modifier on methods or operators that return bool. a not equals b for example would parse out nicely into the proper order of operations without having to manually implement the opposite of equals. not is the simple intuitive case.

Might need to work on some syntax to make it less fugly.
Sign in to follow this  


0 Comments


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now