Showing posts with label parser. Show all posts
Showing posts with label parser. Show all posts

Saturday, April 12, 2014

Marpa C parser

Happened to run across a C parser written on Marpa whilst perusing the CPAN today.

Saturday, September 1, 2012

Marpa

Marpa is a new parser module (and algorithm) that somehow God has seen fit to provide in Perl first.  I mean, not God, but His messenger on Earth, Jeffrey Kegler.

The list of Marpa's features seem nothing short of, well, everything I ever wanted in a parser, and so I will be rebuilding Decl's parsing on Marpa and throwing out my own parsing code.  I'm actually pretty darn proud of that parsing code, of course, having invested a couple of months in it, but - well, I learned a lot and it's a thing to remain proud of, but if somebody else is doing a more thorough job with something, it's always true that you're better off stealing their work.

I wonder how successful Marpa would be in analyzing natural language?

Thursday, August 9, 2012

Combinatory parsing library ... in C

Here's an interesting library for building fast parsers in C.

Saturday, October 29, 2011

Shakespeare, the programming language

So there's a cute little language called Shakespeare that I've run across before. It's a little silly, of course (well, that's the point!) but it came up on HNN, as does everything eventually, and one of the posts there suggests a "sort of obfuscator" that would, you know, write Shakespeare for you.

Which I think is a pretty dandy idea, in conjunction with a Shakespeare interpreter. It might use a Markov chain to generate the fluff, select characters at random, and so on and so forth - and everything should compile/interpret correctly.

Underlying the Shakespeare, of course, is a kind of bytecode language. That would be the interpreted language, and that would have a more normal expression as well that could be Shakespearified.

This could showcase parsers in Decl, and might not be a bad way to start doing some fun NLP-type stuff, too. Think about it!

Wednesday, August 3, 2011

Shell under Wx

I really want a Perl REPL inside Decl, but in a Wx or other GUI environment, I want to be able to put it into a separate window. Until now, somehow I've managed never to be able to figure out how it's done. But there is a CPAN shell in such a Wx app. What I really want, then, is to do that, but for a generic shell. (There is also such a thing for Tk, by the way.)

In the larger scheme of things, it would be nice to be able to define the "operating environment" in some way, and pop up semantically specified things like "a shell" in a way that's appropriate to that environment. In a remote context, it could even be some kind of AJAX thing. (I know it's no longer de rigeur to call it AJAX, but hey, I'm old.)

While researching it this time, I also ran across the kitchen-sink REPL Devel::REPL, based on Moose and importing lots of stuff, and PPI, which is a Perl kind-of parser that looks pretty darned interesting.

Monday, May 30, 2011

LLVM

A chapter in The Architecture of Open-Source Software on LLVM, the compiler backend that's used in GCC and lots of other things.

Tuesday, March 30, 2010

Milestone: line parser works!

Just to mark the event.