(sorry, I don't know if this belongs on-list or not...).


On 6/10/2011 1:44 PM, Max OrHai wrote:
Well, INTP here, so at least we have /some/ common ground.


yeah... I think I generally get along well enough with most people, in general...

well, except "Q's", which are basically people who act sort of like Q from "Star Trek" and generally start being all condescending about how "stupid" I supposedly am, ...

well, and females... things are just not generally prone to go well in this area... nothing immoral, mostly just they just tend to either be scared off, or things quickly get really awkward, so things tend to go nowhere...

well, me and "working with people", sadly, doesn't usually go well... although I guess, as great as the idea of "people working together for a common goal and a common good" may seem, cooperative projects soon turn into lots of arguing and people stepping all over each other.

so, it has often usually just been me by myself, mostly doing my own thing...



For me it was:
 Apple II BASIC -->
   "Classic" Macintosh with HyperCard -->
        BASH / C / Python on Linux -->
disgusted with computers entirely and more or less Luddite for about 5 years -->
              Blackberry OS on my phone  -->
Smalltalk, Scheme, Haskell, and JavaScript/HTML on slightly better Linuxes -->
                      Same stuff on Mac OS X, mostly. Also, NetLogo.

I write this from work, where I'm juggling Fedora and WinXP, neither of which quite "just work" for the fairly simple tasks I expect of them.


yeah...

well, as noted before:
MS-DOS, QBasic, ...

I also ran Win 3.11 and Win32s, IIRC because I think for some reason I didn't really like Win95, and Win32s ran many Win95 apps.

later on, I jumped ship to Linux, which generally forced a complete switch over to C for coding (I could no longer use QBasic, being it was Linux and all...).


later on, came across Scheme (late 90s), and at first used Guile, and then ended up doing my own implementation, partly because at the time Guile did stuff that I personally found really annoying (generally, it was hard-coded to call "abort()" at the first sign of trouble, ...).

by a few years later (2003), this had turned unmaintainable (complex and nasty code), and so I dropped the VM and most code which was built around it. at the time, I had figured "well, I am just going to write crap in plain C...".

then later (maybe at most a few months) was like, "doing everything in plain C is lame..."

at first, I implemented a PostScript variant, then realized that it was unusably terrible (trying to write code in PS, "OMG this sucks..."). basically, tokens were parsed and converted fairly directly into bytecode.

I also ran across JavaScript, and was like "oh wow, this is cool...".
so, I threw together a few things, and then had my own makeshift JavaScript imitation (I first called it "PDScript", but later renamed it "BGBScript"...). this was in early 2004.

actually, parts that went into it originally:
most of the machinery from the original PostScript interpreter (this formed the lower levels);
a lot of XML-processing code (a DOM-like system);
a recursive-descent parser, doing a JS-like syntax (parsing directly into XML nodes).

so, basically: BGBScript -> XML -> PostScript (sort of...)
the GC was also conservative mark/sweep with raw pointers.

it was also "teh slow" and spewed huge amounts of garbage, which was not good with a slow conservative GC.


a later partial rewrite (in 2006) re-incorporated a number of parts from the original Scheme VM (and made a number of language-level changes), and switched over to using S-Expressions as the internal representation for the ASTs, as well as re-using a variant of the Scheme-VM's GC (precise mark/sweep with reference-counting and tagged references).
the 2006 VM also had a working JIT.

in 2007, a C compiler was written, which switched back to XML for the ASTs (it was built more from code from the 2004 BGBScript implementation). the initial motivation was mostly that dynamically-compiled C could probably interface much better with native C. but, the compiler was very slow and buggy...

in 2008, BGBScript was partly rewritten again, mostly switching back to the other GC (conservative mark/sweep), mostly as the precise-GC was painful to work with. sadly, this broke the JIT, and made it all a bit slower, and I have not (as of yet) fixed it (the interpreter is fast enough...). stuck with S-Expressions for the ASTs as well.

and, in early 2010, added a bunch of spiffy new FFI stuff (mostly to eliminate most of the boilerplate needed to call into C code...). the FFI is itself partly built on parts of the C compiler though.

late 2010/early 2011, tried to make a spiffy new VM and a new language (BGBScript2), but this effort fell on its face (too much effort and not getting working fast enough), and I later just reincorporated a lot of the planned features back into BGBScript.

recently, have mostly been adding misc features, fixing bugs, ...


but, beyond this, I do a fair amount of other stuff (3D stuff).

sadly, none of it is terribly compelling, and none of this provides a source of income (eventually needing a job is an issue, I don't know if anyone will pay me for these sorts of things...).


or such...

_______________________________________________
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc

Reply via email to