Andy and I've never really settled on a standard file extension to use for serialized Fan objects. The main contender right now is "fog" for Fan Object Graph, although technically it is a tree, not a graph ("fot" doesn't have a nice ring though).
Any other ideas before "fog" becomes enshrined as convention?
tompalmerThu 24 Jul 2008
No allowance for internal references? I know JSON avoids that on purpose, but I'm not sure I know all the reasons.
Correct - cross-references need to use a Uri or some other identifier. For example relational data uses a foreign key. The reason for tree based versus graph based is because its about a zillion times simpler. Plus the tree walking model works for JSON and XML trivially. Its pretty easy to make anything tree based and IMO is a cleaner design anyhow.
Could it contain more than one object though?
In general InStream.readObj is stream based, so you could have multiple objects in a stream. Although I would say its better to just wrap multiple objects in a list. Both of these are a valid serialized object:
"one item"
["one item", "two items"]
No other suggestions? Sounds like "fog" it is then.
alexlamslThu 24 Jul 2008
strictly 3 letters? :-/
jodastephenThu 24 Jul 2008
Could be .fanser for fan serialization.
Or, .fang for fan graph.
brianFri 25 Jul 2008
"fang" was on our original list, along with "floss" for fan language object serialization syntax. Although from that list "fog" was our winner.
I think "fog" is still my fav, so we'll go with that
brian Thu 24 Jul 2008
Andy and I've never really settled on a standard file extension to use for serialized Fan objects. The main contender right now is "fog" for Fan Object Graph, although technically it is a tree, not a graph ("fot" doesn't have a nice ring though).
Any other ideas before "fog" becomes enshrined as convention?
tompalmer Thu 24 Jul 2008
No allowance for internal references? I know JSON avoids that on purpose, but I'm not sure I know all the reasons.
I think "fog" sounds cool either way. Here's what FILExt says about it. Seems clear enough to me.
alexlamsl Thu 24 Jul 2008
Could it contain more than one object though?
brian Thu 24 Jul 2008
Correct - cross-references need to use a Uri or some other identifier. For example relational data uses a foreign key. The reason for tree based versus graph based is because its about a zillion times simpler. Plus the tree walking model works for JSON and XML trivially. Its pretty easy to make anything tree based and IMO is a cleaner design anyhow.
In general InStream.readObj is stream based, so you could have multiple objects in a stream. Although I would say its better to just wrap multiple objects in a list. Both of these are a valid serialized object:
No other suggestions? Sounds like "fog" it is then.
alexlamsl Thu 24 Jul 2008
strictly 3 letters? :-/
jodastephen Thu 24 Jul 2008
Could be .fanser for fan serialization.
Or, .fang for fan graph.
brian Fri 25 Jul 2008
"fang" was on our original list, along with "floss" for fan language object serialization syntax. Although from that list "fog" was our winner.
I think "fog" is still my fav, so we'll go with that