Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

gitlab.com/spritely/guile-goblins

This is the [Guile](https://www.gnu.org/software/guile/) implementation of [Spritely Goblins](https://spritely.institute/goblins/), a distributed object programming environment. Goblins provides an intuitive security model, automatic local transactions for locally synchronous operations, and an easy to use and efficient asynchronous programming for encapsulated objects which can live anywhere on the network.
https://gitlab.com/spritely/guile-goblins

More stuff towards captp support...

ccab4204a4b4bc8e920d6f0bd395afd78c0209c4 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
stuff towards ocapn support

719424944eaea2f037a24901b718460d3e85c8e6 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
comment out will / gc stuff for now

e4b9d503c1c92294de09d040c0cfd9d8bfdb3579 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
more progress towards porting captp

- update define-recordable to have <foo> style record names,
drop make-* from constructors
...

dc73995b571c951db507f18be472d1e34d856769 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
More of the hashtables of the setup-captp-conn stuff

6bd10800f5dfdbd95f322f8e8e421765fa814f58 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Switch record / record* to make-syrec / make-syrec*

0be3032374ceb516507442fff7bfb8134790f54d authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Switch over to make-hash-table

Ie, switch away from racket's constructors. But note what the
expected indexing type is.

a5f597b2f97d55871a7d1cd7c5d164d21697fe86 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Switch to using make-syrec*

8ee4c6e0f2a4acef948bd89b4dd6a8c1521ad666 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
All those hash-foo methods with guile-specific operations

ee49c664af2fbe89aab2e179c827d6ce429bc8d1 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
copyright stuff

cfeea5fc10403bfacc7ed01fcc2ddc515ae1360a authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Add methods implementation

7709a68e5333a3438897429243bb4f259670e11c authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
start adding captp stuff from racket, but porting it slowly

31b89490230d58da5619fe65242c2b897c05e7ee authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
a note on licensing

57c796f9994ca82dbc7bfe3794fbdc2d4b9ac100 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
start of a README

e5c872b17626821ed939af944654c6ae28337499 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
tests: test-inbox

7e224a9d1449b810222522a5051dda0673fce2b6 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
inbox.scm and vat.scm

fca3e4017b1bcfe0f08025696fb01ce2c53fe3e5 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Start of porting over captp stuff

9d172e3bc50782a20ecf7462f6f9d0937943449c authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Add simple promise pipelining test

05db6c6ca0aa97a84436b21615c4e7b4eb935631 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
A whole bunch of fixes to the syscaller, mactor constructors

Match patterns carried over from racket-land once again not working.

Also forgot to use a bunch...

f46abc8535ce77a5518cc74c7b4e0a7ab9f44c15 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Fix send-rest to actually iterate through messages

Was using racket match syntax, oops

df0730d33e806c00177b600fa72c6cdfcb4306ec authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Adjust near-refr? to allow near promises, add far-refr? docstring

22dd7bde5766dc2f5e6ca71b9fce923542d42ba4 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
stage4: remove display-or-log-error

c60cb884c8f35402e456f28b2214a90715ad0be5 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Add (goblins core), based on (pre-goblins stage4)

01585f1126daf071ef5dbf47451058b7fe8d10b4 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Oops, remove pk

a1e8913b32f21a28dd9101ad9505e739679fd7d9 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
start of test-proto-vats, with spawn-delivery-agent

2969393c72626fe16a65feb10d133fe1ebfcf160 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Add spawn-delivery-agent

b201a3b1a716ae2b668eb21c11fea1a81bdae502 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
switch module name to match filename: goblins-stage4

a3b8cac6c700d01b427370bafcb6acd82d9ba212 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Export dispatch-message(s)

ba87e781c025c1ee2b0580ad267a2468e8197fb2 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
actormap-churn now uses buffered transactormap for greater efficiency

075bd877f29cb8f0c98d089919e9e7a34fa4715f authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
transactormap-buffer-merge!

bbe3be2a4c348d58fca4dbe94ddf80186b064b4e authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Send errors to listen requests that go badly too

777520775302f0b4a3d6a1c3fb666b874adc0833 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Allow transactormap-merge! to also merge transactormaps

7ec8ce1a5c7643a287201ecde82fd409291541bf authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Add actormap-churn-run!, export that and actormap-churn

d9e933970af027712151914edd951c6b051f7d4a authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Switch back to using $ for synchronous call-return

`S` just isn't as noticeable...

6b313fa766a96fbf0e2125bb6a1204319d05ba96 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Move all the pre-goblins stuff to the pre-goblins directory

d6d5de8c08bd988b7b60b8dd582b90fe1c40672d authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Mild optimization: Switch a couple of syscaller methods to using _<-np

89e1b2d85f8bbf8ba5e3d16b6e13ac7f3031a870 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Fix the syscaller break-promise method

ea41eb2645c72041bcf98a4eb15b639ebe796093 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Printing stack traces work now

Promises don't quite seem to break properly yet though...

704690e99f3cb217ae1c62cb74356a3aec59df22 authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Further revelations about how to do the transactormap optimization

8a16943140f60ce5238bdd7a161bb0f8137e5c9d authored almost 3 years ago by Christine Lemmer-Webber <[email protected]>
Closer, but not quite right, in the path towards full turns/churns

Error handling doesn't work right. Otherwise, it's real close...

27520aa2ddc72b4765ae1d00e39ee2ca8c5c08ed authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
`first-one?` starts at #t then moves to #f

1c2d58f35205e32fe70ad7f3c4b380a0ced18478 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Pass in args to <- as a single argument

7d85150560fcc537e7dcd4923693df9a78a45eca authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Enable syscaller on method, fix error message for Guile style

a1084339732b6cbe5a15da58b9373576581e9fcb authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Use a for-each loop instead of a named let for better readability

fbe5525ee396a8446533f54a991eb403a1179285 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
actormap-churn and actormap-churn-run

Or most of them, anyway. Return value doesn't seem to be working
right.

Also fixed up the meth...

2471a5cae8f66aebe64fd6ebb89f10b4deb37ce5 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Rename $ to S so we can stop conflicting with guile's pattern matcher

Kind of a weird thing to do, but apparently $ is common enough in
scheme pattern matchers (inclu...

9f45f297b0e35cf1bcf1cf242dfb44cb4f49bb15 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Revert "Don't use $ in match results, because we broke it with our own $"

This reverts commit e7da9746ef8c5f7a94409ef6bf18bd234ed69111.

We're going to take the approach ...

8bd29b4f5d880f3a8c10f28572d85919156c27ba authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Don't use $ in match results, because we broke it with our own $

e7da9746ef8c5f7a94409ef6bf18bd234ed69111 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Fix fulfill-promise's (forward-messages) subroutine

adc6af3d90f879f4b3117aa92c9677d4b9ca3a32 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Fix match pattern in actormap-turn-message

Difference in Racket vs Guile match syntax...

19b2550a6cbffe327426ea9ede04c24091bfb91d authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Fix number of actuments to spawn-mactor

999555277589becc0b472142b6ebc61ce45b3c37 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Export actormap-turn-message

5a5b2c9dfc5f10bb50d10acd84418070ba15e0d0 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
In theory, all the code up to supporting on...

3b990b1f46f619e61bf9db7cb5838cddedf0503b authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Uncomment send-listen syscaller method also

1357109588a9748d59cb6742726b3b870393509e authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Port over _handle-listen

9be0242a83c7a3e567c903a36c4568332c5f7b86 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Uncomment _handle-message within syscaller dispatch which is now ported

b6bf07cbd73bbe142da05710697074889a46f15e authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Make a note about refactoring <questioned> into its own thing

79286f386805e2f873e800ac8156c8b2bb3e68e0 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Make separate <questioned> record, instead of lumping into <message>

8653d82f5179f264a10c9ffb88f10d84fd300e5f authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Dealing with yet another "define where define is not allowed" issue

9e7a6799b682246add6742e8118a00afcf083ead authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Fix call to _$

b9e0a6194d3977102c650abf592fba61faf05843 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
port _<- syscaller method

83ec471b8d59d6bd1440166fe69726496edd56dc authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
A TODO about the question-message stuff

757bd8308f5f2c1da086aa2fc41b23e054cc5d28 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Make a note about mactor:closer and cycles

Specifically, a lot of work and thinking went into dealing with
mactor:closer and identifying cy...

ddd25055ed3cde3ccfe9c95ccc53048f5d5588e7 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Switch some stuff from (void) to _void

66a1d4356748e070e29a3033829f19b1ab280e8c authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Port _handle-message (in theory)

737bb3754005770fec70758c4789158f8b074045 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
uncomment syscaller methods for fulfill-promise, break-promise

d2790224cc6785814ea95dbc6b7f374dce05c87e authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
move utilities all the way into one place

a5530117f40494cf587027e9be9274baee4922a0 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
listen-requests, fulfill-promise, and add vseteq

5cccaff9f748512dd40e96fed214f7128fcef2e7 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add the rest of the refr types, and hey export the predicates, why not

c576d3d1a4101e44fbd9d0256b79f856455eabcf authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
spawn-promise-values, etc

also (temporarily) move simple sealer triplet in-module

5b1254f0a7c877968e80f6c3c1cdb23d62f74215 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
define goblins-stage4.scm appropriately

00480d1458f4c22856727921946bcee439c30e34 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add one more test to stage3

25c44215a14fbac54368f2495029c1d45c75b962 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Note about the messiness of stages-breaking-outness

567aeb01a44a0a65e25c6809a9142c11def032b9 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add the unsealed mactor resolution stuff

ced43791804066e24a164201c45117b6343e212a authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add unseal-mactor-resolution

64970ccdb358d3da11a68574689bfa5b865108ab authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
uncomment the mactor:encased and mactor:local-link stuff in _$

8c7a6d70bdd7f1e45e85e8f5557947d36dd12e37 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Stage4, based on where stage3 mostly was...

c39aae03134134181835c4aa0fa4356dcf142499 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Enable <-np in syscaller

3151cef272442e89051bea867a2aa7806cce94ef authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
change our goals for stage3

40b3be0cf8d9e49e0a1c20c850762ba31942fbc1 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Wait, <- isn't ready yet

cf466765201fc57a0bc0aac79412750d1f79ae8b authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
syscaller methods for most of the message sending things

95c03a6ff6076e99b932eef1c359e8026e9518e1 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Fix up how some calls to error happen

a93822c423b8ce708aac6a4cf37ad135cd04169e authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
fix spawn-mactor / np on the syscaller methods

df924801088edee921f64453514790b14f27bcd9 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
And remove previous messages stub section

684ba615b66f0e7707982d3ba251c24d892282d9 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add message structs

1907615b914ffa27c9e2b6353596fd66887b62f8 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Remove commented out code for "become" special sealers.

We actually added these elsewhere, so...

d4c80d9b48c6a20927894d88ca460c49dbc1da2f authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Use mactor:eventual / mactor:unresolved convention

Same as the Racket library then. Will make porting mildly easier...

a700c859fb18842cfa8c235356b064435394ad8f authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add mactor:unresolved-add-listener

1d924017033e6cc2bc6c67318171e0c3351f1bcf authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add some page breaks to -stage3.scm since it's getting large

389be52a378ff599fb95654a5b1fea4ce31fce7a authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Some comments on <listener-info>

abd282c5867f3d2a7b8c9a43ed6e3b683ed0ccdb authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add copyright headers

f23d85fc58fede6d67dcffba6dc6a1fd2c83916c authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Put the comments documenting how vats work in place

620fc2b4ae11eb26b567752494c98d539a58afd3 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add Apache v2 as license

f2df7d62c8c6f65e201ae747e3e3a5a70b312b66 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Ooops, forgot mactor:remote-link in mactor-get-m~eventual

baef8a71627db1edd685ecfd22e5f4d1229f659b authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add mactor-eventual?, mactor-unresolved?, etc

b803c2f153fffec4367abc7a213d51f6055ece15 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add the basic mactor records

fcaf171d19b461dd9852329dbf734baa65884f38 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Pull in documentation from the racket codebase

539ec8c76d13bba2c0e96cc46fd7edfa5fde58d3 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
And a bit more stage2 cruft

Really this is all stuff that's implemented in later stages, so why
not clean up

fedfe34f285ee05b045774b5a2e941a3181db5de authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Remove cruft from stage2

b36b6989271b376afad061ca93d83eb325b73935 authored about 3 years ago by Christine Lemmer-Webber <[email protected]>
Add goblins-stage3 and goblins-stage3-tests based on goblins-stage2

Stage3 specific stuff yet not added quite yet...

e04be7f720d4846d203866b09dba5407b3e9ccbe authored about 3 years ago by Christine Lemmer-Webber <[email protected]>