<micahjohnston>
sanitypassing: eh math homework is therapeutic for me
<micahjohnston>
sanitypassing: and english homework is just typing out things onto a page and being done :p
<sanitypassing>
well, I've always been bad at math.
<sanitypassing>
so evne though the math is familiar to me, and it's fairly easy math, it's still difficult in a way for me to do.
<micahjohnston>
well in that case I understand
<sanitypassing>
s/evne/even/
<sanitypassing>
I'm averaging a C at Beginner's Algebra right now.
<sanitypassing>
I'm just not a "math person".
Aria has quit [Remote host closed the connection]
<micahjohnston>
mhm
<micahjohnston>
well, keep at it i suppose
<micahjohnston>
it's rewarding/useful
<sanitypassing>
well, I'm majoring in Linguistics. I don't see much use for advanced math in my future.
<sanitypassing>
though I suppose it is always nice to know...
<micahjohnston>
oh yeah, you mentioned that
<sanitypassing>
:\
<micahjohnston>
well there's cool stuff for math in lingusitics, whether it's statistical math for that type of thing, or more symbolic math for chomskyan approaches
<sanitypassing>
eh, perhaps.
<sanitypassing>
which is sort-of why I don't necessarily mind learning it. It *could* be useful in the future.
<micahjohnston>
mhm
<Nuck>
Ugh
<sanitypassing>
I would just prefer it to not be that way.
<sanitypassing>
Honestly, despite what I may say, I don't really hate math
<sanitypassing>
I'm just very bad at it.
<sanitypassing>
I frequently misremember steps, and I'm horrid at mental calculation
<Nuck>
I'm basically gutting oh-my-zsh and copying it manually (modified) into my own zsh setup, so I can remove the bloat but maintain compatibility
<sanitypassing>
lol compatibility.
<purr>
lol
<sanitypassing>
You need to break compatibility some time. Why not now? :P
<devyn>
it's a tradeoff; there are people who are naturally good at calculation who aren't as good at other mental tasks
<Nuck>
sanitypassing: Eh, no I don't
<devyn>
it all depends on what you do
<Nuck>
Well, to an extent
<Nuck>
I'm just trying to maintain the plugins/ and shit
<micahjohnston>
well I gtg
<micahjohnston>
gnight
<sanitypassing>
Nuck: Plugins are overrated.
<sanitypassing>
PLAIN ZSH IS BEST ZSH
<sanitypassing>
devyn: define "what you do"?
<sanitypassing>
career-wise, or just in general, or what?
<devyn>
in general
<sanitypassing>
I see.
<devyn>
what your brain spends time doing and thus exercises
<sanitypassing>
My brain hardly ever does anything.
<devyn>
more flexible when you're young
<sanitypassing>
at least nothing productive.
<Nuck>
sanitypassing: Plain ZSH and you might as well just use bash
<sanitypassing>
Nuck: but then I couldn't say I'm using ZSH
<devyn>
well, zsh's default settings are /a bit/ better
<devyn>
and its completion is better even by default
<Nuck>
Well yeah
<sanitypassing>
All I've ever used was ZSH and a few changes to the config.
<Nuck>
But the true power of zsh is the completions and such
<sanitypassing>
not exactly "plain", but I've never needed more.
<Nuck>
But oh-my-zsh is too fucking bloaty for me
<sanitypassing>
but at the same time, I don't exactly do a lot of complicated tasks via terminal
<Nuck>
I spend 90% of my time in Terminal or in a browser
<Nuck>
I still haven't fully switched to MacVim
sephr has quit [Quit: Leaving]
<Nuck>
Ugh
<Nuck>
Fucking BSD coreutils
<Nuck>
I need to hack around the differences in readlink between BSD and GNU *without linking or aliasing*
<Nuck>
I just have to see if the GNU version is installed as greadlink and use that
<Nuck>
This is getting pretty far from oh-my-zsh now haha
malia has joined #elliottcable
malia has quit [Quit: malia]
<Nuck>
So basically, I'm trying to find a middleground between oh-my-zsh and Prezto, which has the simplicity and smallness of Prezto combined with the ability to drop in an oh-my-zsh thing and have it just work
<Nuck>
As well as a Pathogen-style "infect"
devyn_ has joined #elliottcable
notalexgordon_ has quit [*.net *.split]
devyn has quit [*.net *.split]
notalexgordon_ has joined #elliottcable
malia has joined #elliottcable
yorick has joined #elliottcable
yorick has quit [Changing host]
yorick has joined #elliottcable
malia has quit [Quit: malia]
cloudhead has joined #elliottcable
cloudhead is now known as Guest96579
sephr has joined #elliottcable
alexgordon has joined #elliottcable
gqbrielle has joined #elliottcable
alexgordon has quit [Ping timeout: 240 seconds]
devyn_ has quit [Changing host]
devyn_ has joined #elliottcable
devyn_ is now known as devyn
malia has joined #elliottcable
<micahjohnston>
hi everybody
<Nuck>
Hi micahjohnston
<micahjohnston>
hi Nuck
<micahjohnston>
how's it going?
<Nuck>
Good, hacking together zsh configs while waiting for my phone interview at 11:15
<micahjohnston>
oh, good luck
<micahjohnston>
what time zone you in? central?
<Nuck>
If I were in central it would have passed already
<Nuck>
Nah, Pacific. So it's in about 25 minuts
<micahjohnston>
oh I was backwards
<micahjohnston>
i'm mst so it's 11:50 for me :
<micahjohnston>
what's the interview for?
<Nuck>
Fellowship in NY
<Nuck>
Technically it's a Skype interview, I guess.
<micahjohnston>
cool, good luck
<Nuck>
Thanks
<micahjohnston>
elliottcable is definitely a bot
<micahjohnston>
who registers to every possible social media site and posts realistic content
<micahjohnston>
and the only reason he seems like a real person is because of the sheer volume of social media sites with different types of content
<Nuck>
Said I should hear back in a few days to a week, since hte class is almost filled
<gqbrielle>
cool cool
<Nuck>
also lol I've been coding longer than the interviewer
<purr>
lol
<Nuck>
I'm happy that I started this new zsh config project, it gives me a good big-sounding project to answer "any cool projects you've worked on lately?" with
<Nuck>
Both myself and the interviewer were amateurs at interviews, so that was kinda... funny to watch
<Nuck>
vil: Why do you drop your user down instead of just using iptables?
<vil>
Nuck: because I don't know what that is :D
<vil>
edumacate me
<Nuck>
vil: iptables is a "firewall" though it is usually used as an internal port-routing system
<Nuck>
You can use it to make it so a non-root user can bind a higher port, and that port is shown externally as 80
<Nuck>
It's used on Linux, IDK what the equivalent on Mac would be
<whitequark>
usually? lolwat
<purr>
lol
<Nuck>
It's true — most uses of iptables I've found involved internal port-routing more than port-blocking or firewalling
<Nuck>
And seen in production too
<vil>
Nuck: oh neat
malia has quit [Quit: malia]
malia has joined #elliottcable
malia has quit [Quit: malia]
alexgordon is now known as channeltroll
channeltroll is now known as alexgordon
<micahjohnston>
jo
<micahjohnston>
hi*
<micahjohnston>
alexgordon: so right now my conception of tempus has only atomic types (numbers, etc.) and I have a hunch that I can find a good solution to compound types, modules/namespaces, and my whole aop/mixins dream at the same time
<vil>
olo
<alexgordon>
olé
<micahjohnston>
so you should help me brainstorm
<micahjohnston>
:3
<micahjohnston>
so possibilities:
<micahjohnston>
algebraic data types a la haskell
<micahjohnston>
data types composed of mixins/typeclasses
<micahjohnston>
stuff like atomo where you separate both the operations for a data type and the different cases of the data type
<micahjohnston>
so a user can add a new operation to a data type themselves, or add a new constructor and implement all operations for it
<micahjohnston>
orrrrr
sephr has quit [Quit: Leaving]
<Nuck>
orrrrrrr just stop talking, I guess?
<Nuck>
Sorta trailed off there
<vil>
the way I want to do it in Cascade is that an "object" is just a pile of data that matches a pattern/signature
<vil>
so you can implement operations with the same name differently for each type, just by matching different signatures
<vil>
e.g. + would concatenate strings but add numbers
<alexgordon>
vil: you should totally work on furrow instead ;)
<vil>
(except not because + concat is terrible)
<alexgordon>
I should start a kickstarter for furrow
<vil>
it sort of simulates classes/methods, but it's less formal and you can sort of toss stuff on whenever you want
<vil>
so mixins
<vil>
alexgordon: has it changed any since last time I saw the spec?
<vil>
that was a while ago
<alexgordon>
nope
<alexgordon>
I've written a few Furrow Amendment Proposals
<vil>
…you totally named it that on purpose
<alexgordon>
yeah well it amends furrow, you see
<vil>
uh-huh
<alexgordon>
proposals to amend furrow, what else could I name it?
<vil>
uh-huh
<alexgordon>
but yeah
<alexgordon>
haven't decided which to go with
<alexgordon>
like set literals
<alexgordon>
{1,2,3}
<alexgordon>
the only thing I *haven't* worked out is how to construct types with parameters
<vil>
I was working on Cascade's sequence notation in Calc the other day
<alexgordon>
like you can't do Set(Int)([1, 2, 3])
<alexgordon>
because that would be ambiguous
<vil>
how so?
<alexgordon>
well
<alexgordon>
Set(Int)
<alexgordon>
is a type
<vil>
Oh, right
<alexgordon>
but you might do it with no type
<alexgordon>
Set([1, 2, 3])
<alexgordon>
and have the parameter inferred
<vil>
why not just require both sets of parens always?
<alexgordon>
because I don't want to write String()(10) to convert something to a string :P
<vil>
you know you do
<alexgordon>
thinking I might do
<vil>
hmmm
<alexgordon>
Set(Int).new([1,2,3])
<alexgordon>
kind of verbose though
<vil>
what about <> for the type
<vil>
Set<Int>([1,2,3])
<alexgordon>
bad idea
<alexgordon>
look at all the problems it's caused in C++
<Nuck>
vil: Get the C++ out of here.
<vil>
actually Java but ok
<vil>
lol
<purr>
lol
<alexgordon>
C++ first
<Nuck>
^
<alexgordon>
also the types ARE going to be written as Set(Int), that's not up for debate
<vil>
yeah but I don't know C++ and I hate Java
<Nuck>
In fact, I didn't even realize that was in Java still
<alexgordon>
just don't know how to do the constructors
<Nuck>
Our professor never mentioned it
<vil>
yeah, generics are the bane of my existance
<vil>
and spelling existence
<alexgordon>
if someone can help me fix this I'll give them a free license of choc! :P
<vil>
I'm thinking about it
<vil>
because I don't want to work on tree traversals
<alexgordon>
goooood
<alexgordon>
let's see
<alexgordon>
I do want the *types* to be written as Set(Int)
<vil>
right
<alexgordon>
and I do want String(5) to be valid
<vil>
I feel like those two can't go together
<alexgordon>
could go together if I did like
<vil>
what about Set(Int:[1,2,3])
<alexgordon>
what if it has more than one parameter?
<alexgordon>
Dict(String, Int)
<vil>
like hey, this thing is:whatever etc
<vil>
Dict(String, Int: "string", 10) ?
<alexgordon>
erm
<alexgordon>
hold on
<alexgordon>
there's two kinds of parameters here
<alexgordon>
type parameters, and constructor parameters
<alexgordon>
there's no relation between the two
<alexgordon>
like in C++ you have
<alexgordon>
Map<String, Int>(someOtherMap);
<vil>
so it'd be like Dict(String, Int: anotherDict) then
<vil>
I was just doing like key, value, key, value type init
<gqbrielle>
glance in to IRC, see incomprehensible coding chatter, don't bother scrolling back up
<alexgordon>
lol gqbrielle
<purr>
lol
<Nuck>
gqbrielle: lol
<alexgordon>
gqbrielle: talking about type constructor syntax
<alexgordon>
duh
<vil>
gqbrielle: s'ok I don't really know what's going on either
<gqbrielle>
i gathered that much
<gqbrielle>
i just don't, y'know, care
<Nuck>
And nor do I.
<alexgordon>
vil: seems a bit contrived
<gqbrielle>
see? my coding academy lessons DID make me learn something!
<gqbrielle>
slightly more discerning apathy!
<vil>
alexgordon: well I mean
<vil>
it works
<alexgordon>
sure
<vil>
and it's not terribly ugly
<alexgordon>
it's ugly compared to the rest of furrow :P
<Nuck>
gqbrielle: Too bad there isn't a lesson on their company name
<alexgordon>
I think the type parameters and constructor parameters should be separate
<Nuck>
Which is "Codecademy" and not "coding academy"
<alexgordon>
since they're not related
<alexgordon>
colon means relation
<vil>
alexgordon: then how can they not be ambiguous?
<vil>
well there's got to be some sort of relation, or you won't be able to store that object in there
<vil>
maybe not a direct one
<vil>
like with String(10)
<alexgordon>
vil: well like I suggested Dict(String, Int).new(otherDict)
<alexgordon>
though that's ugly
<vil>
yeah
<alexgordon>
but separate
<vil>
ummm
<alexgordon>
also
<alexgordon>
would be nice if it supported generalized types
<alexgordon>
syntactically
<alexgordon>
so like
<alexgordon>
[Int]
<alexgordon>
for List(Int)
<alexgordon>
or (String => Int) for Dict(String, Int)
<alexgordon>
but I'm not wedded to that
<vil>
what about Dict(String, Int)<-otherDict
<vil>
So then String<-10
<alexgordon>
what about if you have multiple args though?
<vil>
well you could wrap it in parens if needed, or somehting
<gqbrielle>
Nuck: no1curr
<vil>
*something
<vil>
hmm just had an interesting idea for creating object in Cascade
<vil>
anyway
<vil>
*objects
<alexgordon>
may just go with
<alexgordon>
Dict(String, Int) new(anotherDict)
<alexgordon>
without the dot
<alexgordon>
and hope it's parseable :P
<vil>
hmmmm
<alexgordon>
it's not ambiguous but I don't know if Lemon can handle it
<alexgordon>
I need to pay like some guy in china to implement furrow for me
<vil>
I keep thinking "what if" and then realizing that I'm just replacing my ← with another character
* vil
taps his fingers in a rhythmic fashion
<vil>
so like, the point of this is that you create new types (sorta) on the fly
<vil>
by passing the type args
<vil>
well, I like my arrow
<vil>
but I dunno
<vil>
what type of tree traversal do I need to use to get a range of nodes, starting at any point in a tree?
<vil>
I feel like in-order, obviously, but I don't know how to start it off partway down
<Nuck>
alexgordon: I get offers in the email all the time for outsourcing providers
<alexgordon>
how much do you think it would cost?
<Nuck>
For a terrible programmer, $3 an hour or something
<gqbrielle>
a;silydg;asiydg
* gqbrielle
crawls under a rock
<Nuck>
I gotta say
<Nuck>
Shell scripting is terrible
<Nuck>
So much ambiguity
<alexgordon>
Python, man, Python
<Nuck>
haha
<Nuck>
Is Python that bad too, or are you suggesting it in place of shell?
<alexgordon>
mmm I'm so tempted to make a really really basic Furrow, that is not ambitious at all but useful
<alexgordon>
no semantic analysis, no optimization
<alexgordon>
just, pure syntactic sugar for C++
<alexgordon>
can't quite bring myself to do it though
<Nuck>
Do that
<Nuck>
Call it "Furrow v1"
<Nuck>
Then when you finish the full thing
<Nuck>
Call it Furrow v2
<alexgordon>
lol
<purr>
lol
<alexgordon>
Furr
* Nuck
yiffs alexgordon's butthole
* alexgordon
loses shit
<alexgordon>
probably not what Nuck wanted
<vil>
Nuck: NODE, BITCH
<vil>
if only
<vil>
nsh
<alexgordon>
ok lemme see if I can define miniminifurrow
<alexgordon>
Furrow v0
<vil>
femto-Furrow
<gqbrielle>
alexgordon: or maybe he did, i mean, y'know, Nuck
* gqbrielle
gestures vaguely
<vil>
haha
<alexgordon>
femto Furrow LOL
* alexgordon
downloads sketchy russian torrent
<vil>
totally building a Cascade shell and calling it cash
<alexgordon>
haha
<vil>
I was thinking about it yesterday
<vil>
like "dammit cshell"
<vil>
but then "WAIT I CAN CALL IT CASH"
<gqbrielle>
i wonder if there's an extension for chrome that will temporarily block facebook
<vil>
gqbrielle: yes
<gqbrielle>
i check it compulsively but it's full of Stupid today because of that prop 8 case going before the supreme court
<alexgordon>
come on sketchy russian torrent, download for me
<vil>
Cascade would be awesome for a shell, because paths are just pattern matching
<vil>
'course, I have to actually implement it fisrt
<vil>
*first
<vil>
can't type today jeez
<alexgordon>
1.0KBps awwww yeaaaaah
<alexgordon>
OMG 6.3
<vil>
BLINDING SPEED
<alexgordon>
IT'S GOING UP
<vil>
in flames
<alexgordon>
Viagra™
<alexgordon>
56KBps
<alexgordon>
that's like 10x dialup
<alexgordon>
erm 8x
<alexgordon>
NOW it's 10x
<alexgordon>
2 hours remaining fuuuuuuuu
<Nuck>
Did alexgordon says something about feminist furries?
<alexgordon>
femto you nuck
<Nuck>
Also, vil, have you ever heard the traic story of C-Shell?
<Nuck>
That's why nsh is a terrible idea.
yorick has quit [Remote host closed the connection]
<alexgordon>
nooo 0KBps
<alexgordon>
DAMN YOU RUSSIANS
<vil>
Nuck: the school servers use tcsh
<vil>
it's awful
<vil>
the words for left and right should totally have been the same length. would make all this code prettier
<alexgordon>
left rite
<vil>
YES
<alexgordon>
okaaay
<alexgordon>
definition of femtofurrow done
<Nuck>
femtofurry sounds like a transspecies operation where they replace your vagina with a tail
<alexgordon>
FURROW
<alexgordon>
"A long narrow trench made in the ground by a plow, esp. for planting seeds or for irrigation."
<alexgordon>
micahjohnston: if I don't have enough time to implement full furrow, maybe I can implement a really simple preprocessor for 80% of the features
<alexgordon>
none of the interesting bits, but it'll at least save me writing C++ lol
<purr>
lol
<vil>
it'd be interesting to do typechecking on assignment in Cascade, but I have no idea what would happen if it failed
<vil>
because no exceptions, and interpreted
<vil>
actually, I suppose that would be a good place for my "exceptions as a value" idea
<vil>
lol what if I just had exceptions propogate forever
<vil>
like
<vil>
if something returns an exception instead of data