flussence_ the thing I'm thinking of is: parse the heredoc as a literal string, remove the whitespace from the result, then interpret that as the equivalent inline q:* 00:04
sorear Should I be listening to the verbiage in #parrot? 00:09
00:10 am0c^ left
coldhead this parrot drama is scary for noobs 00:11
i feel like my parents are fighting
00:14 felliott joined 00:15 plobsing joined
colomon oh noez. 00:17
sorear Does anyone have any last minute requests before I tag niecza v2? 00:19
00:25 snearch left
PerlJam coldhead: don't worry too much. This is only the 4th or 5th time it's happened (and each time things have gotten better as a result) 00:27
00:32 muixirt left 00:35 kst` joined, dorlamm joined, kst left 00:41 kst joined
[Coke] it's not like parents, more like 2 uncles you only see a few times a year. no worries. ;) 00:49
[Coke] has flashbacks to Coleda Family fights and goes off to hide in a corner with a beer.
PerlJam At least this time you'll still see the uncles around on holidays when the dust settles
00:51 kst left 00:52 kst joined 00:53 kst` left
[Coke] rakudo: Inf.int.say 00:54
p6eval rakudo d3e9a3: OUTPUT«Method 'int' not found for invocant of class 'Num'␤ in main program body at line 22:/tmp/sXkZh4NwPA␤»
[Coke] rakudo: Inf.Int.say
p6eval rakudo d3e9a3: OUTPUT«-9223372036854775808␤»
00:54 cdarroch left
[Coke] I'm goint to ask the rt admins to add a tag called "needstests". this work for folks? 00:59
PerlJam [Coke]: +1 from me 01:00
pmichaud I thought we had such a tag already?
[Coke] (I think I'd really like a new status, but this seems less invasive)
pmichaud or did we just decide that assigning to moritz++ was sufficient?
I know we asked for a tag to be added of some sort, which the rt admins did for us
I don't remember what it was.
[Coke] I don't see one with "test" in the name. 01:01
I see "testcommitted"
s/one/relevant one/
pmichaud okay. proceed then -- maybe the rtadmins will say "didn't you already ask for ...?" and remind us :) 01:02
or perhaps they will smite us down with gigantic bolts of lightning.
pmichaud hopes for the former and not the latter.
jdhore pmichaud, Good work on that episode of FLOSS weekly a few months ago...I loved it. 01:04
pmichaud merlyn++ definitely gets the credit. he just asked questions and let me ramble, and then edited it into something coherent, I think. But thanks! :) 01:05
PerlJam or had someone edit it into something coherent :)
[Coke] heh. I listend to that episode and have skipped every one since. ;) 01:06
coldhead it's nice how merlyn is now interested in perl 6
well done there
[Coke] pmichaud: feedback on 73148 ? 01:08
PerlJam coldhead: have you seen learningperl6.com?
[Coke] rakudo: say (1 ^^ 1).WHAT 01:09
p6eval rakudo d3e9a3: OUTPUT«Bool()␤»
[Coke] rakudo: say (1 ^^ 1)
p6eval rakudo d3e9a3: OUTPUT«Bool::False␤»
[Coke] rakudo: ~fail().say 01:10
p6eval rakudo d3e9a3: ( no output )
coldhead i hadn't, thank you PerlJam 01:11
01:13 dorlamm left 01:19 ggoebel left 01:23 stkowski left 01:24 ggoebel joined 01:25 cosimo left 01:28 felliott left 01:32 felliott joined 01:33 felliott left
dalek ecza: 79d5470 | sorear++ | docs/announce.v2:
Add URLs to v2 announce
ecza: f937065 | sorear++ | FETCH_URL:
Update bootstrap to v2
sorear v2 announce sent. 01:49
colomon sorear++
01:51 drbean joined 02:07 Grimnir_ left 02:08 shabble joined, Grimnir_ joined
snarkyboojum as far as I know learningperl6.com hasn't changed for years :) I wonder if merlyn and co still plan to write it? 02:11
02:16 whiteknight left
snarkyboojum twitter.com/#!/merlyn/status/32263043912040448 02:27
well, at least it's a "possible reality" now ;)
02:29 felliott joined 02:34 slavik left 02:35 slavik joined, slavik left 02:36 slavik1 joined 02:43 bluescreen left, lopaway is now known as lopnor 02:49 kcwu left 02:57 lopnor is now known as lopaway
snarkyboojum pretty nice introductory perl6 preso! mfollett.com/finalized-perl-6-talk-slides 02:59
03:00 noganex joined 03:04 noganex_ left 03:19 Chillance joined 03:28 kcwu joined 03:38 karb joined
karb after building perl6 from the tarball when I run perl6 it runs fine. But after I reboot my machine and then run perl6 it throws a segmentation fault. Is anybody else having this problem? 03:42
coldhead that's awful :( 03:43
is it an environment variable maybe? set during the build?
karb I tried with gdb the fault seems to occur in src/packfile/api.c:941
i think so
colomon Have you executed "make install" ?
karb seems there is some env variable thats set during make, but is lost when i reboot 03:44
ya.. i tried make install after reboot
it does not work
has anybody else reported this? 03:45
pmichaud phenny: tell coke okay to close 73148 (sorry for not responding sooner)
phenny pmichaud: I'll pass that on when coke is around.
pmichaud or do I have to say "[coke]" for the nick?
phenny: tell [Coke] okay to close 73148 (sorry for not responding sooner)
phenny pmichaud: I'll pass that on when [Coke] is around.
colomon karb: not that I know of. What platform are you on? 03:46
pmichaud that'll get it :)
karb: what OS?
karb colomon: I'm on ubuntu 10.10
pmichaud it works fine for me on kubuntu 10.10
colomon karb: and your problem is with the latest Rakudo Star?
pmichaud and under linux, makefiles can't really set environment variables that get lost at reboot
(environment variables are always local to the make command itself, not the shell that runs it) 03:47
karb yes in rakudo star
pmichaud any chance you have an older version of rakudo or parrot installed on this machine somewhere?
it may be grabbing the wrong library
karb this is a fresh star install
pmichaud have you ever installed star or parrot on this machine before? 03:48
karb no
pmichaud hmmmm
I don't have any clues at the moment. 03:49
That's not something any of us have encountered before, afaik
sorear any time a reboot mysteriously changes something, you should suspect the platform 03:50
karb ok. I'll try digging this. maybe there is some library path issue
sorear computers are supposed to be deterministic. nondeterministic faults suggest hardware failures, in particular RAM issues; I'd try memtest86+ next 03:51
karb actually, if I build the same star tarball on another machine everything works fine.. so its something with my laptop
sorear (however, I've been burned, so I'm probably not the fairest)
karb no problem.. i'll dig through this. Just thought to ask if anyone else faced this on ubuntu 03:52
04:01 felliott left
diakopter pmichaud: I'm confused by "if I'm writing an APL compiler, I don't want the whole Perl 6 runtime" 04:03
(why would you want the whole Perl 6 runtime?)
(which parts wouldn't you want?) 04:04
sorear niecza:
p6eval niecza v2: ( no output )
sorear yay, it updated the tags ok 04:05
pmichaud diakopter: that's the purpose of NQP. it lets you use perl 6 syntax and grammars to write compilers without having to also have the entire Perl 6 runtime available for the compiler to run
04:06 karb left, arthur-_ left
sorear APL was designed to not require a fancy parser 04:06
it is, iirc, a regular language
diakopter sorear: I'm sure you still see his point, though
pmichaud so, if I want to use Perl 6 syntax to write an APL compiler, I can do so without also having to have all of builtin classes and methods that a Perl 6 implementation would expect to rely upon. 04:07
diakopter I guess I don't understand how those are a problem
(yet) 04:08
sorear I just think APL is a bad example - APL would love to have parallel reduce operators on multidimensional compact arrays and other p6runtime goodies
04:08 satyavvd joined
pmichaud yes, pick any other language then 04:08
I mean to run dynamically, not compile to binary and execute that
APL might be a bad example -- I was just trying to pick a language that was none of Perl/Python/Ruby/etc. 04:09
Tcl might be a better one.
04:09 lopaway is now known as lopnor
diakopter does that even need a parser? 04:10
allbery_b yes, it's just a very simple one
pmichaud yes
diakopter 'twas a joke. 04:11
pmichaud github.com/partcl/partcl-nqp/blob/...Grammar.pm might be an example
allbery_b isn't the point more that you might not want all the baggage necessary to call eval?
pmichaud diakopter: obtw, I'm thinking of moving nqp-nom to a new repository in the next couple of days. Anything I need to know to not overly impact your work with nqp? 04:12
I was planning to migrate all of the branches (except master) across
diakopter I still don't get the point of "without also having to have all of builtin classes and methods that a Perl 6 implementation would expect to rely on"
pmichaud Perl 6 has a very large runtime footprint
diakopter I haven't ever looked at nqp-nom 04:13
pmichaud much of which wouldn't be needed for a compiler
diakopter: is any of the stuff you've been working on in the nqp-rx repo?
diakopter nope, I've never had a commit bit there, I don't think.
pmichaud okay
diakopter nor nom
pmichaud have you read the "NQP Roadmap 2011.01" post yet? 04:14
diakopter I didn't even know there was a parrot edition of 6model until two weeks ago :D
I knew only about the ones in jnthn/6model
oh, yes, I read your blog post in the past hour 04:15
along with backlogged the past 24 hours of #parrot out of curiosity
pmichaud it's been an interesting day there, yes :)
okay, I'll take that as being that it's okay for us to move nqp-nom into its own repo, and we'll hope to eventually merge your nqp work into that repo at an appropriate time in the future 04:16
now I just need to check with mberends on the stuff he's been working on :)
diakopter that's all in jnthn/6model
pmichaud okay 04:17
over the next few weeks we'll be migrating past/post to be implemented in nqp, I think -- borrowing heavily from the pieces that others have already put together
diakopter there are "java" and "net" dirs... it's waiting for a "bird" dir
all of past (including regexes)? 04:18
pmichaud yes, hopefully
that's the expectation
diakopter hrm. 04:19
that one in particular will require the most work on both clr and java.
pmichaud yes, but I'm hoping it'll be easier to deal with as nqp source than anything else 04:20
I think jnthn++ has already migrated much of Cursor and other components to nqp source
anyway, if you see us taking a step that looks problematic, feel free to say something. 04:21
I'm hoping there won't be (m)any
diakopter but
he migrated much of the parrot-backend edition of Cursor... I guess he didn't use the Cursor I ported? 04:22
pmichaud he may have 04:23
I didn't look yet to see exactly what was done -- I'm hoping to do that as part of migrating nqp-nom into a new repo.
I may have mis-understood or mis-stated something, then.
04:23 Su-Shee_ joined
diakopter I don't see a Cursor.pm there (yet) 04:24
pmichaud okay, he may be working on it but not completed it yet then
04:27 Su-Shee left, kcwu left
diakopter pmichaud: is nqpbook on hiatus? 04:29
or is it just wayyyy far to the side on the plinko board of round tuits 04:30
pmichaud briefly; I'm thinking I'll write some tutorials and examples to my journal as we work on the new nqp, and hopefully those can form the core of an nqpbook
diakopter giggles as his own joke
pmichaud I posted the roadmap to my journal today and the main comment I got back was "needs documentation"
so, it's not too far to the side 04:31
and the timing would be good now
diakopter pmichaud: were you imagining that the clr edition of Cursor.pm would be identical/one-in-the-same to the other editions? 04:32
(or would you allow for some specialization) 04:33
pmichaud I'm pretty sure that's what jnthn and I are aiming for, yes.
we might allow for specialization for optimization reasons, yes.
diakopter here's sortof a larger question (hoping you have time) 04:34
so... the regex compiler for nqpbird would still target post/pir, I assume....? 04:36
pmichaud post, yes. I'm not sure sure it'll be pir specific at that point.
diakopter what will compile post? and to what? 04:37
pmichaud I've been thinking will have post-to-vm compilers
diakopter oh god.
that is what my questions have been dancing around.
pmichaud if that won't work, we can have separate past-to-vm compilers
diakopter I didn't dare suggest it 04:38
well we've already got the 1800 lines of past-to-vm compilers
pmichaud but if past is flexible enough to handle lots of hlls, I'm thinking post can be flexible enough to handle a variety of backends
diakopter so that may be a miscommunication b/t you & jnthn, or different plans.
pmichaud and post won't look _anything_ like it does now -- not even for parrot/pir
the current version of post is very string oriented. the new version of post (which bacek++ has been working on) models the parts of the vm more directly, with separate types for registers and the like. 04:39
bacek's version of post goes straight to .pbc without needing PIR
anyway, if we end up having separate posts for the vms and separate past compilers for the different posts, I'm okay with that. 04:40
we should still be able to share a lot of code between them, I think.
diakopter for the clr, 6model already has a decently sufficient model of CIL as its assembler and "DNST" as its PAST, ish. 04:41
pmichaud yes, I'd need to look at that a bit. So far neither jnthn++ nor I have detected a miscommunication between us... but part of that is because I'm still fairly flexible on the overall design 04:42
diakopter waves hands in wild ovoids
pmichaud yes, there's some of that as well, following in grand Perl 6 tradition :)
diakopter based on this, I believe I'll halt my work on nqpclr-rx (or continue the halt from November or whenever) and wait until someone tells me the regex compiler should be targetting a clr stack machine or post. 04:45
pmichaud diakopter: okay, that seems reasonable. I suspect we'll have an answer for you on that sooner rather than later (perhaps even as soon as jnthn++ reads this and says "oh, pmichaud++ is wrong" :) 04:46
diakopter and I won't emit milk puddles from my tear ducts if all my work was "wasted". :}
pmichaud no way is it "wasted"
we needed to have some idea of what's possible, your work at minimum tells us that 04:47
diakopter oh, I know, especially not to myself; I learned a lot
pmichaud all of the clr and jvm work has really helped us formulate a stronger approach overall -- jnthn identifies that as a key component of the overall work all the time 04:48
and it's very important to him (and me) that you and mberends find a way to continue what you've been working on
and that all of us find a way to bring it all together under an "nqp" umbrella :)
diakopter meh. I've "thrown away" so much work I'm numb to it, except when I take it personally..... oh wait... 04:49
pmichaud I know the feeling all too well -- I've done the same. 04:50
three separate implementations of PGE, an implementation of nqp-rx, various false starts with TGE and PAST and POST, etc. etc. 04:51
a couple of implementations of what eventually became Rakudo
diakopter and several more to come! 04:52
pmichaud yes, indeed. but economies and capitalism are built on the the principal of "creative destruction" :-) 04:53
diakopter thought that was a Marxist notion
oh, a Marxist framing of capitalism 04:54
pmichaud "
From the 1950s onwards, the term "creative destruction" has become more readily identified with the Austrian-American economist Joseph Schumpeter,[4] who adapted and popularized it as a theory of economic innovation and progress. The term, as used by Schumpeter, bears little resemblance with how it used by Marx." 04:55
justatheory Marx++
pmichaud looks like wikipedia needs an edit to "how it *was* used by Marx."
diakopter wikipedia needs lots of things 04:56
justatheory lol
pmichaud oh, I always somewhat liked Groucho.
justatheory Harpo's letterhead: kottke.org/11/01/harpo-marx-letterhead 04:57
diakopter pmichaud: where might I find a walkthrough/tutorial (or just theory) on identifying & analyzing basic blocks in program trees? 04:59
(or anyone)
pmichaud I don't have a reference off the top of my head; probably a compiler theory / implementation book or something like that 05:00
diakopter I mean, "compiler textbooks" isn't really a helpful answer... (which one explains that well)
pmichaud I've never found compiler texts to be of much use in actually implementing a compiler :)
diakopter I suppose the algorithm on wikipedia is .. ok 05:01
hm, I wonder how general I can get it... (to allow also for future phase inlining) 05:03
05:04 kcwu joined
pmichaud afk for me, time for sleep 05:06
sorear has any of my CLR work been at all noticed? 05:09
diakopter :P 05:10
"by whom" 05:11
"those who matter"
"those who matter to whom"
pmichaud sorear: I've noticed it. I've noticed that it's apparently working. :) 05:19
after thinking about it a bit more, I think it more likely that initially at least, we'll have separate PAST::Compiler sections for each backend. But that's still a preliminary guess -- we'll know more as we get into the details. 05:20
afk again, for sleep
05:28 envi joined 05:33 kaare_ joined 05:51 arthur-_ joined 05:55 gimix joined 06:13 HarryS left 06:15 cjk101010 joined 06:25 lopnor is now known as lopaway 06:45 aesop left, aesop joined 06:49 mtk left
dalek ecza: c6596ea | sorear++ | docs/nam.pod:
Start documenting opcodes for pmurias
sorear out..
06:55 mtk joined 07:08 justatheory left 07:12 satyavvd left 07:17 Bruce_Wayne joined 07:20 HarryS joined 07:58 Bruce_Wayne left, lopaway is now known as lopnor 08:00 kjeldahlw joined 08:16 Su-Shee_ is now known as Su-Shee 08:23 lopnor is now known as lopaway 08:29 agentzh joined 08:37 daxim joined 08:44 satyavvd joined 08:46 onehotmomma joined 08:47 onehotmomma left 08:53 hudnix left, masak joined
masak hola, zebras. 08:53
huh, niecza and yapsi releases almost coincide this month. :) 08:54
08:56 snearch joined 09:00 kfo_ left 09:01 kfo joined
moritz_ Q: How does a geek know it's a new month? A: he has lots of mailing list subscription reminders in his inbox 09:03
masak :) 09:04
09:10 lamstyle left 09:16 lopaway is now known as lopnor
mathw saluton masak 09:19
09:22 dakkar joined
masak bonan matenon, mathw. 09:23
moritz_ is a saluton a quantized greeting? :-)
masak :P
masak considers replying "yes" just to make moritz_ happy
greeting particles tend to interact with the thankfulness particle, the "dankon". 09:25
moritz_ regarding discretized stuff, I have industrial disease :-) 09:27
masak :) 09:28
overdose of academions... 09:29
09:30 Canyon joined
moritz_ :-) 09:30
Canyon hi
masak hi Canyon.
Canyon I have a beginner question
masak shoot.
mathw Excellent
Canyon I want to store some subroutines and global variables in a different file, without using modules(because I'm not experienced enough to write them) 09:31
masak it's not that difficult.
but go on. 09:32
or was that it? :)
Canyon is there a way to do this, without sacrificing showing of errors?
moritz_ learning to write and use modules is easier than reinventing the module system
(this applies both to Perl 5 and Perl 6) 09:33
masak Canyon: create a file A.pm -- put your stuff in there. in another file, write 'use A;'
Canyon I've already written the subroutines
masak Canyon: that's it.
Canyon I don't actually need modules
moritz_ you do
masak sounds like you do.
mathw Modules are how you include things from other files, in general
And they really are very very simple
moritz_ Canyon: a module is nothing magical to be afraid of. It's just a piece of code in a file. 09:34
masak you *could* slurp-and-eval the other file. but please don't do that. it would make all of us sad.
Canyon masak, if I'd use A.pm, would I still be informed about erros, when implementing new subroutines?
masak Canyon: definitely.
Canyon: you can even try compiling A.pm alone, with the -c flag.
(to see if there are syntax errors, etc) 09:35
but even if you don't, you'll get error reports from both files whenever you run the other file.
Canyon I've used require function_index.pl and the "1;" line , and I recall that the script did not work without mentioning the line that caused the problems
moritz_, I'm writing simple scripts 09:36
masak Canyon: maybe you didn't do 'use strict;' and 'use warnings;'...?
Canyon only use strict;
masak use warnings and you'll get more informative warnings :) 09:37
Canyon I was reading here and I got scared: www.slac.stanford.edu/grp/scs/net/t...frame.html
moritz_ Canyon: don't close yourself to the best solution, just because you think it's difficult
Canyon I really want to avoid modules at the moment.
I already have the subroutines
it takes time to modify them
the 1; line is still needed, right masak? 09:38
moritz_ not in Perl 6
masak in Perl 5, it is.
Canyon: you're aware that you're in #perl6 and we're helping you out of pure kindness, right? :P
moritz_ Canyon: that link describe not only how to write modules, but a whole distribution. You don't need the distribution part 09:39
masak Canyon: what moritz_ said. a module is simply a .pm file that you 'use'
nothing complicated about it.
moritz_ Canyon: en.wikipedia.org/wiki/Perl_module has a not-so-scary explanation
Canyon oh, I'm sorry. I didn't realize that they are so much different. In this case, thank you.
masak the '1;' at the end is needed because that's Perl 5's mechanism for saying "module works fine". 09:40
Canyon: no need to apologise. this helps us remember *why* Perl 6 is different ;)
09:40 cafesofie joined
masak Canyon: had you ended up in the wrong Perl 5 channel, people might have called you a moron. (which you're decidedly not.) 09:41
Canyon :))
actually I'm a noob when it comes to perl
I'm used to c++
moritz_ that's quite a shift of perspectives 09:42
masak still, the worst parts of C++ ought to prepare one adequately for the worst parts of Perl. :P
Canyon I'm no C++ expert either 09:43
mathw Not necessarily
The worst parts of C++ are quite different :)
mathw does C++ for a living
masak oh, I'm not saying they're not different.
I'm saying they're, objectively, worse.
mathw I suppose you get used to the horror after a while, but at least neither of them are Java
masak wait... you dislike Java more than C++? 09:44
mathw yup
masak digests that
moritz_ java has the philosophy "it looks less complicated if we force you to write more lines to say the same thing"
masak absolutely. 09:45
Java is a DSL to turn XML into stack traces.
moritz_ right :-) 09:46
masak still, as much as I object to the culture sometimes, I'm generally impressed by the JLS and the APIs. 09:47
the one big omission is closures, of course.
moritz_ it's quite interesting to observe how the lack of closures influences APIs
masak that's a blog post right there.
mathw I object to Java on the basis that it doesn't trust its programmers
masak as MJD once said, in thirty or so years, people will ridicule languages without closures as we today ridicule languages without recursion. 09:48
moritz_ or languages without lexical variables
mathw Was that thirty or so years ago? Because, you know, *point and laugh*
moritz_ mathw: so much for unevenly distributed future :-) 09:49
mathw It's actually hard to use current C++ sometimes, because I know we've got closures in the next standard...
masak mathw: I'm inclined to agree with you about the trust thing. the discussion about OO led me to realize that private attribute and the like are not there for security, but purely for convention.
09:50 tzhs joined
mathw well in C++ you can certainly get hold of private attributes if you want them 09:50
masak the discussion we had on perl6-language a couple months back, that is.
mathw just some simple pointer arithmetic and poking in the header files
masak mathw: right.
mathw and that's one of the stronger private-hiding languages
masak and that's *always* possible, unless you close the user off from the metal. 09:51
mathw yeah
but that's not really the point of my objection to Java
it doesn't trust its users to use operator overloading responsibly
masak right.
moritz_ in C++ you can also just use a preprocessor macro that changes 'private' and 'protected' to 'public'
mathw So I can't write a String-like class in Java
masak moritz_: o.O 09:52
mathw moritz_: true :)
I hadn't thought of that
the preprocessor can be useful, but one of its uses is opening cans of highly poisonous worms
far better to have macros baked into the language :) 09:54
Canyon may I interrupt you again for a second?
moritz_ that's why language modifications are explicitly scoped in Perl 6
Canyon: sure 09:55
Canyon I've modified the files
using .pm and 1;
Ubut I get this error ndefined subroutine &main::push_startsearch called at C:\Documents and Settings 09:56
\Administrator\Desktop\workspace\script.pl line 52.
the subroutine takes args
moritz_ Canyon: did you export that subroutine?
Canyon yes
moritz_ perldoc Exporter
Canyon oh
ok, thank you. :) 09:57
Tene Interesting, 1.0 release of EFL: www.enlightenment.org/p.php?p=news/...news_id=28 09:58
masak <hyperbole>surely, the end times are near!</hyperbole> 09:59
what's next, Duke Nukem Forever? *snort*
moritz_ masak: nope, The Hurd 1.0 is still missing, can't be end times 10:00
masak ah. right.
moritz_ and PHP 6
masak pffft, the PHP guys just want a version 6 like big brother Perl... :P
frettled masak: Duke Nukem Forever has a launch date now, 2011-05-06 in our part of the world. 10:01
Tene I hear Perl 6 folks are claiming to have a release these days.
frettled s/launch/release/, sorry
masak frettled: I know...
frettled Tene: That sounds weird :D
masak Tene: yeah but I meant official releases.
moritz_ Tene: yeah, but it's not a *real* release *cough*
masak you know, the kind that doesn't suck. 10:02
masak hides
frettled The release, my friend, is blowing in the wind.
masak I think I know an official release when I see one!
moritz_ masak: like a yapsi release? :-) 10:03
masak this feels weird. how did I end up trolling #perl6? :P
10:03 Canyon left
moritz_ masak: you ran out of dankons :-) 10:04
masak *lol*
moritz_: speaking of which... one Yapsi release coming up later today.
I'm optimistic, and hope to be able to release the FUTURE with this release.