I think the next step I would take (if that wasn't sufficient) is to
create a test suite that tests each grammar rule independently,
successively building up to the complex input that is failing.
I'd been doing this for terminals, but it seems like non-terminals get
harder to write as unit
I noticed that both Church-State and the current COLAs depend on
Boehm's libgc for conservative collection. I have long been pondering
a design for an ultra-simple precise mark-sweep GC with an ABI and
macros that don't put too much burden on a C programmer (since I am a
C programmer, and
On Tue, 2009-03-10 at 15:23 -0600, Michael FIG wrote:
Hi all,
I'm writing to ask Alex, Ian, or anybody else about a good way of
extending OMeta or another grammar system to include optional streamed
output.
...
* Aside from external threading libraries used explicitly by other
I have made a new release of my Church-State system
http://subvert-the-dominant-paradigm.net/~jewel/church/church-alpha-2.tar.gz
which incorporates performance work described in these blog posts:
http://subvert-the-dominant-paradigm.net/blog/?p=42
I have made a blog post about recent progress on my Church/State system.
I estimate that I have completed about 50% of the bootstrapping process
(that means I have half of the system ported into the Church language
and working).
John
more so, not only is this codebase written in C, but it also compiles C, and
links the newly compliled code against itself at runtime... though, sadly,
this is not as universally as good as originally thought (dynamically
compiling C code is not exactly cheap in terms of either time or
what you are
interested in. Fonc is still under development.
My projects are also under development and I don't plan to write a
code-level introduction or tutorial until after I have completed the
bootstrap process.
On Fri, Oct 17, 2008 at 3:40 AM, John Leuner
[EMAIL PROTECTED] wrote
a lot of stuff. Could I include that
stuff in a distribution. Could I run it all from Smalltalk. Udo runs
the CodeX assembler from Smalltalk.
Yes you could.
John
On Fri, Nov 7, 2008 at 1:18 PM, John Leuner
[EMAIL PROTECTED] wrote:
I think you could simplify your testing by writing
I think you could simplify your testing by writing the output from a
sequence of tests to a binary file.
Then use a command line assembler (like nasm) to assemble source code
with the same desired output.
Then simply compare the binary files, if they differ, try to find where
they differ (with
On Sun, 2008-10-12 at 21:23 -0700, Kjell Godo wrote:
Could you please explain:
(:reg (:early-cleanup :reg) ,#'(lambda (op cg)
(movl-reg cg (output (lhs op)) :reg (eax cg))
(emit-epilogue cg)))
?
This is a pseudo-instruction that takes the return
I'm interested to see if you can achieve the mixture of dynamism and
C compatibilty within the same source language.
Yes, that's a key goal I'm trying to accomplish. I guess time will
tell.
Implementing compile time static typing for a runtime typed system is not
that easy.
So
In my Church/State implementation I have implemented a low-level (C
like) language and a seperate high-level language (in COLA style).
Sounds interesting. I'll have to look at what you have again (I
believe yours was the Common Lisp bootstrap implementation?) and get
some more ideas.
To be specific, here are the three switches that affect the ABI:
* per-object metadata (enables GC, introspection, safety, etc.)
* multimethods (requires metadata)
* concurrency (requires metadata; enables async messaging, STM)
I view these features as rather fundamental and easy to
You talk about oop pointers and runtime metadata, is this just used for
safety and GC, or do you plan to implement OOP features like dynamic
dispatch?
That was an item that was missing from my original laundry list:
* Prototype multiple dispatch
Supports late-bound ad hoc
Hi Michael
As you may already know, I've been working on a project I've called
Ocean. The summary is that I want to create a source-level
replacement for GNU C that provides language safety, introspection,
user-extensible syntax/semantics, and sane concurrency support. I
will be using the
Currently, libid and idc only support 1 tag: fixnum or allocated object. All
fixnums in idc and above require masking and shifting before operations. A
fixnum operation heavy program, for example, would benefit from using 00 tags,
as in SBCL, unless tags can be optimized away by type
If this was implemented in higher-levels of abstraction we could introduce
different tagging schemes to support locatives, flonums, etc. This could lead
to more language features, reduced memory usage and garbage on smaller
hardware and better performance on 64-bit machines that don't need
While I was implementing the 'loop' construct for my experimental
language (see these blog posts
http://subvert-the-dominant-paradigm.net/blog/?p=28
http://subvert-the-dominant-paradigm.net/blog/?p=29
) I realised that I had to implement non local return functionality.
At first I thought that I
The libvpu.a used by the VPU target is not open source.
The BURG target does register allocation and should produce more
efficient code.
What language are you porting to? I have done a port to Common Lisp.
John
On Mon, 2008-07-14 at 13:45 -0700, Ryan Davis wrote:
Are there any notable pro's /
to see the files, or run 'hg clone url' to get a local
copy)
John Leuner
___
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc
Will the machine code generation also be reflective in
Cola? That would be cool.
Reflective in what way?
John
___
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc
What I did was to download and unpack gc-7.0 in the object directory
(from http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/)
and then configured and compiled it like this:
./configure --disable-threads
(this avoids those pthread linking problems)
John
On Tue, 2008-03-11 at 22:08
22 matches
Mail list logo