ishkabible's Profile User Rating: *****

Reputation: 1640 Grandmaster
Active Posts:
5,792 (2.68 per day)
03-August 09
Profile Views:
Last Active:
User is offline Yesterday, 06:08 PM

Previous Fields

OS Preference:
Favorite Browser:
Favorite Processor:
Favorite Gaming Platform:
Your Car:
Dream Kudos:

Latest Visitors

Icon   ishkabible 5k posts!

Posts I've Made

  1. In Topic: How many programming languages do you know?

    Posted 1 Jul 2015

    Speaking of mixing things up. I program in Scala regularly and during a semester I was doing a lot of work in Java. I used the same IDE setup for both. Mentally I think about the object types in the same way and so I often get things mixed up if I am writing imperative code. I also do a lot of work in Haskell. I don't get Scala and Haskell mixed up except on certain algebraic datatypes, namely Scala's Option and Haskell's Maybe (which do the same thing basically). In Scala the Option type has two subtypes, 'Some' and 'None'. Haskell's Maybe type has the 'Just' and 'Nothing' constructors. I constantly mix these names up.
  2. In Topic: Does algebra benefit programming?

    Posted 30 Jun 2015

    On the general topic:
    I claim math is not super helpful with regards to *programming* a typical application but is super helpful in regards to *computer science*

    I work in a niche area and do things with mathematical logic. Most people don't do this but IMO it is the area that is the most fun. I'd say most research in computer science falls into one of 4 categories. Formal Methods/Programming Languages and related things, Machine learning AI and related topics, Cryptography/Cybersecurity and related topics, the vaguely named "theory" topics related to computation, complexity, and algorithms.

    The formal methods and programming languages areas are riddled with mathematical logic and a lot of proofs. Numbers seldom come up but equational reasoning, set theory, and other formal mathematics come up all the time.
    Machine learning and AI are riddled with all sorts of traditional classic math like numerical methods, calculus, probability and statistics; what people traditionally think of as math is the kind of math that is really important here.
    Cryptography as has been mentioned is very number theoretic and algebra heavy (note as Mac said, I mean abstract algebra. most mathematicians just call it algebra however because context at that level makes it clear).
    The "theory" topics have so much stuff in it but I can definitely say that mathematics plays a part. Big-Oh notation if understood properly is actually a set of functions from real numbers to real numbers and all sorts of calculus (limits) and math goes into thinking about it.

    On category theory:
    This gets used by people at the highest level of research for theory related topics. The big thing I have learned to do with it is categorical semantics where you can basically give a semantics based on category theory to sequent logics (I'm currently trying to wrap my head around monoidal categories providing semantics for linear logics). Category theory is a lot more general than that though. I'm slowly coming to the understanding that category theory lets you solve all the same problems that set theory does (if not more) but though a different lens. The key word here is "behavioral analysis". Set theory lets you describe "what do things look like and what structure do they have". Category theory lets you ask "how do things behave and interact with each other". It turns out each can in many sense subsume the other (category theory doesn't have a strict definition while set theory has many, ZFC being the most popular).

    I'm gonna see if I can think up a category theory related challenge for my second challenge in the computer science fourms.

    Also in regards to understanding category theory: I'm far from being able to say I understand it but definition wise I'm not sure it is actually too much more complicated than something like a ring. In fact universal algebra studies frameworks in which groups and rings and fields can exist. It turns out that it is possible to understand category theory though the lens of universal algebra. Category theory is a lot richer than any specific kind of algebraic structure however.

    edit: by the way monoidal categories deal with monoids.
  3. In Topic: Computer Science FAQ and Resources

    Posted 13 Jun 2015

    CS Resources

    The biggest free source of quality information on computer science is My link. They have a huge data structures page that contains all sorts of goodies. I will often just google something I want and like magic wikipedia will have something for me.

    Other great sources if you want to learn a topic in depth and not a specific data structure or algorithm are online courses.


    Udacity is more tech oriented and less theory printed than the others. has an amazing quantum computation course that contains an accessible presentation of quantum computing that you wont find anywhere else. Most other information on the topic is quite a bit harder to get into and is mostly presented from the physics view rather than the computer science view. These places are great places to start getting into computer science. You can go though them at your own pace. For instance I like taking sprints where I go at them for 4 hours or so and then dropping the topics for a week to do something else then picking them back up.

    Also take a look at our pinned threads.
    Book suggestions
    Tips for writing proofs
  4. In Topic: Possible problem with if/then/else in Lua?

    Posted 11 Jun 2015

    This isn't what is happening here. It would be if there was a comma involved but there isn't, just spaces. Also while in this case the language feature you mentioned behaves the same in both versions, major versions of Lua contain radical differences. We are on Lua 5.3 now but a lot of people still use 5.1.4.

    If we go to the grammar we can see that a block is just a series of statements. In this case an assignment statement and a function call statement
  5. In Topic: Need help with Predicate Logic

    Posted 10 Jun 2015

    I realize this was sometime ago but I figured I'd answer this anyway.

    1) is valid.
    To proove "forall x, K(x, x)" we need to prove K for an arbitrary value call it 'a'. So if we can proove K(a, a) we can prove "forall x, K(x, x)"
    We can prove K(a, a) by simply instantiating 'x' and 'y' both to the constant 'a'

    2) I list undischarged assumptions to the left. I also have assumed that ∀X∀y∀z(K(x,y) and K(z,y)) => K(x,z) was intended to be ∀X∀y∀z (K(x,y) and K(y,z)) => K(x,z) (e.g. K is transitive)

    to prove ∀X∀y K(x,y)=> -K(y,x) we must prove K(a,b)=> -K(b,a)
    to prove K(a,b) => -K(b,a) we must assume K(a, c) and prove -K(b, a)
    K(a,b); to prove -K(b, a) we can use proof by contradiction by assuming K(b, a) and deriving a contradiction
    K(a, b), K(b, a); we can get K(a,b) and K(b,a)) => K(a,a) by transitivity of K
    K(a, b), K(b, a), (K(a, b) and K(b, a)) => K(a, a); we can get K(a, b) and K(b, a) because we have we have both assumptions.
    K(a, b) and K(b, a), (K(a, b) and K(b, a)) => K(a, a); we can get K(a, a) by modus ponens using our two assumptions (I discharge all other assumptions at this point simply because I don't need them)
    K(a, a); we can get -K(a, a) by the anti reflexivity assumption (the first assumption)
    K(a, a), -K(a, a); we derive can derive bottom from these contradictions

    so 2) is valid as well

My Information

Member Title:
spelling expret
21 years old
September 8, 1993
Marion Ks
making and playing video games, language design, IRC bots, C++ templates, learning new languages
Forum Leader:
C++, Assembly
Full Name:
Jake Ehrlich
Years Programming:
Programming Languages:
Experienced: C/C++, Lua
Ok: D, Java, Haskell, Python, x86 assembly
Learning: PHP

Contact Information

Website URL:
Website URL  http://


  • (6 Pages)
  • +
  • 1
  • 2
  • 3
  • Last »
  1. Photo

    Martyr2 Icon

    22 Aug 2013 - 10:26
    Just wanted to thank you for my 4000th rep vote back on Aug 12th. Appreciate it!
  2. Photo

    Precise Icon

    18 May 2013 - 13:32
    Hello I would like to speak to you about something important. About a game. email me at I dont know how else to get in contact with you. Thanks.
  3. Photo

    Xupicor Icon

    24 Nov 2012 - 01:19
    No witty rep meaning at the moment. Though 1415 AD was memorable, that's the year Jan Hus (John Huss) was burned, an event which pushed his followers (later known as Hussites) to fight. Hussite Wars were a bloody period, but mighty interesting. ;)
  4. Photo

    Xupicor Icon

    21 Nov 2012 - 13:24
    Now your rep says you're "lala" :P That could mean "a doll" where I'm from. Yes, it has more than meaning here too... ;)
    So, how's it going, doll? ;p
  5. Photo

    ishkabible Icon

    10 Sep 2012 - 10:42
    Hey, my rep says I'm 'leet'
  6. Photo

    BenignDesign Icon

    07 Jul 2012 - 05:18
    spelling expret works too!
  7. Photo

    BenignDesign Icon

    06 Jul 2012 - 18:48
    Then I would go legitimately subtle... like "speling expert" or "spelling export" .... drop or change ONE letter... hence, subtle.
  8. Photo

    BenignDesign Icon

    05 Jul 2012 - 10:31
    I don't remember what it said in the first place.
  9. Photo

    BenignDesign Icon

    01 Jul 2012 - 21:15
    Not nearly subtle enough.
  10. Photo

    ishkabible Icon

    30 Jun 2012 - 21:20 has to be subtle enough though
  11. Photo

    BenignDesign Icon

    30 Jun 2012 - 16:23
    Your title would be WAY funnier if there was a spelling error in it.
  12. Photo

    hulla Icon

    11 Mar 2012 - 08:45
    1K rep :)
  13. Photo

    r.stiltskin Icon

    04 Dec 2011 - 20:19
    Been busy.
  14. Photo

    hulla Icon

    21 Nov 2011 - 08:23
    What's an esoteric hack? O.O
    What's a purely functional programming language? I've never used one before but they sound interesting . . .
  15. Photo

    ishkabible Icon

    22 Oct 2011 - 20:02
    im a "master" now!!
  • (6 Pages)
  • +
  • 1
  • 2
  • 3
  • Last »