Hacker Newsnew | past | comments | ask | show | jobs | submit | dxq's commentslogin

These are just the GPL releases, but they contain bits of code from EA if you start digging. IIRC the EAWebKit release contains a big chunk of EASTL. EASTL is EA's implementation of the C++ STL that was for a long time considered so great as to be a competitive advantage.


If anyone is interested in the EASTL here's the source code

https://github.com/paulhodge/EASTL

Apparently works out of the box with G++/GCC, some modifications were made to get it working Clang/LLVM


Source to wordexp-helper here: http://opensource.apple.com/source/system_cmds/system_cmds-6...

Also the source to the Yosemite implementation is available at: http://opensource.apple.com/source/Libc/Libc-1044.1.2/gen/Fr...


This is source code from 2011. Checking http://opensource.apple.com will show that it's not longer implemented this way in 10.10.

Here's the current implementation: http://opensource.apple.com/source/Libc/Libc-1044.1.2/gen/Fr...


The current one is a derivative of NetBSD's implementation (where it shells out to use a sh builtin)


License-wise:

- this piece of code is 2BSD-licensed

- it calls out to /bin/sh

- on OS X, /bin/sh is hardlinked to /bin/bash

- OS X's bash is GPLv2

Forking to shell is the only way to reuse bash's code. More often than not I really wish sh were not bash.


"Forking to shell is the only way to reuse bash's code."

well, the other obvius way is to license this piece of code as GPLv2.


AFAIK this is THE reason for GPL. So that you either release your code and contribute to open source or suffer from slower access methods.


The BSDs doesn't ship with bash and their wordexp shelling out to /bin/sh doesn't suffer, so I don't see how this is a reason for the GPL.


Probably I've written it not clearly enough: "Reason for GPL not allowing you to use code in your own programs, but allowing use through exec: you either release your code and contribute to open source or suffer from slower access methods."


ahh, ok; that's clearer


Which would require libc to be GPL, something not even glibc does.


Judging by both the source code and its placement in the repository (gen/FreeBSD/wordexp.c), I'm thinking it's a derivative of the FreeBSD implementation (which may itself be a derivative of the NetBSD implementation, or perhaps the other way around).


Yes, the OSX code seems to come from FreeBSD. Here is the FreeBSD version of the source:

https://github.com/freebsd/freebsd/blob/master/lib/libc/gen/...

It looks very similar to the current OSX file posted in an earlier comment. Calls /bin/sh too.


Can you explain why wordexp.c on the referenced site has a completely different (and older) copyright? Did they merge in another implementation?


I'm guessing that the linked implementation probably hadn't been touched since 2008. My comment that this was source code from 2011 was referring to the fact that this release of libc (Libc-763.11) is from 2011.


How do you suppose event-based models are notified of changes? Ultimately you are still polling, you're just abstracting it out of your higher-level design.


Your statement that Apple is the only company still using WO has no basis in fact. There is even an annual conference[1] for WO developers, in which Apple has zero involvement.

[1] http://www.wocommunity.org/wowodc11/


You're right… let me rephrase. The only significant company.


After finding the documentation and guides for writing nginx modules woefully inadequate, I did a lot of poking around in the nginx internals to better understand how things worked.

The code is very readable, follows good style guidelines, and has its fair share of brilliant workings. I found that the source code served as much better documentation than a lot of _actual_ documentation that I've read.


You beat me to it! I was just about to suggest the nginx internals. :)


I don't know, but that's how reddit got started.


Please be considerate of their privacy.


It's pretty easy to guess with just public information. And I don't see how revealing their name can harm them in any way.


Why? I can't think of one reason. Please provide one.


I can't think of one either, but they could have easily just posted their name with the job app. Since they didn't, they must have had a reason. So the question becomes if you trust their hypothetical reasoning--they do know more about their company than you.


How to troll online chess:

1. Open up Chess.app

2. Turn CPU difficulty all the way up

3. Start lichess game as black

4. Mirror lichess opponent's moves into Chess.app

5. Mirror Chess.app opponent's moves into lichess

6. Talk incredible amounts of smack


You are watching a stranger play chess against a computer. There has to be a more fulfilling method of trolling people.


Or both of them are watching two computers playing against each other.


I suspect the enjoyable part was step 6.


Also, I would like to make a lichess.org bot that plays chess and intelligently talks to opponents.


Sounds a lot more fun than making a poker bot.


Don't forget to analyse moves and comment on them. It makes it more realistic.


It's more of a challenge, (and more fun) doing this with a real-life chess game. A friend and I challenged a buddy who was good at chess to a game (2 vs 1), a scenario which he usually defeated us in. I had to leave the room to enter his moves onto my desktop machine. The fun was making up excuses for leaving the room, and transmitting the moves to my partner without making it look suspicious (I pretended to be wired up on caffeine and extremely jumpy). "We" managed to defeat him quickly, but, after seeing how dissapointed he was, spilled the beans.


The HHKB is very much still in production (mine just arrived last week), though it can be hard to get one in the US. I ordered mine from http://elitekeyboards.com.

My HHKB is replacing a 16 year-old Apple Extended Keyboard. It's definitely not as click-clacky as a buckling spring keyboard, but it's much easier on my wrists (and doesn't wake people up when I'm hacking at night).


Hmm... elitekeyboards.com only seems to have the HHKB Professional 2... the one I have is a "HHKB Lite 2", which (in a strange inversion of the usual hierarchy) includes an extra Fn key on the left and an inverted-T arrow-key cluster.

I realise using arrow keys is heresy to a certain subset of the programming community, but I've been using them for decades and it's hard to give them up.


I realise using arrow keys is heresy to a certain subset of the programming community, but I've been using them for decades and it's hard to give them up.

Then buy a RealForce or the Japanese HHKB Professional instead:

http://www.g-ray.co.uk/pictures/Realforce87U2b.jpg

http://www.pfu.fujitsu.com/hhkeyboard/lineup/pdkb420b.html

FWIW, I use the arrows once in a while (not everything supports Emacs-style keybindings, after all, especially on Windows), and I like the HHKB's approach. Less hand movement than normal arrow keys.

in a strange inversion of the usual hierarchy, includes an extra Fn key on the left and an inverted-T arrow-key cluster

"Lite" refers to the price, not the number of keys. Topre keyswitches are not cheap. A rubber membrane is.


The lite can be found here http://pfuca-store.stores.yahoo.net/haphackeyser.html

Though they didn't take away their days unavailable from august. I believe this yahoo store is also found from the officials manufacturers website for buying the keyboards.


The arrow keys are accessible with the function key. It seems awkward at first, but after a day of use it becomes very natural.

If it's what you really want, the HHKB Lite 2 is actually sold in the US and is quite a bit cheaper (though the switches aren't as nice).


Can you reprogram where arrow keys are? I have my arrow keys in emacs as Alt and then IJKL (like WASD), so it would be nice if Fn IJKL worked the same in OS.


No, you can't reprogram them.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: