Category Archives: AjLisp

End Of Iteration 2014w03

Previous Post
Next Post

Great week extending interpreters.

AjErl

My Erlang implementation as interpreter in C#

https://github.com/ajlopez/AjErl

I added multi-functions, that is, functions with the same name and arity, but with different argument matching conditions. And I started to write a minimal Process, to have threads running functions. Next steps: implement process mailboxes.

AjLisp

I was working on my C# implementation

https://github.com/ajlopez/AjLisp

I started to add Java Dot Notation, to access native types and objects. So, I grabbed some code from RubySharp/PythonSharp/AjSharp to access .NET types and objects, and wrapped functions to invoke properties, methods and constructors.

Aktores

More work on implementing Akka-like actor model in C#

https://github.com/ajlopez/Aktores

I should refactor mailbox implementation. After a bit of design, I decided to have a worker thread by actor, consuming a concurrent queue. ActorRef could add message to the queue.

RuScript, ScaScript and SimpleGrammar

I updated the version of SimpleGrammar

https://github.com/ajlopez/SimpleGrammar

to fix a bug detected consuming the library from RuScript:

https://github.com/ajlopez/RuScript

I’m using SimpleGrammar in

https://github.com/ajlopez/ScaScript

my Scala-like interpreter in JavaScript (I just implemented only a minimal parser).

Others

I was working in two non-public projects, and updating old PHP personal sites. I moved the code generated for Sinatra

https://github.com/ajlopez/AjGenesisNode-Sinatra

to use a modular instead of classic approach.

More fun is comming.

Keep tuned!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

End Of Iteration 2013w51

Previous Post
Next Post

My main outcome for this week:

AjErl

I was working on my Erlang interpreter written in C#:

https://github.com/ajlopez/AjErl

I improved the match algorithm, incorporating more use cases and resolving them using Test-Driven Development. The REPL is working:

Other works

I updated my PHP projects, removing old short tags notation:
https://github.com/ajlopez/AjConsorSite
https://github.com/ajlopez/Inmob

I refactor internal implementation of:
https://github.com/ajlopez/AjLispJs
https://github.com/ajlopez/SimpleYaml

I worked on three non-public projects.

Keep tuned!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

End Of Iteration 2013w50

Previous Post
Next Post

After a series of weeks preparing talks, this week was the exception. No talk, no course to prepare or give. So, I could dedicate the time to code!

AjLispJs

I started to refactor the code:

https://github.com/ajlopez/AjLispJs

Past week, I migrated the tests to simpleunit. Now, I was splitting a big module in submodules/files, and refactoring the tests to use those modules. I should complete the compilation for browser: the reason to have only one big file was to easy use from browser. Now, I now how to “browserfy” my code.

AjErl

My Erlang interpreter written in C#:

https://github.com/ajlopez/AjErl

Past week I added arithmetic operations. Now, I improved the internal implementation, have a better matching, and added more arithmetic operations.

I was working on removing short tags from my PHP projects https://github.com/ajlopez/AjConsorSite and https://github.com/ajlopez/Inmob

I also worked on three non-public projects, in C#. More fun is coming.

Keep tuned!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

End Of Iteration 2013w27

Previous Post
Next Post

An intense week ended. I worked on:

SimpleLisp

https://github.com/ajlopez/SimpleLisp

A new implementation of my lisp interpreter, this time trying to compile to JavaScript.

Mass

https://github.com/ajlopez/Mass

Minor fix, a missing reference in solution without test. Now, it compiles with msbuild from the command line

TddOnTheRocks

https://github.com/ajlopez/TddOnTheRocks

Minor updates, to be ready for my Sunday post (Spanish)

PageJs

https://github.com/ajlopez/PageJs

Only the first test and implementatio (parse an integer, a variable), but I was invited by @mgiglesias to give a talk at PHP Conferences 2013, Argentina. Big people are coming, and great speakers. I will give a talk about PHP and Node.js, for example, calling Node.js from PHP. One thing I want to show, is a PHP compiler to JavaScript that runs on Node.js/Express. It’s using my SimpleGrammar project, from the source.

SimpleGrammar

https://github.com/ajlopez/SimpleGrammar

Minor addition: the capacity of parsing a word, like ‘for’, ‘while’.

GrammGen

https://github.com/ajlopez/GrammGen

Good progress. Having a recursive parser, guided by rules, defined by C# code. All is in place, I need to add a bit of tweaks. I could publish it as Nuget package. But first, I should write same samples. And dog fooding: use it in my own projects.

Memolap

https://github.com/ajlopez/Memolap

I updated my in-memory cube. Then, I switched to a customer private project.

AjLisp in Python

https://github.com/ajlopez/AjLispPython

Lisp interpreter in Python, only a minor addition, define special form with test.

Talk Introduction to Python

I gave a talk at local Microsoft User Group (Buenos Aires) about Python. My slides:

https://github.com/ajlopez/TalkPythonIntro

Work in progress:

https://github.com/ajlopez/AprendiendoPython
https://github.com/ajlopez/ProgrammingLanguagesSamples

More JavaScript, Node.js, Python, Ruby, C# work is coming.

Keep tuned!

Angel “Java” Lopez
http://www.ajlopez.com
@ajlopez