« first day (195 days earlier)      last day (356 days later) » 

01:20
Narcissus?
 
1 hour later…
02:33
@Downgoat JS interpreter in JS
 
19 hours later…
21:15
@Downgoat you're writing the new cheddar thing in C++ right?
also, some ideas for datatypes:
1. matrix
2. table (like in HTML)
3. queue/stack
4. buffer
5. tree
6. trie (prefix tree)
21:56
@ConorO'Brien I don't think so (yet)?
@ConorO'Brien wat
Can you give more details
@ConorO'Brien yeah, I've been thinking of a matrix data type but haven't described on syntax
table is like named 2D array
@Downgoat Not just T[][]? If you want to disallow jagged arrays, I'd use C#'s T[,]
Hm
that allows jagged areays
no idea wat [,] is
22:11
Multidimensional array
C++ is not good example for idiomatic syntax
C# != C++
@Downgoat disallows jagged arrays
in the initializer you can have foo[3, 4] or things like that
I think dedicated matrix type is better
we'll be able to optimize better too
But
Multidimensional array is matrix
Plus you can have int[3, 3, 3] lookItsACube;
That's not how ches work tho since
22:16
???
Arrays are not primitives in cheddar
Yeah arrays are never primitives
cough c, c++, rust cough
(probably a lot more too)
Hmm
@Downgoat ok wat
@Downgoat waaaaaaaaaaaaaaaaaat
-10/10 arrays are not primitives in ches
ಠ_ಠ
wat
array is primitive????????
such confuse
22:19
less confus now?
@ASCII-only oc, it's currently an idea
@ASCII-only matrix is multidimensional array, not necessarily the other way around
@ConorO'Brien ???
@ASCII-only matrix is a 2D array
So will matrix be a wrapper over multidimensional array
isn't it?
22:22
@ConorO'Brien yeah
Oh yeah
so multidimensional array isn't a matrix
@ASCII-only yeah, sure, like for what?
So apparently arrays aren't primitives ;_;
Tree/Trie/Table
okay
so table is like a 2D object
22:23
I'm assuming Buffer is like Node's, queue/stack are like JS
think HTML tables
@ASCII-only yes on the former, and JS has queue/stack?
JS array is a queue and a stack
It has push, pop, shift and unshift
yeah, those types of queue and stack. though technically JS (and similar) are just double-ended queues/stacks
@ASCII-only a tree is a datatype that has parents and children.
a trie is a tree that stores information in the prefixes of a data piece
In computer science, a trie, also called digital tree and sometimes radix tree or prefix tree (as they can be searched by prefixes), is a kind of search tree—an ordered tree data structure that is used to store a dynamic set or associative array where the keys are usually strings. Unlike a binary search tree, no node in the tree stores the key associated with that node; instead, its position in the tree defines the key with which it is associated. All the descendants of a node have a common prefix of the string associated with that node, and the root is associated with the empty string. Values...
Yeah
But what are some example prototype methods
22:26
Tree/trie
is cheddar a prototypal language?
idts
Don't think so
or do you mean, like, an example in JS
I've written a trie for JS
lemme see if I can find it
Yeah
Also what are objects like
Will they have weird JS properties e.g. prototype, constructor, __proto__, and will all non-primitives derive from Object
idk what objects will be in cheddar
@Downgoat
22:28
@ConorO'Brien object will be OO Objects
and to answer A-only's question?
@ASCII-only of course not. Cheddar will not, not never, have any preset, or default properties on any object
2
Yay :D :D :D
So how do we modify builtin types
Also bold message -> starred
and starred messages -> starred
@Downgoat ^^^
22:40
@ASCII-only extend String { get splitSpaces -> self.split(" ") }
@Downgoat can you do extend String { get length -> Infinity }
@ASCII-only that's the users problem.
@ConorO'Brien ?
oops
I misread badly
I thought you were taking issue with the fact that what you described might work >_<
my bad
So that works?
Looks like it will make the compiler a little harder to do, but it has its uses

« first day (195 days earlier)      last day (356 days later) »