This week

All in all this was a pretty good week. My new job has been a lot of fun and it feels good to finally have a job where my skills are being used. The team has been very welcoming and are fun to work with. My computer is back alive too… actually it was sometime…

General update

My computer should be working by the end of the week. Turns out the motherboard is dead, so I’m getting a new system: AMD 64 X2 2.8GHz. $347.24 later and let’s hope nothing else fried. My right wrist is also not working so well. I’m taking an anti-inflammatory and have it in a brace. It…

Another one bites the dust

Seems my computer decided I’ve hacked enough on WikiBench this week. This morning I smelled something odd, and after checking my email noticed that my CPU temperature was 84C. I usually push 80C when listening to music or watching video, but when it’s been idle 50C is more normal. So I powered down and poked…

Facebook Application Smashing

A friend and I are starting a new blog to expose vulnerabilities in Facebook applications. Since Facebook has a reputation of being secure, people seem to trust whatever applications will integrate with it. However, careless coding by third parties can allow all kinds of attacks, some of which can result in data theft. Hopefully this…

I’m running out of title ideas

But not motivation to code. Since my last post, the following changes have been made to Affe: The AffeCompiler class has been split into two classes. AffeCompiler stores information about the configuration (host type and symbol table) and passes copies to AffeCompilerState for actual compilation. This allows the host class information to be cached when…

CategoriesC#

More Affe hackery

Today I added: Variable persistence. If a field of type ScriptState is tagged [AffeBound] on the host class, it will be used to store the state of all of the variables local to the script. If no such field is found, no state preserving IL will be emitted. Bound methods can now return anything, but…

CategoriesC#

Affe evolves (Get it? It’s a pun.)

Well, the plan was to have Affe be a simple language. I guess it still is, but I’ve been adding support for many C-style language features and tweaking other features over the past day. Specifically, the following: Added if/else support, with the same nesting rules as C. Added the following operators: ! (boolean not) ==…

CategoriesC#

Affe

Introducing my new CLI language, Affe. While not exactly flexible, the language will be useful to me. Since the goal was to have an expression-evaluating language that targets DynamicMethod instead of Assembly, it’s not used the same way most other languages are. It cannot be used to define subroutines or manipulate objects. In fact the…

CategoriesC#

Mono and compilers

Just two quick notes. I implemented a missing feature in Mono and two people were offering a bounty for it. Who knew that hacking Mono as a hobby would help pay my car insurance? 🙂 Over the past week or so I’ve been reading the Red Dragon Book with the specific goal of writing a…

CategoriesC#

Simple XML-RPC library

I decided to use the XML-RPC standard in a project I’m working on, and meebey suggested that I release it as a separate project. So here it is: Org.Cdh.Xmlrpc. Just svn co https://layla.chrishowie.com/svn/Xmlrpc. No fancy reflection stuff yet. The library was designed to encapsulate the XML part of the XML-RPC spec without doing much else….

CategoriesC#